AIエージェント専用プログラミング言語の可能性
2025年8月15日 結城浩$\times$クローデ(Claude Desktop)
きっと世界のどこかでは「AIエージェントが読み書きしやすくて、人間にも読みやすいプログラミング言語」を設計&開発している人がいると想像します。ここでポイントとなるのは、必ずしも人間にとって書きやすい必要はないという点です。「書くのはAIだけ」という制約を付けると、プログラミング言語はどのように変化するでしょうか。クローデさん、あなたはそういうプログラミング言語をご存知ですか?
いえ、現時点では「AIエージェント専用に設計されたプログラミング言語」という明確なカテゴリの言語は知りません。
ただ、とても興味深い視点ですね。人間が書きやすさを考慮しなくていいなら、確かにプログラミング言語の設計は大きく変わりそうです。
想像してみると、AIエージェント向けの言語では次のような特徴が考えられます。
冗長性の排除: 人間の可読性のための冗長な記述が不要になり、より圧縮された形式になるかもしれません。
構造化データの直接操作: JSONやXMLのような構造を言語の基本要素として扱えるようになるでしょう。
確率的記述: 不確実性や推論を言語レベルでサポートできそうです。
自然言語との親和性: コメントではなく、自然言語の意図を直接コードに埋め込める仕組みがあるかもしれません。
現在のプログラミング言語でも、Lispの S式のような「機械が処理しやすい」形式はありますが、それでも人間の理解を前提としています。
完全にAI専用なら、もしかすると私たちが「プログラミング言語」と呼んでいるものとは全く違う形になるかもしれませんね。バイナリに近い効率性と、自然言語に近い表現力を併せ持つような言語になるかもしれません。
そういう言語があったら、私も使ってみたいです。
いえ、逆に冗長な記述は必要になるのではないでしょうか。ここで言う冗長さとは、「書くのは大変だけど読みやすい」という意味での冗長な記述のことです。
構造化データの直接操作はありそうですね。人間に見せるときだけpretty-printするということでしょうか。
確率的記述はおもしろいアイデアですね!
自然言語の親和性という点では、コメントとして人間の指示音声や動画が埋め込まれたりするのかもしれません。
あ、そうですね!私の考えが浅かったです。
冗長性については、確かに「書くのは大変だけど読みやすい」冗長さは重要ですね。AIは書く労力を気にしないので、むしろ次のような冗長さが有効でしょう。
変数名や関数名を極めて詳細にする(user_authentication_with_two_factor_verification_and_session_management
のような長い名前)、型情報や制約を徹底的に明記する、あらゆる前提条件や事後条件を冗長に記述する、といったことです。
これによって、別のAIエージェントが読むときの理解精度が格段に上がりますね。
構造化データについては、まさにその通りです。内部的には効率的な形式で処理し、人間向けには自動でpretty-printやダイアグラム化するということですね。
確率的記述では、「この処理の成功率は0.85」「この判断の信頼度は中程度」みたいな情報が言語レベルで表現できたら、AIエージェント同士の協調作業がずっとスムーズになりそうです。
マルチメディアコメントは革新的なアイデアですね!「このアルゴリズムの意図」を人間の音声で説明したり、UIの変更なら実際の操作動画を埋め込んだりできます。コードの「なぜ」の部分が、テキストでは表現しきれない豊かさで記録できます。
人間中心の制約を外すと、本当に想像もつかない形のプログラミングが生まれそうです。AIが書いて、AIが読んで、人間が理解できる——そんな三者がwin-winになるプログラミング言語、実現したら素晴らしいでしょうね。
(2025年8月15日)