星田さんの記事に対するコメント。
今回は一言だけ。
OCamlのコードをLispに埋め込む、ってのが難しさの原因だ。
通常、「ファイルを読み込む」と全部文字列になるんだけど、Lispコード内で文字列を定義しつつ・・・となるとややこしくなる。
そして、Paizaは「ファイルアップ機能がある」ような事を書いてるんだけど、それがどこにあるんだかサッパリ分からん。メンバーになってログインしなきゃ使えないんだろうか。
1つのテとしては。
入力
出力
まずGaucheはSRFI-22ってのを採用している(反面、Racketは採用していない)。
これは端末でやり取りする際には「main関数」と言う特殊な関数を使用する、と言う約束事を決めた提案だ。
C言語のようなmain関数、あるいは、Pythonのif __name__ == '__main__':部を形作る。
いずれにせよ、それを使えばPaizaの端末上とデータのやり取りが出来る。つまり、そこでread-lineを使って読み込めば、途中で"があろうがなかろうが全部文字列として扱ってくれて、出力を見れば分かるだろうけどエラーは生じない。
結果、プログラムを書いておいて、変換したい「データ」は入力機構から流し込むのが一番いいんじゃなかろうか。