1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

日本語プログラミング言語 Mind(マインド)Advent Calendar 2024

Day 2

最初に「あい」を学ぶことば日本語でプログラミング入門(ステップ1Mindの場合)

Posted at

はじめに

本記事シリーズは母国語のプログラミング言語が存在するという文化的価値をアピールするためのもので、プログラミング一般の入門を意図するものではありません。まずトップバッターとしては、実用的な日本語プログラミング言語では最初の世代に入るMind(マインド)で「あい」を学んでいきます。ついでにプログラミングの妙を遊ぶというお題となります。

Mind(マインド)

Mind(マインド)は自然な日本語で記述できるスタック指向の軽量中間コードコンパイラ言語です。単語間の分かち書きが必須であくまで形式言語です。Forth言語のスタック操作処理を継承しているため、逆ポーランド記法1の範囲で分かち書きされた日本語単語の語順が自然と日本語の語順となるという意味の「自然さ」で書くことができ、独自の軽量中間コードのランタイム実行で非常に高速です。実装言語はCまたはMind。初版の登場は1985年で来年2025年には生誕40周年となります。

Mind(マインド)の入手方法

無償版のMind version 8 (windows版linux版)を下記の公式サイトからダウンロードできます。メールアドレスをご登録くださいませ。

お題のソースコード

ai.src
あいとは
    人や 物事を 大切に 思う心。

これをプログラムとして実行してみます。出現する単語を定義しておけば、Mindはあらゆる文章をプログラムとして受け付けます。(ただし文意を維持するには工夫が必要。)
プログラム実行文に出現する単語をあらかじめ定義しておきます。話を簡単にするため、主に予約語との等価定義と文字列定数の定義を用います。

ai.src
人は    文字列定数 "自分や自分以外の人間、"。
物事は   文字列定数 "もろもろの物や事柄は大切と思っている心のありようのことで、漢字では「愛」と表記します。"。
大切は   合成と    等価。
思う心は  一行表示と  等価。

あいとは
    人や 物事を 大切に 思う心。

メインは  あい。

お題のソースコードをコンパイル

では、コンパイルしてみます。無事に成功しました。

C:\developments\vscode\pmind\hello>mind ai file

日本語プログラミング言語 Mind Version 8.07 for Windows
          Copyright(C) 1985 Scripts Lab. Inc.
コンパイル中 .. 終了
Coping.. c:\pmind\bin\mindex.exe --> ai.exe

実行結果

実行結果です。

C:\developments\vscode\pmind\hello>ai
自分や自分以外の人間、もろもろの物や事柄は大切と思っている心のありようのことで、漢字では「愛」と表記します。

おわりに

いかがでしたでしょうか?わたしはわが国に母語によるプログラミング言語が存在することを誇りに思っております。言語は文化。こんにちの日本語のポップスやアニメソングなどが海外でそのまま歌われるような近況を鑑みますと、純然たる技術基盤として超強力な米欧発プログラミング言語勢と存在意義を争うこともなく、日本語の文化として海外でも日本語プログラミング言語の愛される日が来るのやもしれません。

  1. 演算子を被演算子の中間に記述する中置記法 1 + 2、前に記述する前置記法(ポーランド記法)+ 1 2、後に記述する後置記法(逆ポーランド記法)1 2 +がある。日本語は1と 2を 足す。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?