文字列の補間と共有サブストラクチャの併用でエラー
0.8.14と0.9で確認.
gosh> #`",'(#0=+ #0#)" "(+ +)" gosh> #`",(#0=+) ,(+)" "0 0" gosh> #`",(#0=+) ,(#0#)" *** ERROR: unmatched parenthesis in interpolating string: ",(#0=+) ,(#0#)" Stack Trace: _______________________________________ 0 (with-error-handler (lambda (e) (let ((e e)) (%guard-rec e e ((<re ... [unknown location] 1 (cons `(x->string ,item) rest) At line 72 of "../lib/gauche/interpolate.scm" 2 accum 3 (cons `(x->string ,item) rest) At line 72 of "../lib/gauche/interpolate.scm" 4 (with-input-from-string str (lambda () (accum (read-char) (open-ou ... At line 74 of "../lib/gauche/interpolate.scm"
なんでエラーになるのかよくわからない.
文字列の補完は,他にも中にダブルクォートやバックスラッシュを書こうとするとややこしいことになった気がする.