string-join と SRFI-13
ソースを掘りすすんでて以下な列挙体が出てきた。
/* grammer spec for StringJoin (see SRFI-13) */ enum { SCM_STRING_JOIN_INFIX, SCM_STRING_JOIN_STRICT_INFIX, SCM_STRING_JOIN_SUFFIX, SCM_STRING_JOIN_PREFIX };
これはヘタな事書けんのぅ、と思いつつ google 先生にお伺いしたら当たり前ですが Gauche なリファレンスに誘導される。そこから SRFI 13 の string-join 方面へさらに誘導された。
記述を訳すの面倒なので gosh で試験
gosh> (string-join '("a" "b" "c") ":" 'infix) "a:b:c" gosh> (string-join '("a" "b" "c") ":" 'suffix) "a:b:c:" gosh> (string-join '("a" "b" "c") ":" 'prefix) ":a:b:c" gosh>
成程。あと strict-infix ってのは空リストが対象だったりしたら例外、なカンジか。微妙に理解できたのは良いのですがどう書いたものやら。