Formatting Strings in ML

Authors

  • Olivier Danvy

DOI:

https://doi.org/10.7146/brics.v5i5.21679

Abstract

A string-formatting function such as printf in C seemingly requires dependent types, because its control string specifies the rest of its arguments.

Examples:
printf ("Hello world.\n");
printf (" The %s is %d.\n", "answer", 42);
We show how changing the representation of the control string makes it possible to program printf in ML (which does not allow dependent types). The result is well typed and perceptibly more efficient than the corresponding library functions in Standard ML of New Jersey and in Caml.

P.S. See also BRICS-RS-98-12

Downloads

Published

1998-03-04

How to Cite

Danvy, O. (1998). Formatting Strings in ML. BRICS Report Series, 5(5). https://doi.org/10.7146/brics.v5i5.21679