🤖 AI Summary
記事は、AIがソースコードの進化を促すか、あるいはその存在自体を消滅させるかについて議論しています。Stephen Cass(IEEE Spectrumの特別プロジェクト編集者)は、「AIに直接プロンプトから中間言語を得させることは可能か?高次言語が必要なのか?」という根本的な質問を投げかけました。
Cassは、プログラムが「不透明なブラックボックス」となり readability が犠牲になる可能性があることを認識しています。しかし彼は、「コードの読み書きや維持ではなく、プロンプトを調整し、新たなソフトウェアを生成する」という新しい仕事の形が生まれることも指摘しました。
また、Andrea Griffiths(GitHubのシニア開発者 ADVOCATE)によると、現在のところ実質的な採用がない「AI第一」言語が存在します。彼女は、高次言語が既存の言語をより使いやすくする可能性もあると述べています。
最後に、Chris Lattner のMojoという言語について言及しています。これは、多内核チップの計算力を活用することを目指しており、「AI世紀」のプログラミング言語として考えられています。
記事はこれらについて話し合いを通じて、AIが将来的にプログラミング言語そのものに影響を及ぼす可能性を考察しています。ただし、現在は「ビーブコーディング」を理解する段階にあるため、これはまだ先のことだと指摘されています。しかしCassは、「この分野が研究の中心となる可能性がある」と述べています。
Will there be an AI-optimized programming language at the expense of human readability? There's now been experiments with minimizing tokens for "LLM efficiency, without any concern for how it would serve human developers."
This new article asks if AI will force source code to evolve — or make it extinct, noting that Stephen Cass, the special projects editor at IEEE Spectrum, has even been asking the ultimate question about our future. "Could we get our AIs to go straight from prompt to an intermediate language that could be fed into the interpreter or compiler of our choice? Do we need high-level languages at all in that future?"
Cass acknowledged the obvious downsides. ("True, this would turn programs into inscrutable black boxes, but they could still be divided into modular testable units for sanity and quality checks.") But "instead of trying to read or maintain source code, programmers would just tweak their prompts and generate software afresh." This leads to some mind-boggling hypotheticals, like "What's the role of the programmer in a future without source code?" Cass asked the question and announced "an emergency interactive session" in October to discuss whether AI is signaling the end of distinct programming languages as we know them.
In that webinar, Cass said he believes programmers in this future would still suggest interfaces, select algorithms, and make other architecture design choices. And obviously the resulting code would need to pass tests, Cass said, and "has to be able to explain what it's doing." But what kind of abstractions could go away? And then "What happens when we really let AIs off the hook on this?" Cass asked — when we "stop bothering" to have them code in high-level languages. (Since, after all, high-level languages "are a tool for human beings.") "What if we let the machines go directly into creating intermediate code?" (Cass thinks the machine-language level would be too far down the stack, "because you do want a compile layer too for different architecture....")
In this future, the question might become 'What if you make fewer mistakes, but they're different mistakes?'" Cass said he's keeping an eye out for research papers on designing languages for AI, although he agreed that it's not a "tomorrow" thing — since, after all, we're still digesting "vibe coding" right now. But "I can see this becoming an area of active research."
The article also quotes Andrea Griffiths, a senior developer advocate at GitHub and a writer for the newsletter Main Branch, who's seen the attempts at an "AI-first" languages, but nothing yet with meaningful adoption. So maybe AI coding agents will just make it easier to use our existing languages — especially typed languages with built-in safety advantages.
And Scott Hanselman's podcast recently dubbed Chris Lattner's Mojo "a programming language for an AI world," just in the way it's designed to harness the computing power of today's multi-core chips.
Read more of this story at Slashdot.