define llvm-ir "adapter" functions in terms of calls to format, instead of using custom reader-macro