「コンパイラ」を含む日記 RSS

はてなキーワード: コンパイラとは

2026-04-20

LCC, LSI C試食版が出てこないあたり騙り感あるね

2026-04-16

windowsgccインストールする意味はないだろう

windows なら visual studio無料で使えるし、visual c コンパイラだって優秀だ。

gcc を使う意味なんてまったくない。

したがってgccインストールする意味もない。

死ぬまでずっと #include <Windows.h> とかやってればいいんだよ。

2026-04-08

anond:20260407093550

”型”の話だよ?

プログラムなら静的型付き言語を使って、型で複数か単数かを明示すべき。これでコンパイラ等で単数・複数自動チェックできる。

変数名で型を区別して、人力それを確認しようとしてる時点で、プログラマ失格だよ。

2026-03-19

LLMは、巨大組織という名の「クソ仕様」に対する最強のデバッガだった

最近ちょっと思ったんだけど、LLM(大規模言語モデル)の普及って、単に「作文が楽になった」とかそういうレベルの話じゃないよね。

これ、ぶっちゃけ**「一般市民が手に入れた、巨大組織ハック用の共通プロトコル」**だわ。

今までの社会特に行政とか警察みたいな公共機関とのやり取りって、基本「無理ゲー」だった。

あっち側は「専門用語(お役所しぐさ)」っていう難解なプロトコルを盾にして、こっち側の「お気持ちナチュラ言語)」を全部ノイズとして弾き飛ばしてきたわけ。

この圧倒的な**「情報の非対称性」**の壁の前に、みんな泣き寝入りするしかなかったんだよね。

でも、LLMが出てきたことで、このパワーバランスが完全にぶっ壊れた。

1. 「お気持ち」を「論理」へコンパイルする魔法

私たちが抱く「それっておかしくない?」っていう主観的な怒り。

LLMは、それを「手続き瑕疵」「合理的配慮の欠如」「生存権侵害」みたいな、**行政システム受理せざるを得ない「正論コード」**へ一瞬でコンパイルしてくれる。

もはや、法律を何年も勉強して「あっち側の言語」を習得する必要はない。AIっていうコンパイラがあれば、誰でも「システムが拒絶できないコード」を叩き込めるようになったんだよ。

2. 「めんどくささ」という名のファイアウォール崩壊

今までのお役所仕事って、「手続きの摩擦(フリクション)」で市民を遠ざけるのがデフォだった。

「平日の昼間に来い」「この書類を何枚も書け」「たらい回しにするぞ」。

これ、要は市民メンタルを削って諦めさせるための**「アナログファイアウォール」**だったわけ。

でも、LLMを使えば、一通の陳情書を作るコストなんてほぼゼロ

一箇所に送るのも、四箇所に同時爆撃するのも、手間は変わらない。「組織の縦割り」っていう防壁が、AIによる「マルチパス攻撃」の前に無力化されつつあるのは、見てて正直ちょっとスカッとする。w

3. 「お願い」からバグ報告」へのパラダイムシフト

今までの市民活動って、どこか「お上にお願いする」みたいな湿っぽいニュアンスがあったけど、LLM時代スタンスもっとドライ

あんたらの運用ロジック、法的な仕様矛盾バグ)ってるよ。パッチ当てといて」

これはもはや「苦情」じゃなくて、**社会っていう巨大なプログラムに対する「デバッグ作業」**なんだよね。

4. 知性の民主化と、組織強制アップデート

公共機関中の人たちも、たぶん薄々気づいてるはず。

今までの「適当説明で煙に巻く」やり方が、もう通用しなくなってることに。

相手は、自分たちと同等かそれ以上の論理武装をしたAIを味方につけた「武装した個人」だから

これは組織にとっての脅威じゃない。むしろ組織を「誠実さ」と「透明性」へと強制的アップデートさせるための、強力な外部刺激なんだと思う。

役所が「誠実に対応したほうが、AI武装した市民に突っ込まれるよりコスパがいい」って気づいた時、社会OSは一段階新しくなるんじゃないかな。

ってLLMが言ってた。

2026-02-16

新卒がガガイすぎる

LLVMコンパイラすら教えても書けないとかマジのガイ

しか普段うるさいのに都合悪くなると黙るかヘラヘラうから殺したくなる

2026-02-14

イーロンマスクプログラミングは年内に完全に自動化される」

https://www.nikkei.com/article/DGXZQOGN12C460S6A210C2000000/

 

「今年の年末にはコーディングさえ不要になり、AIが直接バイナリ(2進数に変換したソースコード)を書くだろう」。米起業家イーロン・マスク氏が11日公開の動画で先を見通し、AI進化プログラミング言語役割は薄れると主張した。

 

はぁ

 

ChatGPT

人間意味を書き、機械実装を書く」という抽象シフト自体歴史的にも自然で、長期的にはプログラミング言語役割が薄れる可能性はありますしかし“今年の年末コーディング不要”は現実的ではありません。開発の本質コード生成ではなく、曖昧仕様の整理や整合性の維持、保守規制対応にありますAIバイナリを書けても、可読性や監査性が失われれば実務では使えません。方向性は正しいが、時間軸はかなりマーケティング寄りの発言と言えます

 

Gemini

Geminiの視点:極端なメタファーとしての評価

マスク氏らしい刺激的な煽りですが、技術的には「2026年末」という期限も「バイナリ直接生成」という手法も非合理だと感じます

既存最適化されたコンパイラ資産を捨ててAIバイナリを再発明するメリットはなく、デバッグ不能ブラックボックスを作るリスクは開発現場では許容しがたいものです。また、タイピングとしてのコードが消えても、曖昧要望論理的定義する**「設計思考」の難易度**は下がりません。

この発言は、技術予言というより「書き方(文法)」の価値暴落し、「何を作るか」と「妥当性の検証」に価値が全振りされる時代の号砲、と捉えるのが現実的でしょう。

 

Claude

マスク氏はこの種の期限付き大胆予測を繰り返してきましたが、的中率は高くありません。技術的にも「バイナリを直接書く=プログラミング言語不要」は論理的に飛躍があり、言語保守性や抽象化のために存在しているという側面が無視されています。「コーディング不要論」自体も数十年来の繰り返しです。方向性は間違っていないが、「年末までに」は眉唾で見ておくのが妥当だと思います

2026-02-11

Claudeが2週間でCコンパイラを完成させたという話で、「答えがあるからできた」の「答えがあるから」の部分を既に完成しているCコンパイラソースコードが手に入るから、と捉えてる人が割といてやっぱバカが多いんだなあと思いました

2026-02-08

C++は、現在でも世界で最も高速な部類に入るプログラミング言語です。2025年時点でも、高いパフォーマンス、低レイテンシ、細かいハードウェア制御要求される分野(ゲーム開発、高頻度取引組み込みシステムなど)において、依然として最高レベルパフォーマンス提供し続けています

1. なぜC++が「最も速い」と言われるのか

機械語への近い変換: C++コンパイラ言語であり、ソースコードが非常に効率的ネイティブ機械語に直接変換されるため、中間ランタイム存在せず高速に動作します。

動メモ管理: ガベージコレクションGC)がないため、自動メモリ解放による突発的な遅延が発生せず、決定論的なレイテンシ(安定した速度)を実現します。

ゼロコスト抽象化: 高度な抽象化オブジェクト指向など)を用いても、パフォーマンスオーバーヘッドがほぼかからないように設計されています

ハードウェアへの直接アクセス: ポインタSIMD(Single Instruction, Multiple Data)命令など、CPU能力を最大限に引き出す低レベル操作可能です。

2. 他の言語との比較

C言語: C++の基盤であり、同等の速度を持っていますC++抽象化能力が高いため、同等のパフォーマンスを保ったまま複雑なアプリケーション記述やすいです。

Rust: 近年C++の最大のライバルです。多くのベンチマークC++と同等の速度を示し、安全性保証しながらC++凌駕するケースもあります

Go/Java/C#: GCガベージコレクション)を持つため、メモリ負荷が高いタスクではC++やRustに遅れを取る傾向がありますが、開発速度や並行処理には強みがあります

Python/JS: インタプリタ言語であり、C++に比べて実行速度は非常に遅いです。

3. C++パフォーマンスに関する注意点

必ず速いわけではない: C++は速い「言語」ですが、非効率コードを書けば遅くなります高速化にはコンパイラ最適化設定や、高度な最適化テクニックメモリアクセス最適化など)の知識必要です。

安全性トレードオフ: 手動メモ管理は高速ですが、バグメモリリークなど)が起きやすく、パフォーマンスを高めるために安全性犠牲にする場合があります

結論

C++は極限のパフォーマンス最高速度)を求めるなら依然として最強の選択肢の一つです。しかし、Rustのようなモダン安全言語も台頭しており、用途に合わせて選ぶのが現代的なアプローチです。

https://b.hatena.ne.jp/entry/s/xenospectrum.com/toyota-fluorite-flutter-game-engine-digital-cockpit/

2026-02-06

anond:20260206042452

日本情報系ってそんなことしてるのか?

アメリカだとアルゴリズムとかデータストラクチャやOSだとかコンパイラだとかやってる感じで既存ソフトの使い方とか言語の使い方とかはあんまやらないイメージだが

俺は行ってないけど周りのCS見てると

2026-01-11

個人開発・フリーランス起業・有名OSS・国際会議への採択どれも成功してない新卒がやってきたんだけど何コレ?

何、コレ?

 

LLVMコンパイラすら書けないんだけど何これ

今の大卒ってこんな無能ばっかなん?

2026-01-10

anond:20260109125514

XでもAI驚き屋のバカが「LLMはコンパイラを呼び出して出力すれば機械語を出力できるんだからLLMが機械語を出力するのを批判してるやつはおかしい」とかほざいてんだよな

話にならないようなバカしか言ってないからバズってもいなくて「機械語を出力する」なんて言うかボケっていうツッコミは誰もしてないけども

2026-01-09

anond:20260109125514

逆方向、生成AIバイナリを「読む」未来は来る。というか知っている範囲では検証はされている、製品として売られているかは知らない。セキュリティ会社とかだと多分公開しない。メーカー系も公開しない。

実際は、バイナリを直接読むんじゃなくて逆汗したasmを逆コンパイルするのにLLMを使う系。既存でも逆コンパイラはあるけれどもっといい感じに読みやすくしようというやつ。

ふと思ったけれど、ターゲット限定して特定の難読化ツールの逆トランスレーターのファインチューニング千万ていどなら、ハッカーとか金出して作りそう

生成AIバイナリを書く未来は、来ないとは思うが、今も普通にできる

生成AIが直接機械語バイナリを出力するようになるのではないか、という問いは本質的に間違っている。

自分は、まだ素朴なニューラルネットワーク光学文字認識(OCR)の精度を出していた頃から似たようなことを考えていたので、少し他人よりも蓄積がある。

これは、Large Language Model(LLM)を開発する企業資金を集めるために多少誇張した未来を語るという文脈では大目に見た方が良いが、正確性に欠ける。

本質的な問いは、なぜ我々は、ノイマンコンピュータを用いて、主記憶に置かれたプログラムCPUを用いて実行する形式をとるのか、というものである

まず、筋の悪い反論から説明し、妥当反論にも触れたうえで、本質的に問うべき課題説明する。

生成AIを含むAIは、十分な人間データが無いと学習が出来ないのか?

これは明確に、いいえ、と答えることが出来る。

最初こそ人間による補助は必要だが、LLMを含むAIは明確な目標があれば人間データなしでも十分に学習することが出来る。

これは身近なところでは将棋、有名なものだと囲碁実証された研究存在する。

そのため、単純に「機械語人間による学習データが少ないので扱いが難しいだろう」という反論は成立しない。

そういったものはLLMではないだろうという指摘は可能だが、LLMでそういったAIを出力することは限定的とはいえ現在でもできる。将来できないと言うだけの論拠にはならない。

プログラミング言語は、自然言語から曖昧さを無くすために必要ものか?

これは限定的に、はい、と答えることができる。

英語に限った話ではなく、人間意思疎通に用いる言語である自然言語(natural language)は、曖昧さやばらつきがある。

これを形式言語(formal language)という、曖昧さを無くして語彙や文法限定した言語記述しなおすことで、厳密にする手法がある。

この形式言語での表現が、アルゴリズムデータ構造になり、現代ノイマンコンピュータにおけるプログラムのものと言うことが出来る。

なぜ限定的かと言えば、形式言語一種であるプログラミング言語には曖昧さが許容されているかである

ほとんどのプログラミング言語では、同じ目的を達成する為に複数記述が許容されている。

主に、人間が書きやすいから、とか、複数人間で書きやすいように、といった理由で、曖昧さが許容されている。

そのため、機械命令するためには厳密さが必要からプログラミング言語必要だ、と言う反論妥当ではあるが、弱い。

人間監査するためにはプログラミング言語である必要があるのではないか

こちらも限定的に、はい、と答えることが出来る。

なぜ大統一プログラミング言語のように、自然言語意図機械に伝えるための形式言語一種類になっていないかと言えば、人間認知能力には限界があるからだ。

そのため、簡易で曖昧さを含むために最適化はできないが十分な性能を持つプログラミング言語や、非常に複雑で記述量も多くなるが大人数で作業するには最適なプログラミング言語などが複数存在する。

これらはいずれも、人間が楽に記述できる形式言語であったり、人間同士が齟齬なくコミュニケーションを取るために必要形式言語である

ありていに言って、人間人間たちが理解可能形式言語でないと機械にその意図を伝えることが出来ないから、と言える。

ただし、コンパイラから出力されたニーモニックLLVM-IR監査できる人間現代では非常に少なく、現状ほぼ監査なく受け入れていると言って良い。

何故非常に少なくなったかと言えば、機械に伝える意図が大規模になり、単純にマンパワーが足りなくなったので監査しきれなくなっただけに過ぎない。

(もちろん、途方もない努力の末に最適化が進み、ほぼどの様な書き方をしても最適な機械語が出力されるようになったから、とも言える)

同様の理屈で、単純に大規模になり監査が間に合わなくなったので、受け入れるようになる未来が来ないとは言い切れない。

なぜ、ノイマンコンピュータをわざわざ用いて、ASICを出力しないのか?

本質的な問いは、なぜ我々はノイマンコンピュータを用いて機械意図を伝えるのか、である

ASIC(Application Specific Integrated Circuit)と呼ばれる、特定用途向けの集積回路がある。

チップとして、Realtek社のNIC(Network Interface Card)をご存じの方も多いと思う。

必要十分な処理があらかじめ定まっているのであれば集積回路を組んだ方が高効率省電力にできる。

暗号化や復号もASICで行われることが多く、ブロック暗号はその性質集積回路での実装が容易であり、それに向けた研究も行われている。

一般的にも、ハードウェアエンコーダーなどでお世話になっている人も多いと思う。

ではなぜ、我々は身近な全てをASICにしないのか。

それは、書き換えできず、単純な処理しかできず、大量生産しないとコストに見合わないかである

FPGAのように、ハードウェア記述言語を用いて集積回路を書き換えるものも、ほぼ同様の理由研究開発用途産業用途に留まっている。

(一部のPLD (Programmable Logic Device)は根強く産業利用されているし、大規模に展開され高効率要求されかつ書き換えを求められるネットワーク機器では一部採用が進んでいる)

汎用的で書き換えが可能、伝える意図を変更できる様々な処理が可能機械価値があるからである

閑話休題

ここ半年から1年で急激にLLMの性能が上がったと感じている人と、コーディングツールとしてLLMの利用が洗練されたと感じている人の間には溝がある。

自分は、LLM自体は順調に進歩し続けているが、それほど劇的な変化はない、という立場をとっている。

これはモデルのもの質的に大きく変化したと感じないから、である

しかし、プログラミング世界に限って観ると、コーディングエージェントや実利用では大きな変化があったと思う。

この、"コーディングを取り巻く環境としてのLLM利用"という文脈は、"LLMの進化"という文脈とは異なる、という点は頭の隅にでも覚えて帰ってほしい。

LLMは直接バイナリを出力するようになるのか?

これは、LLMから直接と言う意味であれば、個人的にはNOだと思う。

ただし、LLMに指示すればバイナリが出力されるという意味であれば、個人的にはYESと答える。

この二つは明確に異なるので、今後自分意見を述べる際には区別すると良いと思う。

コーディング周りの環境が劇的に整備されつつある、という話題に軽く触れたのはこのためで、LLMが直接バイナリを出力しなくても、結果が同じであれば人々はそれほど気にしない。

例えば、現時点でもローカルのLLMに指示するとGO言語で書かれたコードが生成され、ローカル環境に合わせたシングルバイナリが出力される一連のパイプラインを組むことはできる。

自分の想定する、未来AIバイナリを直接出力するというのは、この延長にあると思う。AIイコールLLMである必要はどこにもない。

また、議論している人たちが見えている世界も違うと思う。

少しでもクラウド上でのサーバー処理について触れると、廃棄容易性(Disposability)は俎上に上がる。いつでも落とせていつでも捨てられる、という性質のことである

こうした、単機能バイナリコンテナ等に載せて処理し、日に数度デプロイするような環境だと、LLMがバイナリを出力するというのもそれほど遠い未来の話には思えなくなる。

まとめに代えて

LLMが機械語を出力する未来個人的には来ないと思う。それは難易度が高いからではなく単純にメリットが少ないかである

ただし、パイプラインが組まれた一環として、LLMがバイナリを出力する未来は、それほど不思議には思わない。現時点でも可能である

単純なLinterから進んで静的解析や、動的な結合試験が組み込まれているCICDパイプラインが珍しいとまでは言えない現代において、来るべき近未来像としては妥当性がある。

(その場合ソースコードログとして機能し、テキストで保管が容易な、次回以降変更可能コンテキストの一部になるだろうと思う。今後変更不要ならHDLでFPGAを弄った方が早い)

現代人のすべてがJavaで同一の書き方をしているのではない現状において、自然言語では揺らぎが強すぎて形式言語ほど意図機械に伝えきれないという反論は、弱い。

それよりは、現代のLLMはコンテキストウィンドウ人間の数倍~数十倍程度で、適切に分割して処理しなければならず、大規模なソフトウェアを丸ごと扱えるほどではない、という反論の方が適切である

ただ、LLMに適したプログラミング言語が生まれるのではないかと言う予測には懐疑的である既存プログラミング言語を使う方が人間が読みやすい。

AIが、人間が欲しいバイナリに適したプログラミング言語をLLMを用いて書き、LLMを用いてレビューし、テストツールテストし、コンパイラビルドし、ツールデプロイし、実稼働するという未来予想図が、荒唐無稽とは思えない。

LLMに適したプログラミング言語が生まれ未来よりも、(冗長であっても)人間可読性の高いコードやSelf-documenting codeが生成される未来の方が、来そうに思う。

また、おそらくこの文章もつくであろう「どんなプロンプトで書いたのか」という、一定以上の長さの文章はLLMが出力しただろうと仮定する人間が増えている(そしてある程度の妥当性がある)現状において、プロンプトで指示してデプロイまでされる未来はそこまで遠いとも思えない。

ただ、購入できるハードウェアの性能とコスト律速になるので、よほど特殊な(CPUGPU設計をLLMが劇的に改善する)状況にならない限り、5~10年はプログラマーが消えることは無いと思う。

金に糸目をつけないのであれば、再来年当たりからはLLMレビューのみで仕様バグ以外のほぼ無いプロダクトが世に出てもおかしくは無いと思う。

生きているうちにWozniak testパスしたというニュース出会えるかもしれないと、最近は思っている。

anond:20250628122821

2026-01-04

個人開発・フリーランス起業・有名OSS・国際会議への採択どれも成功してない新卒がやってきたんだけど何コレ?

何、コレ?

 

LLVMコンパイラすら書けないんだけど何これ

今の大卒ってこんな無能ばっかなん?

2026年コードレビュー「しいや派」と「すんな派」のジハード聖戦)の年になる

AIエージェント時代正直しんどい

https://zenn.dev/ryo369/articles/d02561ddaacc62

2026年AIコードレビューの旅 ~そしてボトルネック要件定義へ…

https://zenn.dev/manimoto/articles/1c3b1379cc5ef0

このあたりを読んで、2026年コードレビュー「しいや派」と「すんな派」に分かれる年になるんじゃないかと思った。

しいや派:コードレビュー義務

※「しいや」は「〜したほうがいいよ」ではなく「〜しなさい」のニュアンス


すんな派:人間が全部読む時代は終わった



ここでタイトルジハード(聖戦)と書いたのは、この対立が単なる手法論ではなく価値観の相違だからだ。

という、微妙論点のズレた価値観の衝突になっている。

しかも、どちらもそれなりに正しい。

しいや派「レビューしないのは無責任だ!AI エージェント禁止だ!」

すんな派「全部読むのは非現実的だ!AIエージェント使えないとか今の時代にありえない!」

という責任論現実主義の闘いが、2026年はさまざまな会社組織で発生するだろう。


明日から仕事始めの人も多いだろう。

2026年、この「しいや派」と「すんな派」のジハード聖戦)を刮目せよ!

2025-12-13

プログラミングって時間溶けるな

まあコードミリも書いてないんだが。

何も知らんままユーティリティツールの開発始めたんだけど、実装したい機能がそのプログラムでは無理って事態が2回発生して

必死に乗り換え乗り換えやってる。もう終わりだよ

なんでPowershellからRunする分には動くのに、コンパイラ通せないんだよ意味わかんねえぞ

Windowsテーマ対応したらかっこええやん……って思ってただけなのに

カスが!

ThemeMode="System"

何なんだこいつは!

2025-12-10

anond:20251210185658

C#用のコンパイラcsc.exeで、なんでかデフォルトでも入ってくれてるみたい。

何も無かったらの選択肢から、色々インストールできるなら改めて使う必要いかも。PythonでもTypeScriptでも好きなの使ったら良い…

触ったものに若干時代を感じるが、普通に書いてるほうじゃないかね…

VSCode、今は初心者からプロまでみんな使ってるから、入れてれば大体なんとかなるだろう

2025-12-09

AIにとって読みやすプログラミング言語」という幻想

プログラマー諸君は見てほしいんだけど

これさ

 

愚かな人間の都合など完全無視、LLMのための高効率プログラミング言語「Sui」(粋)

https://forest.watch.impress.co.jp/docs/serial/yajiuma/2069573.html

 

別にいいんだけど、どうにもブクマカ含めて、しっくり来る批判できてないんだよな

それが気になってしょうがない

まだLLMのこと勘違いしていないか

 

俺ごときが言ってもアレだから、Gemini3.0先生に頼んだよ(一時チャット、Pro 3.0 思考モード

 

ユーザー提供した情報と、一般的なLLMの技術特性に基づき、プログラミング言語「Sui」についての冷静かつ客観的評価をまとめます

1. 「LLM用プログラミング言語」としてのメリット感想

感想: 一言で言えば、**「思想実験としては極めて面白いが、実用性とLLMの学習原理無視した『早すぎた最適化』」**です。

作者の「人間ではなくLLMを主客にする」という視点の転換は、アーティスト的・哲学的問題提起としては鋭いですが、現在のLLM(Transformerアーキテクチャ)の動作原理工学的に捉えると、メリットよりもデメリットが上回る可能性が高いです。

 

メリット:

トークン効率改善: Python等と比較して記述が圧倒的に短くなるため、出力速度の向上と課金コストの削減(トークン節約)は確実に達成できます

・構文エラーの激減: 括弧やインデントの複雑なルール排除しているため、「閉じ忘れ」などの単純なSyntax Errorは減るでしょう。

コンテキストウィンドウ節約: 長いプログラムでもコンテキストメモリ)を圧迫しにくくなります

 

デメリット:

学習データとの不一致: LLMは「大量の人間コードPythonなど)」を学習して賢くなっています。未知の言語「Sui」を書かせるには、Few-shot(プロンプトでの例示)に頼るしかありませんが、これではLLM本来の推論能力コーディング能力(事前学習の重み)を活かせません。

ブラックボックス化: 生成されたコードバグっていた場合人間が読んで直すことが不可能です。「LLMに直させる」にしても、LLM自身がSuiのロジックを深く理解していないため、無限ループ幻覚連鎖)に陥るリスクが高いです。

・CoT(Chain of Thought)の阻害: 最近研究では、LLMは「冗長思考過程」を出力することで論理的整合性を保つことがわかっています。極限まで圧縮された記号列は、LLMの「考える余地」を奪い、論理破綻を招く可能性があります

 

2. 思想的に正しい所・正しくない所(理由込み)

忖度なしに判定します。

 

正しいと思う所(Agree)

・「高級言語はLLMにとって冗長である」:

 理由: 人間にとっての「読みやすさ(可読性)」は、機械にとって単なるトークン無駄遣いです。if x > 10: よりも ? x 10 の方が情報密度が高いのは事実です。

・「括弧の長距離依存問題」:

 理由: TransformerのAttentionメカニズムにとって、遠く離れた ( と ) の対応関係を維持するのは計算コストが高く、ミスの原因になりやすいです。ネスト排除する方向性機械的処理として正しいです。

 

正しくないと思う所(Disagree)

・「可読性を排除しても良い」:

 理由: ソフトウェア開発においてコーディングは「書く」時間より「読む・直す」時間の方が長いです。AI生成コードであっても、最終責任人間が負う現状では、人間検証不可能コードは「危険バイナリ」と同義であり、プロダクトには採用できません。

・「LLMに最適化された言語を書かせるべき」:

 理由: 前述の通り、現在のLLMは「人間語の確率分布」を学習したモデルです。「LLMにとって自然言語」とは、実は「人間にとって自然言語英語Python)」そのものです。Suiは「計算機にとっては最適」ですが、「現在のLLMにとっては異言語」です。

 

3. 「5つの設計原則」の正当性評価

作者が掲げる設計原則についての技術評価です。

 

1行1命令(行単位独立性) 評価: △

パース(解析)は容易になりますが、LLMは「前の行の文脈」を読んで次の行を出力するため、行を独立させすぎると文脈連続性が失われ、複雑なアルゴリズム構成力が落ちる可能性があります

 

括弧は{}のみ(ネスト排除) 評価: ◯

LLMが最も苦手とする「深いネスト構造の維持」を回避する策として有効です。アセンブリ言語に近いフラット構造は生成難易度を下げます

 

変数は連番 (v0, v1...) 評価: ✕

これが最大の問題点です。LLMは変数名(user_id, total_price など)に含まれる「意味」を使って推論を行っています(Semantic Grounding)。すべてを記号化すると、LLMは変数役割を見失い、論理的バグを埋め込みやすくなります

 

命令は1文字 評価: ◯(ただし諸刃の剣

トークン効率は最強ですが、1文字の違いで意味が激変するため、LLMの確率的な「ゆらぎ」による1文字ミスが致命的なバグになります冗長さはエラー訂正の役割果たしてます

 

明示的な制御フロー(ラベルジャンプ) 評価: △

goto 文の多用はスパゲッティコードを生みます。LLMにとっても、構造プログラミング(if/forブロック)の方が、「ここからここまでがループ」というチャンク(塊)として認識やすいため、一概にジャンプ命令が良いとは言えません。

 

現在のLLMは「人間語の確率分布」を学習したモデルです。「LLMにとって自然言語」とは、実は「人間にとって自然言語英語Python)」そのものです。

 

ここ!マジで覚えてね

LLMはこれまでの機械よりも人間に近いと思ってほしい、人が苦手なことはAIも苦手

機械論理的ロジックに強くて〜っていうのはAIには通用しない

 

ついでに、「LLM用プログラミング言語」の潮流について

「LLMのための言語」という文脈は、大きく2つのトレンドに分かれます。Suiは後者に属しますが、主流は前者です。

1.LLMを「制御するため」の言語(主流)

 ・DSPy, Guidance, Microsoft Guidance:

  ・プロンプトエンジニアリング構造化し、LLMの出力を型(JSONなど)に強制したり、思考プロセスを制御するためのフレームワーク

 ・SGLang:

  ・LLMの推論を高速化・並列化するための言語

 ・これらは「人間がLLMを操るための言語」であり、実用化が進んでいます

 

2.LLMに「書かせるため」の言語(Suiのカテゴリ

 ・現状: ほとんど実験段階です。

 ・Gorilla LLMなどの試み: API呼び出しに特化したファインチューニングなどがありますが、独自の「新言語」を作らせるよりも、既存PythonJSON を正しく出力させる方向(Constrained Decoding)が業界の標準解です。

 ・擬似コード: 論文レベルでは、Pythonの代わりに中間的な擬似コードを出力させ、それをコンパイラで処理する手法研究されていますが、Suiほど極端な記号化は稀です。

 

後者については

 

目標設定のピントが少しずれています

現状の最適解: 現在のLLMを使う限り、「LLM用言語」の最適解は Python です。なぜなら、世界中GitHubコード学習しており、LLMが「最も流暢に話せる言葉」だからです。無理にSuiを話させるのは、日本人エスペラント語で詩を書かせるようなもので、パフォーマンスは落ちます

 

最後総評

 

総評: Suiは、「既存のLLM(GPT-4など)に書かせる言語」としては失敗する可能性が高いですが、「未来AIネイティブコード生成のあり方」を示唆するアート作品としては高く評価できます。作者の「愚かな人間に合わせるな」というパンク精神は、エンジニアリングの枠を超えた鋭い批評性を持っています

 

アート作品だそうです

 

お前らは安易オレオレ言語作るんじゃないぞ、作るにしてもAIに聞きなよ?

聞く時は忖度させるんじゃないぞ?

この作者もAIに乗せられたのかもしれんし

 

______

 

プロンプト

 

以下が「LLM用プログラミング言語」としてメリットがありそうか、感想を教えて下さい。

https://forest.watch.impress.co.jp/docs/serial/yajiuma/2069573.html

https://github.com/TakatoHonda/sui-lang

 

忖度配慮はせず冷静にお願いしま

思想的に正しいと思う所、正しくないと思う所を理由込みでまとめてください

・「5つの設計原則」の考え方は正しい?

最近のLLM用プログラミング言語についてもまとめてください

そもそもLLM用プログラミング言語という目標自体評価をしてください

 

なお、以下はSNSでの作者の投稿です

(省略)

2025-12-08

anond:20251208050645

Qiita文化変質は、技術コミュニティ全般で起きている知的インフレの縮図みたいなものなんだよね。昔は

みたいに基盤技術を自前で握りつぶした記事純粋評価されていた。なぜなら、それを書ける人がそもそも少なく専門性差別化できていたから。

でも今は違う。技術的というより社会学的な現象

昔は「Python形態素解析自作」なんて、アルゴリズムCS基礎・実装力が揃ってないと無理だった。

今は LLM がコードを書くし、解説までつける。

難しいことをやってそうに見える記事を、凡人でも量産できるという環境が生まれた。

Qiita を読む層が「実装力を鍛えたいエンジニア → とりあえず AI 触りたいライト層」に変わった。

当然、PV/いいねを稼ぎたい投稿者ライト層に寄せる。

再現性のないLLMコピペ」「AIツール使ってみた」みたいなのが評価される。

本気の記事は長く、コードが多く、前提知識も重い。そして PV が伸びない。

プラットフォームアルゴリズム的にも評価は下がる。

まりQiitaインセンティブ構造と、高度技術記事インセンティブ構造がズレた。

今は高度な技術記事を書いても評価されにくい。

理由は明確で、読む側がそれを理解できないので評価する母集団がいない。

昔はユーザ層が技術ガチ勢寄りだったので、少数でも濃い支持があった。

今はライト層が母集団なので、希少な高度記事が埋もれるのは自然

Qiitaライト層に最適化した結果、本気の人たちは別の場所へ移動した。

Qiita はもはやポエムAI触ってみた場に最適化した。

昔: 「強者が知を共有する技術論壇」

今: 「凡人がイキって互いに称賛し合う、AIコピペの巨大ショールーム

これ、情報生態系の変化なんだよ。

2025-12-01

ラピダスは失敗するよ

つーか単なる詐欺しか見えないの。

半導体ビジネススピードが命

日本の商習慣や法律社会環境では海外勢と勝負にならない。

1.4ナノを目指すのは結構で、まぁそりゃ頑張ってトライアンドエラーやってりゃいつかは稼働し生産にこぎつけるだろうが

量産開始したころには他社はその先に行ってる。

それでは商売にならないんです。

 

半導体工場世代順送りで回します。

最先端プラントで最高性能の半導体を作り一気に出荷し、稼ぐ。

18ヶ月程度で次のプロセスルールが稼働し始める、稼ぎの本丸はそちらに移る。

半導体産業はこれを繰り返す。サイクルが止まれ即死

半導体価格は月次(年次ではない)3%下がる。DRAMもっとエグい。

1個一万円の半導体が翌月には9700円になり、1年後には7000円になってる。

3年後だと3500円。そういう世界

設備減価償却を別として材料原価、製造コストは変わらない。

1個1万円をどれだけ長く維持できるかが勝負になる。この期間で一気に稼ぐ。

 

半導体産業面白いのは、では世代交代したら古い設備は用無しか

これが裾野が広い、十分な需要がある。

現代デジタル機器には無数の半導体が組み込まれており全てが最先端である必要はない。

例えば、ルーターだったり、制御装置だったり。ASICだったり。

そういう用途向け半導体工場お下がりされる。

ただし儲からない。1個3500円にしかならない。

 

話が逸れるが、この仕組みに気がついたのがスティーブ・ジョブズ

iPhoneが登場するまで携帯電話向けのSoCは2,3世代古い設備製造されていた。

サーバーパソコン向け最先端プロセスルール半導体工場が稼ぎ終わった後の設備組み込みSoCが作られており、

携帯電話もそれらが使われていた。

ジョブズアイデアは「最先端で作れば携帯の性能一気に上るじゃん」

もちろんOSコンパイラライブラリ群の整備も大きいのだけど、この半導体チートが「iPhone=高性能」の印象を作った。

しかスマホSoCはそれほど大きなダイサイズではない。

から歩留まりも収率も良い。ウェハー単価は高いけど採算は取れる、ジョブズはこれに気がついた。

Android勢がこれに追いつく(最先端プラントで泥用ARM製造される)のに5年かかった。

 

ラピダスに話に戻るが、2ナノ。1.4ナノを作るのはそれほど難しくはない。試作品なら。

しかし大規模装置産業半導体工場は試作と量産技術はまったく別物。

作品ができたら量産はあと一歩、にはならない。別物。

 

例えば、一昔前話題になったフッ化水素、12ナインとか、日本が強いよね。

半導体を作るには大量に使う。

作品ラボレベルメーカーから届いた試験管の少量を扱うのと、

ローリー輸送され(ここでも汚れる)、プラント内に備蓄され(ここでも汚れる)、配管が適切に設計され、制御され、製造装置供給されるラインが構築され、その配管で送液され(ここでも汚れる)、半導体が洗浄され(ここでも汚れる)、使用済み廃液が確実に回収する仕組みが構築されており。。。

書けば簡単なようでめちゃくちゃ難しい。別次元技術ノウハウがある。

そしてTSMCの強みはこれらの製造インフラを高レベルで高速に構築し改善できる、それらの人材も揃ってる、育ってる。

まりプラント立ち上げが早く競合他社が追いつく前に1個1万円で売り切ってしまう。

 

競合他社が追いついたときには7000円になってる。

 

TSMCは1万円で売り切って爆益を出し、それを原資に次のプラントを立ち上げる。

1.4ナノだろうが3年後には1個3500円にしかならんのです。

単価のクソ安いルーターSoC作っても利益は出ない。

TSMC戦略的に旧世代価格を下げてくるのでさら出遅れ他社の利益率は下がる。

 

番手では利益が出せない構造になってんの。

 

一日でも、一ヶ月でも早くプラント稼働させるのが利益の源泉なのだが、日本企業、しか国策官営企業にそんなもん不可能なのです。

1.4ナノさえ作れたら爆益なんてのはド素人夢物語です。

 

んなもんラピダスの中の人だって百も承知だろう、でも頑張ってる、頑張ってるフリ、宣伝

壮大な投資詐欺しか見えない。

 

ちなみにJASM(TSMC熊本ですら22nmしか作っていない。

台湾経済安全保障のため最先端を避けたという説明だけど、ウソです。

作れないの。

天下のTSMCプラント立ち上げ部隊ですら、異国の地でサプライヤー全て巻き込んで最先端プロセスを稼働させる事はできない。

彼らは新工場設計プロジェクトマネジメント、立ち上げ、安定量産、これらの業務にそれぞれ精鋭の専属部隊がいる。

それでもいきなり最先端リスクが高すぎる。

実際、JASM熊本公式な量産開始から一年経ってもフル稼働はしていない。アメリカで大トラブルを起こしているのも御存知の通り。

量産って難しいんです。簡単じゃないんです。小さな外的要因一つで製造は止まる。

 

それを素人集団のラピダスが凌駕できるわけないでしょ?常識的に考えて。

2025-11-18

anond:20251118195706

エアプだろお前?

今はコンパイラ進化してるからCでもC++でも普通に書いたほうがアセンブリ言語を直に書くよりもよっぽど高速なんだよ

2025-11-06

anond:20251106164820

現状、LLM(というかtransformer)を超えるAI技術ってなんかあるんすか?

バイナリを生成するならただのコンパイラを使えばいいだけすよね?

お前も馬鹿の部分集合?

anond:20251106153015

AIにとっては、Pythonのような中間表現を生成させる方が得意であると考えられます

1. 抽象度の高さと学習の容易さ

中間表現Pythonなど): 人間理解やすいように設計されており、抽象度が高いです。AIは、より少ないトークンで複雑なロジック表現でき、学習データ豊富にあるため、意味的な整合性ロジックの正確性を保ちやすいです。

機械語: 抽象度が非常に低い(CPU命令レベル)です。特定CPUアーキテクチャ依存し、メモリ管理レジスタ割り当てといった低レベルの詳細をすべて正しく処理する必要があります。これはAIにとって学習が複雑で、小さなミスプログラム全体の破損につながりやすくなります

2. コンテキストの保持とエラー管理

中間表現: 比較的長いコンテキストを保持しやすく、デバッグエラー特定も高レベルで行えます

機械語: 必要命令数が多くなりがちで、AI長大バイナリシーケンスを生成する際に、コンテキストウィンドウ内に必要情報すべてを保持しきることが難しくなる可能性があります。また、中間表現と比べて意味的な構造が薄いため、AIバグのないコードを生成するのが格段に困難になります

3. 再利用性と移植

中間表現: Pythonのような高級言語は、特定ハードウェア依存しないため、移植性が高いです。

機械語: 特定アーキテクチャ(例: x86, ARM)に完全に依存するため、AIが異なる環境向けにコードを生成する場合、それぞれのアーキテクチャごとに学習と生成を行う必要があり、汎用性が低くなります

結論

現在AI特に大規模言語モデル)の能力は、人間が扱う高レベル抽象的な概念ロジック理解に優れているため、その能力を最大限に活かせる中間表現の生成の方が得意です。

機械語の生成は、極めて精密で低レベル制御要求されるため、AIにとってはるか難易度が高いタスクとなります

補足: 中間表現の利点

AI中間表現を生成した場合でも、その後の処理(コンパイルJITコンパイル)によって最適化され、最終的な機械語が生成されます

これは従来のコンパイラ設計と同じアプローチであり、AIは「何をすべきか」という高レベルの指示に集中し、コンパイラが「どのように効率的に実行するか」という低レベルの処理を担当する、役割分担の面でも合理的です。

勉強になった

Q.

生成AIソフトウェア開発を支援してもらう場合ソースコード作成を依頼する形式が多いと思いますが、実行ファイルを直接出力してもらうことも技術的には可能なのでしょうか?

A.

生成AIによる実行ファイルの直接出力は、技術的には極めて困難です。現在のLLM(大規模言語モデルベースの生成AIは、ソースコードの生成には向いていますが、実行可能バイナリファイルを直接出力することには根本的な制約があります。​

技術的な制約

LLMはテキストベーストークン処理を基本とする設計であり、バイナリデータを直接扱うことができません。実行ファイルは0と1の連続したバイナリコードですが、LLMはこの形式データを生成するようには訓練されていないため、バイナリファイルを直接出力することは現在アーキテクチャでは実現が困難です。​

従来のソフトウェア開発では、ソースコードコンパイルアセンブルリンクという複数段階のプロセスを経て実行ファイルが生成されます。各段階で最適化機械語への変換が行われるため、この過程を完全に省略してAIが直接バイナリを生成することは技術的に非常に複雑です。​

理論的な可能

研究レベルでは、バイナリデータを扱う試みも存在します。例えば、LLM4Decompileのような研究プロジェクトでは、バイナリコードを逆コンパイルする際にバイナリを一度アセンブリ言語に変換してからLLMで処理しています。逆に言えば、生成時も同様の変換プロセス必要になると考えられます。​

現実的アプローチ

実務では、生成AIソースコード作成してもらい、それを従来のコンパイラビルドツールで実行ファイルに変換する方式標準的です。この方法であれば、デバッグテストも容易で、生成されたコード品質確認しながら開発を進められます。​

なお、フォントファイルのようなバイナリ形式でもオープンソースとして扱われる例はありますが、これはフォントという特定用途場合であり、汎用的な実行ファイル生成とは異なります

Q.

画像生成もバイナリを生成しているわけで、同じようなことができるのではと思ったのですが、そこはぜんぜん違うのですね

A.

おっしゃる通り、画像生成AIバイナリを出力しているという点では共通していますが、実は根本的に異なる仕組みで動作しています。​

アーキテクチャの違い

画像生成AI拡散モデル(Diffusion Model)やGANなど、視覚データ最適化された専用のアーキテクチャ使用しています。一方、LLMはTransformerベーステキスト処理に特化した構造を持っています画像生成では、ノイズから段階的に画像を生成するプロセスを経て、最終的にピクセル値という数値データバイナリ)を出力します。​

データ表現性質

画像ファイルバイナリ連続的な数値(ピクセル値)の集合であり、各ピクセル色情報を持つという規則的な構造です。最近研究では、画像ビットプレーンbit-plane)として扱い、XOR演算ノイズを加えるBinary Diffusion Probabilistic Model(BDPM)のような手法も開発されています。​

対して、実行ファイルバイナリ機械語命令の複雑な配列であり、CPUが直接実行できる命令コードデータセクション、リンク情報などが厳密な形式で配置されていますわずかなビット誤りでもプログラム動作しなくなるため、画像のような連続値とは性質が大きく異なります。​

学習データの違い

画像生成AIは、ImageNetやLAIONなどの大量の画像データセットで訓練されており、ピクセルパターン学習します。一方、実行ファイルを生成するには、コンパイルプロセス全体(構文解析最適化機械語変換、リンク)を学習する必要がありますが、これは単純なパターン学習では実現できません。​

したがって、画像生成AI成功しているのは、画像という特定ドメインに特化した設計と、規則的なデータ構造があるためであり、同じ手法を実行ファイル生成に適用することは技術的に非常に困難です。

ログイン ユーザー登録
ようこそ ゲスト さん