use ns で名前空間を展開することを指す用語。希哲13年3月15日考案。この語を考えた際,「名称空間」の訳語採用を決めた。
大小様々な収穫があったが,特に大きいのは DGDBI への集約作業に区切りが付き,新知番実装が形になったことか。
15時頃,DGDBI への交度集約作業にようやく区切りがついた。それから知番まわりの実装整理にも着手した。
19時40分頃,XPO/Pg と DGDBI の結合に成功したが,その後に調整に手間取る。名称空間の衝突に悩まされ,これを解決するために以前考案した魔法引括による名称展開機能を仮実装し始めた。
30時近くになり,ようやく新知番実装が形になった。想像以上に入り組んでいて手こずったが,デルンの実用化最初期に手探りで作ってもやもやしていた部分で,格闘しながら状況がよく把握出来たのは大きい。
デライト正式離立の技術的負債に対する懸念がここまででほぼ払拭され,離立作業に集中出来る環境が整った。
また,ここ2,3日,明らかにデルンがきびきび動くようになったのが体感出来る。想定外の第二次大理腑に留まらず,第二次大最適化になっていたようだ。
SQL::
}{SQL::
}{希哲13年12月3日の進捗時限}{希哲13年12月3日の進捗}{希哲13年12月3日}{DGDBI}{デライト全知検索整理}{再延期}(17)デライト全知検索整理続き。
夕食を取り,小休憩を挟んで作業開始。すでに24時までの離立は絶望的な状況であるため,再延期も視野に入れ少し落ち着いて作業を進めることにした。
XPO/Pg と DGDBI を統合したはいいものの,RDB::SQL:: と DG::DBI::SQL:: との衝突で思ったほど直感的な参照が出来なかったため,これに対応。
こんなこともあろうかと,3月15日には魔法引括で名称空間を制御する方式を考えていたため,それを元にまずは手動で対応。SQL に加えて名称空間の定義を抜き出した SQL+ という頭譜を作り,名称展開を制御出来るようにした。今後,汎用化が必要になった時に kn mk hdr に自動生成機能を加える。
終了。
今日は,ここ数日よく考えている Cμ の備立まわりの基本仕様,特に自動輪結(_kn lib など)を実装するつもりだったが,名称空間の切り分けなどについて考えているうちに,魔法引括で体系的に名称展開を制御する方法を閃き,この仕様を練ることにほぼ一日を費した。これを「通称化」と呼ぶことにした。
ヘッダーの末尾に + 記号,- 記号を付け,の通称化の有無を指定する。上位階層から下位階層へ設定を引き継ぐことで一括指定を容易にし,原則を適用されたくない場合は個別に指定することも出来る。
出放りはこれまで同様通称化有効とするが,引括されうる場合は明示のために + を使用することが出来る。
記号は先頭に付けることも検討したが,- 記号は先頭に付けると譜類として扱いにくく,多階層表記の場合,記号の意味がどこにかかっているのか明示的ではない,単純に譜類名に対応しない(階層化した場合,台録名になる)ため実装が多少面倒になるなどの問題がある。また,検討してきた版存分け機能を v0.1/xtd などとした場合,整合性の問題もある。
実装としては,すでに使っている引括保護用のマクロ名と同じ原理でどう呼び出されたかをマクロ定義で表し,各実装で適宜条件処理する。このあたりも自動化出来そうではあるが,台録構造と名称空間の構造を整合させるなどの工夫が必要になる上,非標準領域での汎用性が無くなるため,将来の検討課題とする。
どのような記号法を使うか,細部の実装について変更の可能性はあるが,概ね以上の仕組みで柔軟な通称化の制御が可能になるだろう。