M-FalconSkyの日記: C言語 1
日記 by
M-FalconSky
# 適当言ってるので、間違いが多々あると思います。
よいところ
仕様コンパクト(?) それなりに一貫している、初期にしてはライブラリがそれなりに明確で十分な(?)量がある
わるいところ
すべてにおいて泥臭いw
結局、どの言語でもそうだけど、「言語の根幹にかかわる」として仕様セットがモジュラブルでない部分があることかも
More better Cとしてどれも(知る限り) メモリ/レジスタの操作の機能セットを明確に分離して実装してない気がする
そこらへんがCが残ってる理由じゃなかろうか
volatile動作
Memory Barrier
バイトオーダ
ビット操作
メモリマップのための構造体(not その言語用のデータセット)でよいもの
などが1セットあればどの言語でもよいはずなのに(見落としはたくさんあるだろうけど)
PyPyとかなどの高速な中間VMレイヤを経由してもハードウェア制御はできると思うんだけどなぁ
# 現在の処理が割り込まれない限り続くはどっちかというとネイティブコード化した時の特徴でCとは限らないし
DSLというかメモリ/レジスタ操作がSQLみたいなプラグイン言語(あれはあれでコンパイラで検証できない時点でどうかと思うんだけど)があればいいのかなぁ?
ローレベル(asm混ぜ)は、また別でよいかな。というかasm("")がまさしくDSLな気がしないでもない。
VM使うCの処理系があってもいいと思うが (スコア:1)
Cの仕様で「VM使え」となれば、それはもはやCではない。