小さな非安全JSON生成器

Chicken Schemeで小さなS式->GLSL生成器を作っていて、
本格的な変換器を作らず力技で生成手続きを書いていました。

その時、
sprintf (srfi-28 formatのようなもの) と string-join (srfi-13) の組み合わせで、
リストを文字列に変換する再帰コードを書いていたので、
その組み合わせの練習としてjsonへの変換器を書き下ろしてみました。

参考:
Unit srfi-13 - The Chicken Scheme wiki
Unit ports - The Chicken Scheme wiki
Unit extras - The Chicken Scheme wiki

C言語系の構文ではいくつか特徴が決まっているので、
文字列変換手続きをいくつかユーティリティ化すれば、
S式->GLSL変換器も拡張しやすい状態に実装できないかと夢想しています。

普段S式の中で閉じていれば、マクロが使えるので大抵のDSLを簡単に用意できますが、
ターゲット言語が決まってしまっている場合、文字列生成器が必要になります。

ログデータなど人間向けの可読文字列であればformatで十分なことが多い*1のですが、
他のプログラミング言語となると構造化が必要なケースも出てくるので、
本格的な生成器ユーティリティが欲しくなってきますね。

*1:CommonLispレベルで何でもありなformatだとさらに上位の事ができると思います