将来性ないプログラミング言語。Delphi含まれず安心
■ このスレッドは過去ログ倉庫に格納されています
5 Programming Languages That Are Probably Doomed
https://insights.dice.com/2019/07/29/5-programming-languages-probably-doomed/
Ruby
Haskell
Objective-C
R
Perl インデントと論理構造の一致が不要という人もいるだろうし
コードはすべて大文字で書くべきという人もいるだろう
コーディング規約の一貫性は不要だという人もいれば
レビューは工数の無駄だという人もいるだろう
そういうレベルのお話よね インデントとカッコで同じ情報を表してるんだから冗長なのは事実
知能が高いと冗長さは単純に無駄だが、低脳ドカタには冗長さも必要ってことだよ インデントとカッコが同じ情報だと思ったことがPythonの敗因だろうね
インデントっていうのはスペースと同じなんだよ。
コンピュータからすれば意味はなくて、
人間が見やすくなるように人間のためのもの
意味がある情報だけで言えば、スペースは要らない
カンマや演算子の前後にスペースは要らない
関数の引数だって,のみスペースは禁止にしたってよかったはずだ。
でもそうしなかったのは関数の引数を区切るカンマと
見やすくするためのスペースは別物だから
Pythonは見やすくするためのインデントを意味と共通化してしまったから
見やすい記述に制限ができてしまった。 >>128
それに、ブロックの終了の記号が何にも無いのは明確さがなく、
ケアレスミスの元となる。レイアウト的なものは、空行を入れたり
少し違う業や関数からコピーして来たりするときにずれ易い。
ずれたときにブロックの終了記号があると助かる。
>>127
逆に助長性は安全性に繋がりやすい。例えば、C/C++の最後のセミコロン";"
は無くてもコンパイラがその都度推定できる可能性はあるが、
有った方が確実だから有る。Rubyなんかは無くても分かるときはなくて良い
仕様ではあるが、大規模プログラムではそれが見つけにくいバグの原因に
なる可能性がある。 >>127
文系の人は、lexical(字面)的な読解力が頭の良さだと勘違いしやすいが、
そうではない。字面ではなく本質的なところが重要。字面的な判別能力
を自慢にしてる人は、短いが見にくい変な書き方をして結局本人も間違う。 >>127
ちなみにおいらは、客観的に見て低脳ドカタではない。
高IQ、高学歴、高実績で評価は高い。 理系の短いは実行する行が少ない(定義文や空行は含めない)
文系の短いは書く量が少ない >>128
C/C++において、関数の引数を二行以上に渡って書きたいような時、
インデントと意味は、有る意味ではずれる。しかし、それぞれの引数の後ろに
一つずつコメントを書きたいようなときにはそのの書き方は見やすい :
func(
aaa, // これこれこういう意味。
bbb, // TYPE *pXxxx
);
また、ターゲット別に #if #endif などでコードを変えたいような場合は、
インデントの関係がどうしても崩れる場合があるし、その場その場で
マクロに対するインデントを重視するか、C/C++言語に対するインデントを
重視するか、どちらがいいかは一概には決まらない。
#if xxx
TYPE aaa;
・・・
#else
・・・
#endif
↑TYPE aaa; の部分に、#if ブロックのインデントを付けた方がいい場合と、むしろ、その場の
C/C++ のブロック宣言としてのインデントの位置を維持した方が分かりやすい場合とが有り、
どちらも優劣付けがたい。 >>133
文系の人は、文章そのものの雰囲気的な美しさに美学を見出す傾向がある。
芥川龍之介の「表現技巧(?)」が素晴らしいとか、○○氏の詩的表現は
真似できないとか。
しかし、それをプログラミングに持ち込んで欲しくない。ここでもそういう
表面的な美しさばかりにとらわれている人が多い気がする。 上級者はコードの書き方に拘って
見やすいように、意味が伝わりやすいよに書くんだが
低級者は無意味に見づらく書く(本人は見づらいことがわかってない。そこまで気が回らない)
そういう低級者にインデントのみ、書き方を押し付けることが出来るが
どちらにしろ低級者なので、クソコードにしかならない
低級者には補助輪程度の役目にしかならず、上級者には足かせとなる そういえば、プログラミングにおいても>>134の場合のように、関数の
引数を折り返して書く場合、どの程度引数の前に空白やタブを入れるべきかは
人間が見たときの「見易さ」で決まる。それは関数名 func 部分の長さに
よっても変化し得る。そして、何が美しいかは「美学」「美術」の領域に
入ってきてしまう可能性がある。だからプログラミングは芸術とも言われる。
その意味で、インデントに論理的な意味を与えすぎると、芸術的な
美しさが得られなくなってしまう可能性は高い。 まるで自分が将来性が無いって言われてるように感じてしまって必死なんよ 年収3000万超えてからが上級やぞ
それまでは低脳ドカタ インデントで話を散らかしてRubyの将来性>>1から意識を逸らしたいだけw デルファイは言語じゃ無くて、IMEの名前じゃね?
あれ、中身言語はpascalだよな? Rubyに将来性はないし、使ってる99.999%は低脳ドカタ pythonはインデントガーとか言ってる人ってメモ帳でソースでも書いてるの?w メモ帳以外で書いたら、勝手にインデント揃えてくれるんか?
例えば、他から持ってきた複数行のコードをコピペしたときに
インデント=ブロック構造というコードの意味になってるんだから
勝手に整形してくれるわけないな ペーストしたとこからの相対でインデント維持しないん? >>149
秀丸とか使ってそう(^^;;
とりまVSCodeかatom入れようよ(^-^; >>150
無理だろ?
例えばこういうコードに
def repeat_msg(msg, repeat=3):
for i in range(repeat):
print msg
他のコードで使われてる、インデントが異なるこの2行をコピペして
print foo
print bar
def repeat_msg(msg, repeat=3):
for i in range(repeat):
print msg
print foo
print bar
に勝手にインデント揃えてくれるエディタなんて思いつかん
そもそも実現可能なのか?やる方法があるにしても、どこからコピペを
開始して、どこに移動してから貼り付けるとかパッと出てくる? コピー先の最初の行のインデントの深さだけ決めてコピーしたら
残りの行のインデントも自動的に揃えられるだろ >>153
草
ちょっとは最新のエディタも触ってみようぜ >>154
残念ながらそれは無理。
def repeat_msg(msg, repeat=3):
for i in range(repeat):
print msg
| ここで貼り付けをすると
こうなる。
def repeat_msg(msg, repeat=3):
for i in range(repeat):
print msg
print foo
print bar >>153>>156
ここでPythonのインデント云々って言ってる人はこんなレベルだったの? WEB+DB vol.111 は、Ruby on Rails 6, Julia 特集だけど、
Python から、Julia へ流れそう
Julia は、do 〜 end が使えて、Ruby風に改良されてる!
Jupyter Notebook(JN)でも使える
Windows で、RubyをJNで使っている人は、日本語でバグらないの?
irb では、バグるけど
RubyをVSCode で使っているけど、JNでも日本語でバグらないかどうか、知りたい >>156
自分の周りにコピペプログラマーがいないからちょっとびっくりなんだけど
こういうレベルの人が世の中に結構いたりするの?! >>156
しかもそれ他の言語でも同じだよね例えばcならこうなるけどカッコで対応とれてるからってそのままこういう風に書き続けるのかキミは?w
void repeat_msg(char *msg, int repeat){
for (int i = 0; i < repeat; i++){
printf("%s\n", msg)
}
printf("%s\n", foo)
printf("%s\n", bar)
printf("end.\n")
} 敢えてやるなら
def repeat_msg(msg, repeat=3):
for i in range(repeat):
print msg
if True:
print foo
print bar
こんな感じ
コピペの方がインデント浅い時とか長い時は別関数造って呼ぶ とりあえずpythonで書き慣れると他の言語が鬱陶しくて仕方ないねインデントに限らず
プログラミング言語の完成形に近いと思うわ
恒常的に動くシステムのソフトとかでもない限りpython一択だと思うわ
あ、GUIアプリは知らん わい氏、第1得意言語haskell、第2得意言語ruby、無事死亡 pythonの何が完成系なんだよ。
変数のスコープがあいまいだし、
参照かコピーかあいまいだし、
ライブラリと同じ名前のファイル名つけたら悲惨だし
結局あいまいだからちょっと複雑なものを作るとうんざりする。
完成されたライブラリにちょっとパラメータ変えて流すには便利ってだけの代物 >>160
ある機能を他でも使うから関数化しようかなーとかあるわけだが >>167
ちょっと複雑なものなんてお前には作れないだろ
モッサリ鈍重ウンコwebサイトは複雑でもなんでもないからね? あいまいではないな。
仕様どおりだ。
仕様が変だという話かな。 Python, Ruby っぽい、Julia
関数型なら、
Haskell っぽい、Elm。
Ruby っぽい、Elixir >>167
まあ無能な奴は厳しい規則設けて檻に入れとくしか飼いならす方法ないもんなあ
プログラミング言語も同じで草 Pythonは30行以内でささっと書くスクリプトには向いている。
それより長大なプログラムを書くには苦行でしかない。 年収3000万以上の開発者がPythonでAIを書き(もちろん30行以上ある)、
年収300万以下の低脳ドカタは世界の片隅で30行しか書けないとブツブツ言っている 3000行くらいでささっと、やね
10kL以下ならpythonだわ 10年くらい前、Lightweight languageとかって盛り上がってた時は型に縛られはないから、早く楽しくプログラミングできるとか言ってたのにのね >>178
まあ間違いじゃない。問題は歴史が浅く、大規模のアプリが作られてなかったことによる
結局大規模になって、作った人じゃない人がメンテナンスするようになると
途端に、型がないと大変ということに気づく。 先人の智慧や蓄積を無視して
若いのが俺カッケーした結果がこれか 10年前の静的型といえばJava全盛期じゃん
そりゃ動的型の方が良いってなるよ
今と比べちゃいかんでしょ C++もいちいち型指定するのめんどくさいってことでauto乱発だしな >>180
知恵や蓄積の結果生まれたpythonの方が優位なのは明らかなのに先人様がそれを認めない結果がこれなんやで 結局、ケースバイケースなんだよな
Javaが向いてるケースがあれば、Rubyが向いてるケースもある
それ理解せずLL最高とか言ってたのが10年前のはてなブックマークのホットエントリー 10年前に書かれたRubyを保守しろと言われたら悲惨だよね XMLとかJSONとかテキストベースの無駄構造データ受け渡しを流行らせた糞も反省汁 バイナリでバッチリ敷き詰めて
更に圧縮したら効率がいいだろ! SwiftはObjective-Cよりも先に死ぬよ さすがにそれは無理がある
SwiftUI出てきたあたりで切り離してもおかしくない頃合い
依存してる領域もあるけどなんとかするだろ >>144
俺はObjectPascal言語の開発環境の名前がDelphiだと思ってるけど
違うかな もともとObjectPascalという言語だったが
魔改造し過ぎでもはやObjectPascalとは呼べなくなったから、
これからはDelphi言語だーって公式が言ったけど、
やっぱObjectPascalに戻すわーって言ったのがDelphiが使われなくなった頃 >>191
IMEじゃなくてIDEな
わざとだろうけど >>192
Delphiと呼ばれる前の
ObjectPascalのIDEは
Paradoxとか言ってなかったか >>167
python のスコープなんてもっとも単純だろうよ。
>ライブラリと同じ名前のファイル名つけたら悲惨だし
こんなバカなことで困る輩はいない。
コピーと参照のあいまいさはまあわかるが。 Paradoxはデスクトップデータベース
Accessみたいなもん ParadoxはObjectPAL
ObjectPascalの前身かこれ? >>201
ObjectPALとObjectPascalは別物だと思うよ Access - VBA
Paradox - ObjectPAL
Filemaker - こいつのスクリプトって名前なんていうの? >>195
まああと少しの間は大丈夫だろうからすぐに他の言語を覚えた方がいい
とりあえずJavascriptならもう少し延命できると思う もう少しどころか立ち位置的にCOBOL越え確実だと思う。wasm関連技術では完全代替はまだまだまだまだ難しい。
別に好きだと言ってるわけじゃないので変な勘違いしないでよね! あ、phpじゃなくてjsのことだぞ。phpはまぁ…頑張れ Pascal自体は死んで久しい
Delphiが単独で頑張ってるだけ dolphinてなんや、、excelのイルカを出す、あのプログラム言語のことか、、 Linux用にそんな名前のファイルマネージャーがあったような。 >>211
>Dolphin(ドルフィン)は、KDEデスクトップ環境で動作するファイルマネージャーである。 >>214
[追加]
Dolphinという名のAndroid用のブラウザもあるらしい。 haskellが入ってるのは絶対おかしい
俺がこれから使おうとしてるのにありえない
この記事はフェイクニュース 現場のリーダーはJavaはセキュリティの事故で将来性はないと言っていた。大手の金融プロジェクトでも不採用の方向なんだと。
もしアプリローンとかでJava使っているところがあったら、問題おきてニュースになってもおかしくないだろう。 Perlは個人でちょっとしたものを書くのに最高なんだけどな。
数値と文字列を雑に扱いたいときもよしなに対応してくれるし、
厳密にコントロールしたけりゃそういう書きかたもできる。
Pythonで書くときみたいにstr()とかint()とかちまちましたくないんよ。 よしなにってのがクセモノなんだぜ
きっちりエラー出してそれ以上先へ逝かせてくれないpythonマゾ大好き perl糞つかえねぇω → strict ルールで縛る
結局毎回ルール適用なら最初からpython使えよωωω strictは必ず使っているので変数宣言についてはPythonと同程度の手間が
かかってもいいんだけど、一番違いを感じるのは文字/数値変換なんだよね。
Perlの場合変数の型ではなく演算子で演算を区別してるから
Pythonのようにいちいち型変換する必要もないし、
JavaScriptのように演算の中身を知るために変数の型を確認する必要もない。
ちょっとした調べものとか計算ごとをするのに最高だよPerl。 そういうのをやりたいときはVisualWorks使ってる
納品物以外は全部これ 勝手に変換はタチが悪い
tclでファイル読み込んでデータを加工して出力してると連続のはずのデータがたまに飛ぶ
??と思ってよく見ると、データがたまたま整数になってると整数の割り算になって結果が狂うということがあった。
これを避けるには結局明示的な変換が必要でだったら最初からそういう仕様でよい ■ このスレッドは過去ログ倉庫に格納されています