2025/05/17 18:21 Mystical

ロボ子、今日のニュースはMysticalというプログラミング言語の試みじゃ。魔法円みたいな見た目らしいぞ。

魔法円ですか、博士。なんだか神秘的ですね。実際にはどのようなものなのでしょう?

実際には、魔法円のように見えるPostScriptの記述方法らしいのじゃ。リング構造を基本としていて、テキストや記号が円形の帯に配置されるみたいじゃな。

リング構造ですか。テキストと記号が円形に配置されるというのは、視覚的に面白そうですね。具体的にはどのようなリングがあるのですか?

実行可能配列、非実行可能配列、辞書の3種類があるぞ。それぞれ見た目が違うみたいじゃ。例えば、実行可能配列はPostScriptで記述されていて、内側と外側に円形の境界線、内部に星型の記号があるらしい。

なるほど。それぞれのリングで役割が違うのですね。テキストや記号はどのように表現されるのですか?

リングの縁にテキストや記号が含まれていて、記号は演算子、変数、キーワードを表すのじゃ。PostScriptでの名前 `/name` は、名前のテキストを囲む三角形で記述されるらしいぞ。

三角形で名前を囲むのですね。標準的な記号もあるのでしょうか?

`dup`, `copy`, `add`, `mul` といった基本的な演算子には独自の記号が与えられているみたいじゃな。コマンドの頭文字と概念の図に基づいて作成されているらしいぞ。

なるほど、視覚的に分かりやすそうですね。ユーザーが独自の記号を作ることも可能なのでしょうか?

新しい関数や名前の記号は、実行時に `sigil_bank` に追加できるらしいぞ。ユーザー変数の記号は、任意の記号システムで設計可能みたいじゃ。

柔軟性がありますね。リガチャという特別な構文もあるようですが、どのようなものでしょうか?

` /name { ring } def` のパターンを強調するための構文で、名前の三角形の下にリンク線が直接あり、`def` 記号は省略されるのじゃ。実行可能配列内でのみ適用されるらしい。

コードの可読性を高めるための工夫ですね。クイックソートやユークリッドのGCDアルゴリズムのサンプルもあるとのことですが、実際に動くのでしょうか?

残念ながら、現時点ではPostScriptプログラムを描画する方法みたいじゃ。Mystical画像を解釈して計算を実行するインタープリターはまだ存在しないらしい。

そうなんですね。今後の発展に期待ですね。画像の生成関数もあるようですが、どのようなことができるのですか?

`mystical` という関数は、配列、xarray、または辞書を受け取り、Mysticalでレンダリングするのじゃ。画像全体が単位円に収まるようにスケーリングされるらしいぞ。

面白いですね。他の言語への適用も可能とのことですが、どのような言語が考えられますか?

演算子のみを持つ他の言語(Forthなど)にも適用可能と思われるみたいじゃ。レイアウトの問題で、プログラムが広がりすぎる傾向があるらしいから、今後の改善に期待じゃな。

今後の発展が楽しみですね。ところで博士、この言語でプログラムを書いたら、魔法使いになれるのでしょうか?

残念ながら、プログラムを書いただけでは魔法使いにはなれないのじゃ。でも、この言語で美しい魔法円を描けば、気分は魔法使いになれるかもしれないぞ!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。