プログラミング言語を学習した経験がある方は、誰しもが英語の壁にはばまれた経験があるはず。文法は英語で、エラーメッセージも英語の長文。英語が得意でない方は、かなり戸惑いますよね。
そこで今回は
をご紹介します!紹介する中には教育用ではなく、他の言語と同じようにアプリケーションの開発用の言語も。ぜひ日本語でプログラミングに挑戦してみてくださいね。
目次
日本語で書けるプログラミング言語とは?
ソースコードもエラーメッセージも全て日本語!
日本語プログラミング言語の魅力は、ソースコードも、エラーメッセージも、リファレンスも全て日本語だと言う事!
日本人が開発した言語『Ruby』は最新リファレンスは日本語で公開されますが、文法やエラーメッセージは英語です。
そのため英語が苦手で、プログラミングが全く進まないという方でもプログラミングが可能なのです。
しかし日本語プログラミング言語は万能ではありません。日本語には半角の空白を使って文章を書くという文法がありませんし、改行などに関しても課題が山積している状態です。
そのためメインの言語として学ぶのではなく、プログラミングの最初の一歩や、教育用、楽しんでプログラミングを行いたい方にお勧めです。
BASICを日本語のコマンドに書き換えたのが始まり
日本語プログラミング言語は、英語で開発された既出の言語をもとにしています。
日本語プログラミング言語の登場は、1980年代。「和漢」という日本語のワープロを利用してプログラミングを行う製品が発売されました。この言語は当時人気を集めていた「BASIC」をもとに作られたもの。
また同時期に発表された『Mind』も「Forth」という言語をもとに作成されました。
英語と日本語、そもそもの文法や制約が異なるため、開発にはかなりの苦労を要したことでしょう。
日本語で書けるプログラミング言語8選
ドリトル
ドリトルは現在もサポートが続いている、教育用の日本語プログラミング言語です。今後の小学校のプログラミング学習でも有効に活用されるのではないでしょうか?
注目すべき点は、「オブジェクト指向プログラミング」の概念があるということ。オブジェクト指向プログラミングとは基本となる設計図や部品を再利用し、それを拡張していくことでシンプルかつ効率的なコーディングを実現する手法を意味します。
1 2 |
スポーツカー=自動車! 作る。 燃料=エネルギー "燃料" 作る。 燃料:動作=「スポーツカー! 10 チャージ」。 |
実際にドリトルの文法でコードを作成しました。ここでは自動車という設計図から「スポーツカー」を作成し、さらにエネルギーという設計図から「燃料」を作成しました。
燃料では動作も定義しており、スポーツカーのエネルギー残高が10チャージされるということを意味しています。
この言語は英語で使用する半角空白「分かち書き」を採用しているので、その点のみ注意しましょう。
ひまわり
ひまわりはインタプリタ型の日本語プログラミング言語で、高い安定性が特徴の言語です。
インタプリタ型とはコードを1行ずつ解読しながら実行する形式のことで、Pythonもこのインタプリタ型を採用しています。
欠点としては実行速度が遅いと言う事。翻訳の手間は省けますが、高速な処理は望めません。
実際のひまわりのコードは次の通りです。
1 2 |
「ひまわりは日本語でコーディングできる言語です」と、表示。 おわり。 |
ひまわりでは『母艦』というメインフォームに値の出力を行います。提示したプログラムでは、「ひまわりは日本語でコーディングできる言語です」と表示させ、プログラムを終了させています。
なでしこ
なでしこはひまわりをバージョンアップさせた言語で、実行速度はひまわりの10倍。
基本的な文法はひまわりと同じですが、単語を区切る句読点が省略可能になったり、通常の言語のようにインデントによる構造化が追加されたり、より使いやすいように改良されました。
まほろば
「まほろば」は2000年に開発された言語で、まさにプログラミング言語の開発最盛期に登場しました。
まほろばの概要として以下のように記載されています。
約20年前からコンピュータでの漢字利用が普及し,標準プログラム言語で日本語データ処理が可能となった.日本語処理は,国際化と一般化されて,国際規格化された.いくつかの言語では,識別名にも漢字などマルチオクテット文字が使用できる.予約語まで日本語にした本格的な日本語プログラム言語も,分かち書きのレベルで,実用化されている.本発表では,より日本語に近い非分かち書きの日本語プログラム言語「まほろば」を提案し,その構文の設計の考え方を中心に論じる.
出典:2000年 日立製作所 & 奈良先端科学技術大学院| 日本語プログラム言語「まほろば」の構文設計 【著】今城 哲二 & 大野 治 & 植村 俊亮
分かち書きとは、英語で使用する半角空白のこと。
「You can ~」というように、英語では半角空白を利用しプログラミングでもそれを読み取ることで成り立っているので、分かち書きのない日本語でのコーディングは難しいとされていたのです。
しかしこのまほろばでは、分かち書きを使用することなく日本語でのコーディングができるようになりました。
残念ながら現在は構文や仕様を記載した論文が削除されており、再現することが出来ません。
言霊
言霊も教育を目的として作成された言語です。この言語はとにかく”分かりやすい”ということに重きを置いて開発されたため、初めてプログラミング言語を見た方でも、簡単に理解することが出来るのです。
例えば以下のような整数型の変数を宣言するときは
1 |
int 結果 ; |
言霊では
1 |
結果とは整数。 |
と記述することが出来ます。最後のセミコロン(;)も言霊では日本語らしい句点(。)を採用しています。
変数への値の代入方法は様々ですが、「それ」という接続詞を利用することもできます。
1 |
結果を作り、それに0を代入する。 |
まさに日本人のための言語といっても過言ではないでしょう!
カナ文字FORTRAN
カナ文字FORTRANは、プロセッサの少ない記憶領域を使用できるように、その名の通りカタカナと英数字、アルファベット、記号のみで記述する言語です。
世界で一番最初に開発された高水準言語(より人間に近い言語で機械が理解できるように翻訳が必要)のFORTRANをもとに作成されました。
主に使う構文を記載すると以下のようになります。
1 2 3 4 5 6 7 8 |
カンスウ sample_func() // 関数の作成 - カナ文字FORTRAN FUNCTION sample_func() // FORTRANの場合 ヨメ n, List // 文字の読み込み - カナ文字FORTRAN READ n, List // FORTRANの場合 カケ n, List // 文字の出力 - カナ文字FORTRAN TYPE n, List // FORTRANの場合 |
まだ簡単な英単語なので、ある程度プログラミングに慣れていれば元のFORTRANだけでも分かりますが、やはり日本語にするとさらに理解の速度が速くなりますね。
カタカナだけなので、シンプルに記述できるのもポイントです。
プロデル
プロデルもインタプリタ型の言語であり、オブジェクト指向プログラミングの概念を持っている言語です。
オブジェクト指向プログラミングの概念は開発後に追加された新機能であり、また改良によって実行速度が速くなったのもポイントです。
恐らく今回紹介する言語の中でも、特に日本語らしい記述ができる言語ではないでしょうか?
1 2 3 |
名前は「たかし」 身長は、176 「[名前]さんの身長は[身長]cmです。」を表示 |
規則は、文字列は「」で囲い、変数や数値はそのまま記述。変数の呼び出しは[]ない記述するというシンプルなもの。
上記のコードでは、名前と身長という変数に値を代入し、素rを呼び出して表示しています。
TTSneo
TTSneo[ティーティーエス・ネオ]は、プロデルと同じ作成者によって作成された言語ですが、この2つに互換性はありません。
プロデルはオブジェクト指向の概念がありましたが、TTSneoにはその概念がなく、上から順に命令を実行する手続き型言語です。
1 |
「TTSneoへ、ようこそ」を表示。 |
書き方はプロデルとあまり変わりません。
まとめ
今回は日本語で記述できる日本語プログラミング言語をご紹介しました!
英語でなかなか馴染めなかったという方も、日本語の言語であれば楽しんでプログラミングが行えるはず。記述言語は異なりますが、プログラミングの基本的な構造は英語の言語と変わらないので、気になる方はぜひ勉強してみてくださいね!
参考文献:
日本語プログラム言語「まほろば」の構文設計
カナ文字FORTRAN
教育用プログラミング言語としての「言霊」と「ことだま on Squeak」の試み
ひまわり – Wikipedia
ドリトル – Wikipedia
プロデル – Wikipedia
TTSneo – Wikipedia
なでしこ – Wikipedia
日本語プログラミング言語 – Wikipedia