Functional Unparsing

Forfattere

  • Olivier Danvy

DOI:

https://doi.org/10.7146/brics.v5i12.19284

Resumé

A string-formatting function such as printf in C seemingly requires
dependent types, because its control string determines 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.

Downloads

Publiceret

1998-01-12

Citation/Eksport

Danvy, O. (1998). Functional Unparsing. BRICS Report Series, 5(12). https://doi.org/10.7146/brics.v5i12.19284