日本語プログラミング言語
日本語プログラミング言語(にほんごプログラミングげんご)は、日本語風のプログラミング言語である。ソースコードを日本語の文字(仮名や漢字)で記述したり、文法に日本語風の語順・規則を採用していたりする。なお、この記事で扱う言語のほとんどは、あくまで通常のプログラミング言語と同様の(形式言語としての)ベースがあるものであり、形式言語ではない自然言語によるプログラミング(w:Natural language programming)の一種としての「日本語によるプログラミング」ではない。
特徴
[編集]自然言語としての日本語の知識を使って、日本語話者がソースコードを読むことが可能であり、また語順も日本語と同じであるものもあり、解釈に必要なコストが低くなる。そのため(日本語話者の)プログラミング初学者には受け入れられやすい、などと主張されている。[1]
日本語にはわかち書きの習慣がないため、既存の字句解析器の適用が難しい[2]。あえてわかち書きを必須としているものもある(Mindなど)。日本語として自然な表現を行うためには自然言語処理の技術を援用している処理系もある。
その一方で、日本語プログラミング言語には、シンタックスなどの業界統一規格がなく、ほかの既存言語の資産(業界標準のオープンソースライブラリなど)を活用しづらいとの批判もある(なお、例えば他の既存言語に「オブジェクト指向言語のシンタックスなどの業界統一規格」といったものも存在しないので、これに関してはおそらく他の既存言語でも全く変わることなく同様に活用しづらいと思われる)。
歴史
[編集]1980年代に開発された言語に、1983年に国際データ機器株式会社の鈴木孝則が商品化した『和漢』[3]や、『Mind』[4]がある。
『和漢』は、日本語ワープロを中心にコンピュータの利用が広まっていたことを受け、「ワープロ感覚で日本語でプログラミングができれば」という考えで制作された。
また、当時はマイコンも一般に広まりつつあり、BASICなどの既存言語の予約語を日本語に置き換えただけのような作りで、構文などは日本語の構文とは似ても似つかないものであったが(参考:G-BASICの主なステートメントとコマンド)、マイコンでもそういった試みが行われている。
1980年代に開発が始められた『Mind』は、日本語の語順との類似が指摘[5]される逆ポーランド記法のForthをベースとして、日本語に近い記述を可能とした。
日本語プログラミング言語のベースに使われる言語には、前述のBASICやForthの他に、LOGOなどもある。
大岩元らは、初心者に対するアルゴリズム教育のためのプログラミング環境として『言霊』と『ことだま on Squeak』を設計、開発している[6]。
言語の例
[編集]Category:日本語プログラミング言語も参照のこと。
- 厳密には、日本語プログラミング言語ではないが、キーワードや演算子の再定義機能、または自然言語プログラミングライブラリの使用により、日本語プログラミングも可能である(UTF-8 の範囲内でならば日本語以外の使用または日本語との併用も可能である)。
- 論理的プログラミング言語「論具」(LONG、LOgical Natural lanGuage description)[9]
- TTSneo、プロデル
- ドリトル
- ひまわり、なでしこ
- 言霊、ことだま on Squeak
- まほろば[10][11]
- DNCL(大学入試センター試験「情報関係基礎」)およびTUAT-LE(農工大)
- つちのこ
- AppleScript(Mac OS 8.5 より前)
記述例
[編集]Ring
ChangeRingKeyword see さあ、 の時間だ。 = "" // これは無視されます。 挨拶 = "Hello World" // 複数行リテラル さあ、 挨拶 の時間だ。 // コード本文
TTSneo
「Hello[改行]World!」を表示
※[改行]の"["は全角で記述する。
なでしこ
「Hello {改行} World!」と表示 ’母艦(メインフォーム)に表示。 「Hello {改行} World!」と言う ’ダイアログボックスで表示。
その他
[編集]難解プログラミング言語の記号を特定の日本語に置き換えたプログラミング言語が、しばしば遊びで作られる。(→Brainfuck#派生言語など)
脚注
[編集]- ^ 日本語プログラミング言語の品格(PDF)
- ^ 馬場 祐人、筧 捷彦「日本語プログラミング言語における字句解析」『情報科学技術フォーラム講演論文集 第8回情報科学技術フォーラム 第1分冊』第8巻第1号、FIT(電子情報通信学会・情報処理学会)運営委員会、2009年8月、61-64頁、NAID 110008100170。
- ^ 鈴木孝則「日本語プログラミング言語『和漢』」『情報処理学会研究報告計算機アーキテクチャ(ARC)』44(1983-ARC-029)、1-10頁、1983年11月28日。 NCID AN10096105 。
- ^ 平賀正樹「日本語プログラミング言語Mind」『コンピュータ ソフトウェア』第6巻第2号、日本ソフトウェア科学会、1989年4月、2_170-2_178、doi:10.11309/jssst.6.2_170、ISSN 0289-6540、CRID 1390564238039013376。
- ^ 水谷静夫「和文の語順と逆ポーランド記法」『国語学』第61号、日本語学会、1965年6月、1-15頁、ISSN 04913337、CRID 1520572359358123136。
- ^ 岡田健, 杉浦学, 松澤芳昭, 大岩元「教育用プログラミング言語としての「言霊」と「ことだま on Squeak」の試み」『サイバーメディア・フォーラム』第7巻、大阪大学サイバーメディアセンター、2006年9月、17-22頁、doi:10.18910/70223、hdl:11094/70223、ISSN 13459066、CRID 1390853649742387200。
- ^ <小朱唇> 教育用の次第立て言語 小朱唇言語仕様 小朱唇の手引:次第立て言語
- ^ カナ文字FORTRAN
- ^ 小谷善行「日本語に基づく論理プログラム表現」『情報処理学会論文誌』第34巻第5号、情報処理学会、1993年5月、973-984頁、ISSN 1882-7764、CRID 1050845762817984128。
- ^ 今城哲二, 大野治, 植村俊亮「日本語プログラム言語「まほろば」の構文設計」『情報処理学会論文誌プログラミング(PRO)』第41巻SIG02(PRO6)、情報処理学会、2000年3月、106-106頁、ISSN 1882-7802、CRID 1050001337891689856。
今城哲司, 鈴木弘, 大野治, 植村俊亮「日本語プログラム言語“まほろぱ”の文法と記述評価」『情報処理学会論文誌プログラミング(PRO)』第41巻SIG04(PRO7)、情報処理学会、2000年6月、90-90頁、ISSN 1882-7802、CRID 1050564287845106432。
今城哲二, 鈴木弘, 大野治, 植村俊亮「日本語プログラム言語“まほろば”の言語仕様と記述評価」『情報処理学会論文誌プログラミング(PRO)』第42巻SIG02(PRO9)、情報処理学会、2001年2月、102-102頁、ISSN 1882-7802、CRID 1050564287845095296。
今城哲二, 鈴木弘, 大野治「日本語プログラム言語"まほろば"の言語仕様」『情報処理学会研究報告』第2001巻第31号、情報処理学会、2001年3月、143-152頁、ISSN 09196072、CRID 1520853834449913600。 - ^ 『入門計算機ソフトウェア』ISBN 4-254-22819-8