アカウント名:
パスワード:
C言語が悪いんじゃなくて、それを扱う人間のレベルが低いのが悪いということ、質を担保するためのコストがかなり高くなること、でしょう。
かといって、そう簡単にレベルの底上げができたり質を担保するためのコストが下がるわけでもなく、危ないことがやりづらい・起きにくい環境を選びましょう、というのは同意できて、オススメとしてRustを挙げるのも同じではありますが。
個人的な危惧として、未だにコンピュータを理解するにはC言語を知らないとだめだ、という原理主義者が結構いることです。そんなことないんだけどなぁ…。
> 未だにコンピュータを理解するにはC言語を知らないとだめだ、という原理主義者が結構いることです。
「コンピュータを理解するにはC言語を知っているだけじゃダメだ」ならその通りでしょうけどC言語知らないとコンピュータを理解するのが厳しいのはその通りでしょう。
Rustじゃなんでコンピュータの理解が厳しくなるのです?
というか、Cの何をしればコンピュータ理解になるのかが未だにしっくりこない。
ポインタ? GCが無いこと? ヒープとスタックのメモリモデル? 標準でライブライが弱いから自分で実装するので勉強になる? それくらいなら他の言語でもなぁ。
コンピュータの低レイヤであるドライバやOSがC言語だからコードを追うために必要と言われたら分かるけど。
> じゃなんでコンピュータの理解が厳しくなるのです?なんだろう。このもやもや感。
C言語は理解できてないけど他の方法でコンピューターを理解できたなら「私はこういう方法で理解したけど、その方がC言語よりこういう理由で効率が良い」と主張すればいいし、未だにコンピューターもC言語も理解できてないならあんたはお呼びでない。
親コメじゃないけど言わせてもらうわ。
他の言語は理解できないけどC言語で理解できたなら『私はこういう方法で理解したけど、その方が他の言語よりこういう理由で効率が良い』と主張すればいいし、未だにコンピューターも他の言語も理解できないロートルなら黙ってろよ。
C言語扱える人は大抵別な言語も扱えるかと・・・?PHPとかだとPHPとJavaScriptだけって人も結構居るけどスキルリストにC言語が入ってる人はCでもJavaでもLL言語でも割と幅広い範囲をカバーしている人が多いですね逆にネットワーク系のスペシャリストなのにCが得意な人なんかもいるような・・・。世間で言うところのWeb系は割と技術力が低い人が多くて手数とかはったりとか発想力で勝負とかもあるのでなんともかんとも。
コンピュータの原理を理解しろという言葉を貴方はおそらく理解出来ていないかと思います。まずはアセンブラで何をどうしたらどうなるのかを学んだ方がいいのではないでしょうか。
C, C++言語を知っていれば確かにJavaもカバーできないことはないけど、Javaでの「お作法」とかライブラリとかは想像もつかないから、結局最初から学び直しでしたね。
たかが{ }をどこにくっつけるかで宗教的違いがぁっ!SQLに至ってはインデントの仕方すら、まだ自分の中でさえ決まってないや。
> C言語扱える人は大抵別な言語も扱えるかと・・・?
COBOLとProlog以外はねwww
C言語の話をしてるのにアセンブラの話を出すバカ登場
しかも、言ってる事が全部テメェの思い込みと来たもんだ、スゲェや!
C言語が使えて他も行けるって奴は確かにいる。ただ、C言語を知ってるから他の言語でも関数型プログラミングができます程度のやつが*扱える*の範疇になるならと思ってるならレベルが知れる。
#Z80でもプログラム書いたことあるわボケぇ!(泣)
> C言語扱える人は大抵別な言語も扱えるかとそう思ってRustに挑戦しましたが、見事に打ち砕かれました(笑)
SQLは予約語を大文字にするか全部小文字かでの宗教対立がですね…
正直自動で整形してくれない限りは全部小文字で書きたいわ一発ですんなりかけたためしがないし
アセンブリは構造の理解には役立つけど何かを実現するためのコストが高すぎる。
低レイヤーのプログラムをしたい場合は大半をCでクリティカルな部分だけアセンブラみたいなやりかたしないと時間をドブに捨てていくようなもん。
CもできないCASLもできない人が コンピュータの原理を学習するならCを学ぶよりCASLの方が手軽で効果的って話だろ。。。
CASLの知識じゃ実際のコンパイラがどういうコード吐いて実行してるかを想像するのは無理だろ。
caslでプログラム書くのに比べたら、C言語の方が100倍以上生産性がある。pythonとかF#とかはC言語の10倍くらい生産性があるなあ。
"どの言語で理解した"ということは重要ではなくて、「C言語じゃないと駄目だ」という言説への反論ですよね何故そのような主張を勧めたのでしょうか?
コンピューターって要するに「仮想マシン」と理解していいんじゃね。JavaVMでもいい。現実にはAthlonの16本レジスタなんて、もう人間が直接使いこなすことはできないよ。
コンピューターを理解した時の言語と言えば、S-BASICとM-BASICかなぁ。1.コンピュータは計算機であり電卓代わりに使える。(これに関してはROMBASICの方が優秀)2.コンピューターSM何れかのBASICを最初にロードしないと何もできない。(なんせ、MZですから)3.コンピューターに想定外の事をやらせるのは結構大変。(SWのONOFF読み込み、豆電球を付けたり消したりとか)4.でも、想定外の事でもやってやれなくはない。(プリンタポートのペーパーエンド端子を入力に使ったり、データ端子にトランジスタ噛まして出力に使ったり)5.その気になればDATA文に直接マシン語書くようなことまでできる。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
私は悩みをリストアップし始めたが、そのあまりの長さにいやけがさし、何も考えないことにした。-- Robert C. Pike
言語のせいじゃない (スコア:5, 参考になる)
C言語が悪いんじゃなくて、それを扱う人間のレベルが低いのが悪いということ、質を担保するためのコストがかなり高くなること、でしょう。
かといって、そう簡単にレベルの底上げができたり質を担保するためのコストが下がるわけでもなく、危ないことがやりづらい・起きにくい環境を選びましょう、というのは同意できて、オススメとしてRustを挙げるのも同じではありますが。
個人的な危惧として、未だにコンピュータを理解するにはC言語を知らないとだめだ、という原理主義者が結構いることです。そんなことないんだけどなぁ…。
ほえほえ
Re:言語のせいじゃない (スコア:1)
> 未だにコンピュータを理解するにはC言語を知らないとだめだ、という原理主義者が結構いることです。
「コンピュータを理解するにはC言語を知っているだけじゃダメだ」ならその通りでしょうけどC言語知らないとコンピュータを理解するのが厳しいのはその通りでしょう。
Re: (スコア:0)
Rustじゃなんでコンピュータの理解が厳しくなるのです?
というか、Cの何をしればコンピュータ理解になるのかが未だにしっくりこない。
ポインタ? GCが無いこと? ヒープとスタックのメモリモデル? 標準でライブライが弱いから自分で実装するので勉強になる? それくらいなら他の言語でもなぁ。
コンピュータの低レイヤであるドライバやOSがC言語だからコードを追うために必要と言われたら分かるけど。
Re: (スコア:0)
> じゃなんでコンピュータの理解が厳しくなるのです?
なんだろう。このもやもや感。
C言語は理解できてないけど他の方法でコンピューターを理解できたなら
「私はこういう方法で理解したけど、その方がC言語よりこういう理由で効率が良い」と主張すればいいし、
未だにコンピューターもC言語も理解できてないならあんたはお呼びでない。
Re: (スコア:0)
親コメじゃないけど言わせてもらうわ。
他の言語は理解できないけどC言語で理解できたなら
『私はこういう方法で理解したけど、その方が他の言語よりこういう理由で効率が良い』と主張すればいいし、
未だにコンピューターも他の言語も理解できないロートルなら黙ってろよ。
Re: (スコア:0)
C言語扱える人は大抵別な言語も扱えるかと・・・?
PHPとかだとPHPとJavaScriptだけって人も結構居るけど
スキルリストにC言語が入ってる人はCでもJavaでもLL言語でも割と幅広い範囲をカバーしている人が多いですね
逆にネットワーク系のスペシャリストなのにCが得意な人なんかもいるような・・・。
世間で言うところのWeb系は割と技術力が低い人が多くて手数とかはったりとか発想力で勝負とかもあるのでなんともかんとも。
コンピュータの原理を理解しろという言葉を貴方はおそらく理解出来ていないかと思います。
まずはアセンブラで何をどうしたらどうなるのかを学んだ方がいいのではないでしょうか。
Re:言語のせいじゃない (スコア:2)
C, C++言語を知っていれば確かにJavaもカバーできないことはないけど、Javaでの「お作法」とかライブラリとかは想像もつかないから、結局最初から学び直しでしたね。
たかが{ }をどこにくっつけるかで宗教的違いがぁっ!
SQLに至ってはインデントの仕方すら、まだ自分の中でさえ決まってないや。
Re:言語のせいじゃない (スコア:1)
> C言語扱える人は大抵別な言語も扱えるかと・・・?
COBOLとProlog以外はねwww
Re: (スコア:0)
C言語の話をしてるのにアセンブラの話を出すバカ登場
しかも、言ってる事が全部テメェの思い込みと来たもんだ、スゲェや!
C言語が使えて他も行けるって奴は確かにいる。
ただ、C言語を知ってるから他の言語でも関数型プログラミングができます程度のやつが*扱える*の範疇になるならと思ってるならレベルが知れる。
#Z80でもプログラム書いたことあるわボケぇ!(泣)
Re: (スコア:0)
> C言語扱える人は大抵別な言語も扱えるかと
そう思ってRustに挑戦しましたが、見事に打ち砕かれました(笑)
Re: (スコア:0)
SQLは予約語を大文字にするか全部小文字かでの宗教対立がですね…
Re: (スコア:0)
正直自動で整形してくれない限りは全部小文字で書きたいわ
一発ですんなりかけたためしがないし
Re: (スコア:0)
1週間もかからず、基礎的な土台は理解できる。
コンピュータを理解するなんてのは、言語一つできたぐらいでは到底無理だけど、他の言語ではなく C をやっておくように勧めるような部分だけなら、全て CASL の範囲でも十分におさまる。むしろ正確でなおかつ簡単に理解できる。
Re: (スコア:0)
アセンブリは構造の理解には役立つけど
何かを実現するためのコストが高すぎる。
低レイヤーのプログラムをしたい場合は
大半をCでクリティカルな部分だけアセンブラみたいなやりかたしないと
時間をドブに捨てていくようなもん。
Re: (スコア:0)
CもできないCASLもできない人が コンピュータの原理を学習するならCを学ぶよりCASLの方が手軽で効果的って話だろ。。。
Re: (スコア:0)
CASLの知識じゃ実際のコンパイラがどういうコード吐いて実行してるかを想像するのは無理だろ。
Re: (スコア:0)
caslでプログラム書くのに比べたら、C言語の方が100倍以上生産性がある。
pythonとかF#とかはC言語の10倍くらい生産性があるなあ。
Re: (スコア:0)
"どの言語で理解した"ということは重要ではなくて、「C言語じゃないと駄目だ」という言説への反論ですよね
何故そのような主張を勧めたのでしょうか?
Re: (スコア:0)
コンピューターって要するに「仮想マシン」と理解していいんじゃね。
JavaVMでもいい。
現実にはAthlonの16本レジスタなんて、もう人間が直接使いこなすことはできないよ。
Re: (スコア:0)
コンピューターを理解した時の言語と言えば、S-BASICとM-BASICかなぁ。
1.コンピュータは計算機であり電卓代わりに使える。(これに関してはROMBASICの方が優秀)
2.コンピューターSM何れかのBASICを最初にロードしないと何もできない。(なんせ、MZですから)
3.コンピューターに想定外の事をやらせるのは結構大変。(SWのONOFF読み込み、豆電球を付けたり消したりとか)
4.でも、想定外の事でもやってやれなくはない。(プリンタポートのペーパーエンド端子を入力に使ったり、データ端子にトランジスタ噛まして出力に使ったり)
5.その気になればDATA文に直接マシン語書くようなことまでできる。