Formatting
The :std/format library implements string formatting as specified
in SRFI 48.
To use bindings from this module
(import :std/format)
format
(format fmt . args)
  fmt   := string
  args  := mixed values
-> string
Formats the arguments to a string using the supplied format specifier.
Differences with SRFI 48
- lower-case synonyms for all format specifiers (~a and ~A are equivalent)
 - ~u/~U for unicode hex char print (for #\uXXXX)
 - ~f/~F means "float" and does non-exp fp (C-style %f more or less)
 - ~r/~R means "repr" and works with 
:std/misc/reprand the:prmethod - ~w{spec} does generic fixed width
 - ~! does force-output (inspired by OCaml)
 - not implemented: ~& ~H wtfs
 
fprintf
(fprintf port fmt . args)
  port  := output-port
  fmt   := string
  args  := mixed values
Same as format but outputs to a specific output port.
printf
(printf fmt . args)
  fmt   := string
  args  := mixed values
Same as fprintf but with the output port defaulted to (current-output-port)
eprintf
(eprintf fmt . args)
  fmt   := string
  args  := mixed values
Same as fprintf but with the output port defaulted to (current-error-port)