
{希哲16年1月19日23歩 K#F85E/A-E74C-4D2B}

{希哲16年1月19日22歩 K#F85E/A-E74C-BFFF}

{希哲16年1月19日20歩 K#F85E/A-E74C-48BB}

{希哲16年1月19日19歩 K#F85E/A-E74C-5991}

{希哲16年1月19日18歩 K#F85E/A-E74C-4502}
書きかけ
rpl_glb() と rpl_fst() 両方を残し,グローバルフラグを出放り。そもそも複数行出放りなど変わっている。慣習より合理性と経験を優先。

{希哲16年1月19日16歩 K#F85E/A-E74C-0274}

{希哲16年1月19日14歩 K#F85E/A-E74C-A45A}
`rgx_T::rpl()`
}{`rgx_T::rpl_glb()`
}{`rgx_T::rpl_one()`
}{希哲16年1月22日13歩}{`rgx_T`
}{`s_T`
}{再考する}{言語慣習}...
{希哲16年1月19日8歩 K#F85E/A-E74C-61AB}
デライト高速化兼 Cμ 文字列処理改良についての検討で終了。
デラングに限らず,Cμ は最初期からあった正規表現類型(現・rgx_T
)に頼り過ぎている。s_T
の基本機能の実装を後回しにして,正規表現を使うまでもないような単純な検索・置換も正規表現で済ませていたりするので,このあたりを修正するだけでかなりの効率化が期待出来る。昨年7月の文字列処理改良でも,雑な変換処理の書き直しでだいぶ改善した。
とりあえず,rpl()
,rpl_fst()
,b_mch()
,b_mch_fst()
,b_mch_lst()
といった s_T
の基本的な補助函数を整備することにした。
rgx_T
では,長年全部置換(グローバル置換)だった .rpl()
を一般的な正規表現の慣習に合わせ,.rpl_glb()
への書き換えを進めているところだった(単一置換は一時的に .rpl_one()
を使っている)。
これに合わせ,s_T
の rpl()
も単一置換にしようかと思ったが,正規表現以外の言語慣習と直感性を考慮して,rpl()
は全部置換,rpl_fst()
で単一置換とすることにした。
(この rgx_T
に関する方針はあとで再考することになる)

{希哲16年1月19日4歩 K#F85E/A-E74C-805D}
原則として,面触れ・道手・フィールドなどは .
を先頭に付け(.foo()
),細則は各言語の慣習に合わせることにした。
例えば Cμ(と基礎にしている C++)では,単独で道手を表すのに .foo()
を使うことは問題ないが,類型名と一緒に表記する場合に Foo_T.foo()
というのは不自然なので,従来通り Foo_T::foo()
と書いた方がいいだろう。問題は,これを ::foo()
と略すと別の意味になってしまうということだったが,単独で表記するなら原則に戻って .foo()
と書いてもいいことにする。
XML・HTML の要素に関しては,最近になって <foo>
を使うようになったが,慣れれば悪くないのでこれを正式採用することにした。
要素分類名・識別名に関しては,<foo.bar>
,<foo#bar>
のように書く。

{希哲16年1月19日3歩 K#F85E/A-E74C-C8A4}
