プログラミング言語の難易度ランク作りました ご覧ください [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
2017/02/17(金) 12:15:24.04ID:gObbCwHn
-------S(唯一神)-------

機械語

-------A(ハッカー)-------

アセンブラ C++ C

-------B(一般プログラマ 凡人)-------

java C♯

-------C(日曜プログラマ)-------

ruby python swift

-------D(一般事務員でも使える)-------

VBA PowerShell

-------E(手段が目的になっているただのカス)-------

その他のマイナー言語厨(特にHaskell)
127デフォルトの名無しさん
垢版 |
2020/02/02(日) 14:01:59.52ID:B8tXf04A
関数型言語は解ってる奴が使えば副作用が起きづらいからデバッグや保守が簡単になるんでしょ?
そういった生産性が故に注目されてるんじゃないの?
将来的なものも含めて全く生産性に寄与しない言語なんて注目されようがないと思うんだけど。
ネタとして以外に
2020/02/02(日) 14:28:00.23ID:gkoi3ncl
>>127
研究分野がある
プログラマーは興味ないだろうけど
2020/02/02(日) 16:06:23.27ID:keDxK3pR
日曜プログラマー(´・ω・`)
130デフォルトの名無しさん
垢版 |
2020/02/02(日) 18:59:44.05ID:hA9+zviL
まぁ研究まで含めるならいくらでも難しい言語はあるんだろうけど
その難しさがwとWだけで書くからとか
そういう難しさじゃランクに並べる意味が無いと思うのよ
個人的な意見だけど
2020/02/03(月) 00:23:22.69ID:e9E2NTEb
そんなくだらん学問じゃないけど
2020/02/04(火) 13:44:59.48ID:zsuFO9qX
Kotolin日曜迷子中(´ ・ω・`)
2020/02/12(水) 02:12:58.10ID:mzw7eug2
Perlは、
・引数に参照やポインタの様なものを渡す関数を作りたいと思ったら上手く行かなくて
 難しい。そもそも、関数がちゃんと書けないという説がある。
・文字列を1文字ずつ処理したいときに勝手にさまざまな変換が行われてしまいがちなので難しい。
・ASCIIコードと文字そのものの区別が複雑で、その変数が果たしてどっちなのかなかなか分からなかった。
2020/02/12(水) 02:13:54.96ID:mzw7eug2
>>120
でも、ポインタや再帰が難しく感じるような人には、マシン語を使いこなすのは難しいはず。
2020/02/23(日) 09:34:00.69ID:DWh+LsOr
>>131
わりと下らんだろ。
不動点コンビネータとか発見(どやっ)とかやっちゃってるの馬鹿らしいなと思うわ。
2020/02/26(水) 01:49:36.37ID:RjlB++L6
rpg3やrexxはどのくらいですか?w
vb.netも無いし
137デフォルトの名無しさん
垢版 |
2020/02/29(土) 01:35:00.39ID:D7K7eRQt
めんどくさいと難しいは違う。
アセンブラやC言語は簡単。
だけどめんどくさいだけ。
138デフォルトの名無しさん
垢版 |
2020/03/01(日) 03:32:37.15ID:/Cy8SoqN
>>1
機械語ってアセンブラだぞw
2020/03/01(日) 12:17:28.16ID:8hJkpeX/
機械語 ≠ アッセンブリ言語 は基本だよ?
2020/03/04(水) 03:16:48.46ID:KmgMips4
>>138
機械語は0と1だけ
アセンブラはアルファベットやで

まあ気持ちはわかるけど
2020/03/04(水) 03:58:59.92ID:LiuOm7Wf
機械語
バイナリイメージを指すこともあるし
それを16進数表記した物を指すこともある
2020/03/08(日) 15:40:06.34ID:nGQiIF3A
>>137
それでも、
・ケアレスミスなどが起き易い。
・C言語で言う所の生ポインタを型も付けずに使うことで間違いが起き易い。
 ポインタは型を導入することでアセンブラよりは劇的に間違いが少なくなっている。
 C言語のポインタに厳密な型があるのはそのために導入された。
・命令数やコードの量が多くなる。
・ローカル変数からグローバル変数に直すような事も、C言語の様に宣言の場所を変えれば
済むようなことはなく、その都度丁寧にソースを見直して影響を受ける場所を加筆・修正しなくてはならない。
その際、沢山の命令の追加・削除・変更や、使うレジスタの変更も伴う。
・C言語のように「変数名を検索」すれば必ずしも関連場所が見つかるようなことは無い。
 レジスタで処理されている場合が多いため。
・BYTEからintに変更したいような場合も、命令やレジスタの大幅変更を伴うことが結構多い。
・関数に引数を渡すのも複雑な手作業のようになるので、作業量が多い。
・コンピュータの深い理解が必要。

などがあって実際のプログラミングは難しい。
143デフォルトの名無しさん
垢版 |
2020/03/08(日) 15:45:51.69ID:nGQiIF3A
>>142
「C言語の生ポインタは、それを書いた場所とは全く別の場所で原因不明のバグを生み出すので
避けたほうがいい」
などという人がいる。
アセンブラでは生のアドレスによる間接参照を使うがそれはポインタをさらに危険にしたようなものなので、
とても書いた場所とはまったく別の場所でバグを生み出すことがある。
そうなると原因を探し出すのにとても時間がかかる。
そういうことがあって、アセンブラで大きなプログラムを書くことが出来た人は、
バグが非常に少ないプログラミングが出来る人か、または、バグが入っても
上手く原因を見つけ出すことが出来る人に限られた。
それが出来る人が非常に少数派だったので、できる人は天才、などと呼ばれた。
2020/03/08(日) 17:17:24.54ID:nGQiIF3A
>>143
さらに言えば、当時のパソコンは、現在の様な「保護モード」では動いていないために、アセンブラで書いたプログラムに間違いがあると「暴走」や「ハングアップ」「再起動」などの現象が起きた。
そうなると、パソコンをリセットしてOSを再起動して、またやり直す必要があった。
それに時間が掛かるのでバグが少なく書ける人で無いとアセンブラでプログラムするのはとても難しかった。
当時、BASICで書いていると間違いがあってもこのような現象がほぼ全く起きなかったので、それと比してもアセンブラは難しい印象を与えた。
なお、その後にパソコンでも使えるようになったC言語でも同様の現象は起きた。
が、アセンブラに比べれば間違いが起きにくかったのでアセンブラよりはだいぶ易しい印象を与えた。
2020/03/08(日) 21:09:40.07ID:CMumPgyX
>>141
そのバイナリイメージってつまり二進数ってこと?
2020/03/09(月) 12:44:30.49ID:Ojyuxyhi
バイナリっていうくらいだから元は2進数って意味だけど
今はビルド後のファイルやROMイメージという意味で使われる

2進数で表示すれば2進数だし
16進数で表示すれば16進数
256進数とも言えるし
base64形式なら64進数とも言える
2020/03/30(月) 12:34:38.09ID:uz78JHcr
>>102
俺は嫌いじゃない
2020/04/04(土) 17:53:07.47ID:dE1NbDC3
Haskell > C++ > Scala >= C >> Java
2020/04/04(土) 19:11:22.78ID:Ug/1gxd4
javascriptはどのへん?
2020/04/09(木) 07:50:24.19ID:jjLWwUCO
>>149
cと同じくらい。
ルールは少ないように感じるけど、実際作るとめちゃくちゃ不安定なものが出来上がるところとか。
2020/06/02(火) 02:09:50.37ID:DYRdhOXw
ぶっちゃけ、どの側も言語もそれぞれ難しさがあると思うけど、Haskellは抽象性が高いから、抽象的思考に慣れていないと、アプリのコード組めないと思う。

てことで、個人的偏見ありで、
Haskell >> C++ > C > Java, JavaScript > Python
2020/12/14(月) 20:49:21.57ID:dZWdULI2
人間のおつむは再帰を直感的に理解するようにできてない
■ このスレッドは過去ログ倉庫に格納されています