出版社より献本御礼。
いい時代になったものだ。
コンピューターで扱うのに最も難解な言語の一つである日本語の取り扱い方を、書籍で学べるなんて。
しかしこうして本で読んでみると、改めてすごいことだと思う。
この難問から、我々が逃げずに取り組んで来たことに。
本書「日本語入力を支える技術」は、今や「出来て当たり前」となった電脳に対する日本語入力を中心に、電脳で日本語をどう扱うのか、どこまで扱えるのかを簡潔(succinct)にまとめた一冊。さすがPFIの中の人が著者だけあって、本書自体が簡潔データ構造で記述されているのではないかというぐらい中身の濃い一冊で、本blogで取り上げる本の中では最もページ密度の高い本の一つである。
日本語の難物ぶりは、もはや「自然言語にソフトウェアをあわせる」より、「ソフトウェアに自然言語をあわせてくれ」と泣き言をいいたくなるぐらい。もしワードプロッサーとしての電脳の普及が10年早かったら、漢字廃止論者が勝利して本当にそうなっていた可能性すらあったのだ。英語の戦闘力が5なら、53万どころじゃないんじゃないか。
まずもって、ただ文字を符号化するだけで「一介のプログラマー」の手に余る。英語なら大文字小文字数字をすべてあわせても62で6ビットに収まり、記号を入れてもASCIIは7ビットに収まり、ISO-LATINでも8ビット、つまり一バイトに収まるし、この程度であれば「まともな話者」であれば誰でも符号表は作れる(それでもASCIIほどエレガントになるとは限らないことはEBCDICを見ればわかる)。しかし日本語は、そもそも「それが同じ文字なのか否か」さえしばしば議論になるし、それ故正式規格から「幽霊文字」が「発見」されることすらある。このあたりは本書が属するWEB+DB PRESS plusシリーズの「プログラマのための文字コード技術入門」に詳しい。まだ手元にない人は本書と一緒に入手されたし。
しかし、はじまりはそこからである。何千種類、いや、今やUnicodeのおかげで最高100万以上となった文字を一体どうやって入力したらよいのか…
21世紀の今や空気のごとく当たり前となったかな漢字変換がいかに画期的な技術であるかを知るのは、ケータイやパソコンのユーザーに留まり続ける限り難しい。しかし私は今でもはっきりと覚えている。1MBしかメモリーを積んでいなかった Macintosh SEを 4MB に増設して漢字Talkを動かしたときのことを。それからたった四半世紀しか経っていない。東芝JW-10から数えてもまだ34年である。
このかな漢字入力にしてから、未だ枯れた技術とは言い難い。変換前の文字はローマ字がいいのかかながいいのか。「けむろめ配列」なのか「親指シフト」なのか。テンキーなのか。iPhoneがフリック入力を携えて登場してからまだ4年も経っていない。
もうこの時点でアルゴリズムとUIの知識を総動員しなければやっていけない。裏を返せば、日本語を電脳で扱うという難題にプログラマーとしてきちんと取り組んで一定の成果を上げた者であれば、世界のどこでも通用するプロプログラマーになれるとということである。これは弾言しかつ断言できる。私自身、その末席に連なることを誇りに思う。
それと同時に、まだ道は長いことも痛感せざるを得ない。英語で恐縮であるが、こういう気持ちだ。
404 Blog Not Found:惰訳 - Barack Obama's acceptance speech in fullWe have come so far. We have seen so much. But there is so much more to do.
わたしたちはこれほどの高みに来ました。これほどのものを目にしてきました。しかしやらねばならぬことはさらに多いのです
今や誤字脱字の最大の原因はかな漢字変換だし(おかげで「娯変換」でネットは毎日にぎわう)、機械翻訳は「超えろ」を「超Ero」と訳して平然としているし、かつて日本語にとって造語と同じぐらい簡単だった造字はむしろずっと難しくなってしまった。
それでも本記事を私が英語ではなく日本語で書き、それをあなたが日本語で読むことが「当たり前」になることがかつて少しも当たり前でなかったことは、プログラマーでないあなたにも知っておいてほしい。そしてプログラマーのあなたには、現時点でどうやっているかを知っておいて欲しい。
今の英語なみに電脳が日本語をきちんと扱えるようになるということは、電脳が知性を持つことすら意味するかも知れないのだから。だとしたら、日本語を日常的に扱う我々こそが、最も「真の」人工知能に近いところにいるのかも知れないのだから。
子飼小飼 弾
ついでに、日本語は、旧字体漢字と歴史的仮名遣いを復活させたい考え。
こんな、漢文・日本語マニアがふえて、ワープロソフトの改良が求められたら、コンピュータの性能は、さらに高度にならないといけなくなるね。