オブジェクト指向と認知文法
先日、認知文法研究会でオブジェクト指向(OOP)と認知文法(CG)のつながりについて発表する内容をまとめるため、この2つの語をGoogleで検索してみた。何年も自分以外でこの問題に関心を寄せる人はさほどいないようだったので、新たな収穫は期待してなかったのだが、見慣れない論文が1番目のページとして返ってきた。
- 金田重郎 「認知文法に基づくオブジェクト指向の理解」『情報処理学会報告』, 2011-IS-117(7), 1-8.
情報処理学会の会員ではないので論文自体にアクセスできなかったのだが、調べてみると著者の金田先生は同志社の理工学部の教授であった。何という奇遇。早速メールを出して、自己紹介をし、論文のファイルを送って頂いた。
その後、直接お会いして話を伺ったりした。金田先生は以前から授業で学生にオブジェクト指向のデザインパターン(GoFのあれですね)を教えてこられたのだが、どうも上手く飲み込めない者が多い。デザパタの多くは日本語のような「ナル言語」ではなく、「スル言語」としての英語的発想に基づいており、根本的な部分で頭を切り換えないと日本の学生にはスッと理解しにくい。そこで、認知言語学の視点からデザパタを見直し、日本語で書かれた仕様をいったん「スル言語」的な中間言語表現に翻訳してからモデリングに移るという方法を提案されたのだ。
認知文法研究会での自分の発表では言語学の立場から、LangackerのCGがいかにOOPと近い関係にあるかということ—構文文法、語文法、生成語彙論などOOPからの影響が表面的にも明らかな言語理論と比べても本質の部分でよりOOP的であること—を示そうとした。これはもっぱら同業者である認知言語学の研究者に向けた共通性の指摘にとどまるもので、外への発展性はあまりない。一方、金田先生の試みは異なる視点からOOPとCGを観察し、実践的な教育方法の開発につなげようというものだ。非常に興味深い。
認知文法研究会では今回の事を少しだけ口頭で紹介をしたりもした。下は発表の資料PDF。
- 長谷部陽一郎 「オブジェクト指向に基づく現実世界のモデリングと認知文法」(認知文法研究会資料)
日英語混在テキスト読み上げ用Rubyスクリプト
Mac OSX には「テキスト読み上げ」という機能があり、英文テキストを与えるとなかなか流暢な英語を話してくれる。OSX Lion からは Kyoko というスピーカが加わり、日本語テキストの読み上げも可能になった。サービスを通じて各種アプリケーションから使うことができる他、ターミナルからsayというコマンドが利用可能だ。
しかし英語混じりの日本語の場合、とても残念な感じになってしまう。
私の最も好きな Metallica のアルバムは …And Justice for All です。
これを日本語スピーカで発音させると次のようになる。
だからと言って、英語スピーカを選択すると、日本語の部分が全く発音されない。
そこでRubyを使って say2.rb というスクリプトを書いた。テキストを解析して英語らしき部分は英語スピーカに、それ以外を日本語スピーカに読み上げさせるという目論見である。結果は次の通り。
Lionで日本語スピーカが加わったことを知ってすぐこれを作り、かれこれ半年使っているが、文書校正に大いに役立っている。テキストを目だけでなく耳でも確認すると、誤字脱字をずいぶん減らすことができる。
なお、本スクリプトには次のような特徴がある。
- 英語と日本語のスピーカを設定可能
- 英語と日本語の読み上げ速度を設定可能
- 英語テキストを認識する際の最低連続英字文字数を設定可能
- 数字は良きにはからってくれる(たぶん)
- Ruby 1.8.7(Macにプリインストール)にも1.9.xにも対応。
- 引数があればそれを読み上げ、なければクリップボードの内容を読み上げる。
コードはGitHubに上げてある。次の手順でダウンロード、インストールされたい。
- https://gist.github.com/2011415 からコードをコピペする、またはtar.gzファイルを展開し、say2.rb を得る。
- ターミナルでsay2.rbのあるディレクトリに移り、
$ chmod +x say2.rbとして実行権限を付与。 $ ./say2.rb "読み上げさせたいtext"として実行
日常的に使うには上記3の実行形式は面倒なので、 Alfred とか LauchBar とか Keyboard Maestro を使って [対象テキストをコピー] → [Hotkey] で実行可能にしておけば、日英語が混在した文書作成の生産性を大いに上げられる(と思う)。
[追記 2012年4月21日]
改行コードを上手く処理できていなかったのを改善した。
第1回 認知文法研究会
樹形図作成プログラムを作ったりしながらも、私自身はそれほど使う機会がありません。完全に認知言語学の側の人間ですので。
再帰(recursion)や構成性(constituency)は言語に限らず、人間の認知機能のおよそあらゆる局面で見られる性質です。樹形図、大いに結構。ただ、再帰や構成性が文法の自律性を保証するというような考え方には同意できないのです。
実はこれ、Langacker(2008)のほぼ受け売りです。やっぱり私はLangackerの言っていること、書いていることに一番共感をおぼえます。いろんな考え方、アプローチがありますが、常に自分の中で基準となっているのは認知文法です。
そんなような話を去年、中国の西安で中華料理を食べながら何人かでしているうち、認知言語学全般ではなく「認知文法」に焦点を当てた研究会をやろうということになりました。3月17日(土)に同志社大学の今出川キャンパスで実施します。世話役は広島大学の町田章さんです。ホームページも作ってくれました。
一応、参加は要エントリーなのですが、大きめの部屋をおさえたので飛び込みも大丈夫かなと思います。私もしゃべります(が、今のところ準備があんまり進んでいない・・・頑張らねば)。
RSyntaxTree 0.5.1
久しぶりにRSyntaxTreeに手を加えて公開しました。
- Ruby 1.9系に対応。
- ウェブインターフェイスをSinatraで作り直し。
- CSS関係はTwitter BootStrapを利用。
- コードは一切合切GitHubに。
- コマンドライン版も作った(好きなTTFフォントを使える)。
gem install rsyntaxtreeで一発インストール。- 諸々の小さな改良。
という感じです。ウェブ版はこれまで通りこちらで使えますし、コマンドラインで使いたい、あるいは改造したいという人は GitHub へどうぞ。

[NP[NP[ART a][N table]][PP[P near][NP[ART the][N door]]]]
Tweets on 2011-10-06
- Think Different http://t.co/6Ff8x5sV #
Tweets on 2011-10-01
- 弘前に到着。夕方の出発でも関西から空路を使わずここまで来られることに驚き。 #
Tweets on 2011-09-30
- 京田辺で4講時の授業後、学会出張。目指すは青森県弘前市。飛行機には間に合わないので、新幹線と在来線を乗り継いで行く。ホテル到着は1時前の予定。 #
- 東京に到着。ポケモン仕様の「はやて」に乗り換え。 http://t.co/8le4eEbn #
- 新青森まで3時間半。電源なし車両。こういうとき、Androidに代えてよかったと思う。予備のバッテリーを2本持ってるし。 #
- テザリングとバッテリー交換が出来ない状況というのはちょっと考えられなくなった。しかしまあ、これも新機能満載の?新しいiPhoneが登場するまでかな。 #
- AndroidはSamsungのGalaxy S IIを使っていてハードウェア的には基本的に満足してる。しかしだ #
- ベータ版ながらもMac用の接続アプリをしばらく出していたのに、OSX Lion向けアップデートが一向にリリースされない。ドライバの新規インストールができなくて困る。 #
- これはやっぱり今話題になってるAppleとの確執が関係してるんたろうか? #
- 新青森に着いた。さすがに京都や奈良よりちひんやりする感じ。 #
Tweets on 2011-09-25
- Kindle for Macではテキストをコピーできないので、外国語の文字を含んだ箇所をメモできなくて困る。→ 当該箇所をハイライトしてコンテキスト・メニューからGoogle検索。サーチボックス内の文字列をコピー。
#
Tweets on 2011-09-21
- Kindle for Macで言語学の本を読んでいたら、「図13の写真は印刷版のみの掲載です」というのがあって萎えた。一方、他の本では印刷版では白黒だったのがカラーになっていて良かった。言語による色認識に関する図表なので、白黒だといまいち(というか全然)伝わってこなかった。 #
Tweets on 2011-09-20
- 先週末の認知言語学会、実行委員としては今年も担当のシンポジウムが無事終わって良かった。構文研究の現状と展望。質疑応答の時間があと30分余計に欲しかった。 #
- 個人的に興味を持ったのは、谷口先生が紹介されていた「構文習得にスキーマ抽出は必ずしも要らない」という可能性。オブジェクト指向プログラミングでいうところのクラスベースVSプロトタイプベースの構図が、今後は自然言語の構文研究にも生じてくる? #
- 谷口先生の講演では従来的なスキーマの概念をWindowsのフォルダ構造のメタファーを使って説明されていた。でもそのフォルダを使わないとしたらどうやってファイル管理するの?タグか何かを使う?確かに多重継承の問題なんかを解決できてうれしいかも。などと色々考えたり。 #
- ほとんど誰も触れないけれど、構文文法のバイブルであるGoldberg 1995には構文文法がオブジェクト指向の考え方に一致しているという記述が2箇所ほどでなされている。それを思うと、構文について考えるのにコンピュータのメタファーを使うのはとても自然なこと。 #
- ちなみに、オブジェクト指向プログラミング言語の実質的な元祖であるSmalltalkの開発にかかわった重要人物としてAdele Goldbergという人がおり、Wikipedia英語版にものっている。言語学者のAdele Goldbergとは別の人物。ちょっとまぎらわしい。 #
- 本日は名古屋周辺が大雨で大変なことになっている様子。11年前、同じく名古屋周辺の豪雨のため立ち往生してしまった東海道新幹線の中で一晩過ごしたことがある。あれは慶應での第1回認知言語学会からの帰りだった。結局、浜松でいったん東京に引き返すことになった。 #
