Type-safe printf and scanf with C-like formatting string We also permit a generic format specifier %a to format or parse any showable and readable value. Our format descriptors are first-class and can be built incrementally. We can use the same format descriptor to format to a string, to the standard output or any other data sink. Furthermore, we can use the same format descriptor to parse from a string or any data source. What we print we can parse, using the same descriptor.