文字と文字列

守岡知彦 / MORIOKA Tomohiko tomo @ mousai.as.wakwak.ne.jp
2003年 2月 12日 (水) 02:01:50 JST


江渡さんが提起されている『文字と文字列』問題、すなわち、データ型として
『文字列』が存在する時にデータ型として『文字』が必要かどうかという問題
について考えてみます。ところで、実を言えば私は Ruby も Perl も使わない
人なので、あんまりそのあたりの勘が働かないので、あんまり実際的な話はで
きないのでそのことをあらかじめお断りしておきます。

『文字列』中の文字と『文字』を比較すると、前者は文脈を伴っているのに対
し後者はそうでないということがいえると思います。“cat”の“a”と‘rat’
の‘a’を比べた時に、両者を違うオブジェクトとして扱いたい場合に、その
環境が class があるオブジェクト指向言語だとすると、“a”と‘a’は『文
字』a のインスタンスだと考えられると思います。

仮称 Charon モデル(旧 UTF-2000 モデル)自体は class の有無を仮定して
ないので(気持的には、instance 指向な気もするけども)、どっちでも良い
気がします。


ところで、ちょっと違った問題かも知れませんが、私が疑問に思っている問題
の一つに、文字列に付けられた属性と文字に付けられた属性は同一視できるか
というものがあります。これは、XML でマークアップされたり Emacs Lisp の 
text-property で付けられたような属性をその領域中の文字の属性と思って良
いかということです。

例えば、

	<書体="明朝体">漢字</書体>

のようなものだと多分文字の属性と思っても良い気がします。言語とかでもそ
うかも知れません。でも、

	<コードネーム>漢字</コードネーム>

みたいにその文字列が不可分であるようなものだとその属性を文字列中の文字
は継承しない気がします。

そして、もし、この仮定が真である、ないしは、そう考えた方が都合が良いこ
とが多いならば、文字列の属性と文字の属性は区別した方が良い訳で、その場
合、必然的に『文字列』とは別な『文字』を導入した方が良いという結論にな
る気がします。

;; でも、実をいえば、この結論が正しいかどうかはあんまり自信がないです。

-- 
===『幾千億の分子に分かれても ========================================
     決して忘れない。    
     この宇宙が終るまで』              守岡 知彦 (MORIOKA Tomohiko)
====================== Email: <tomo @ kanji.zinbun.kyoto-u.ac.jp> ======




More information about the CHISE-ja mailing list