将来性ないプログラミング言語。Delphi含まれず安心

■ このスレッドは過去ログ倉庫に格納されています
2019/08/07(水) 23:22:07.36ID:WK8NJ3/V
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
102デフォルトの名無しさん
垢版 |
2019/08/17(土) 14:42:48.46ID:Ei4AHYpx
Perlに依存してるパッケージが減りつつあるような気がしないでもない
2019/08/17(土) 14:49:37.60ID:1NsbgTmC
>>101 何十回も試行錯誤して、採用するのは一つという世界がわからない?
2019/08/17(土) 15:03:41.31ID:9WAlKegR
何十回も試行錯誤してる。
その間、何十回も読んでいる。
2019/08/17(土) 15:15:18.31ID:vTNy0Ock
perlなんか日本人しか使って無いだろ。
2019/08/17(土) 15:17:27.70ID:9WAlKegR
開発者もたしか日本人だし
2019/08/17(土) 15:54:01.44ID:ljAxaRgk
うちもそうだけど知ってる範囲じゃperlはもう書かせない会社ばっかりだな
108デフォルトの名無しさん
垢版 |
2019/08/17(土) 17:23:42.10ID:uIV5R7Aj
知ったかぶりバカ「perlの開発者は日本人」
2019/08/17(土) 19:14:10.86ID:jPbioeHd
>>106

>>106

>>106
2019/08/17(土) 19:59:20.50ID:CuykVau6
dankogaiを勘違いしたのかな
2019/08/17(土) 20:05:09.05ID:9WAlKegR
まつもとのりゆきで
2019/08/17(土) 20:33:53.76ID:J1PfyEKH
ワロス
2019/08/18(日) 12:43:58.17ID:qCb+YBvS
弱小うんこwebドカタ仕事専用のRoRのシェアが落ちてきたって本当ですか?
2019/08/18(日) 16:14:37.05ID:Rnl9Ujwd
まぁ一番将来性無いのは勉強止めた奴だけどな。派閥抗争ごっこする位なら新しい言語の一つでも覚えりゃいい。
2019/08/18(日) 22:38:17.85ID:+YUWcM9d
保守はしたくないけどプロトタイピングにはいまでも有用
なんだかんだ文句いいながらも使えるひとが多い
2019/08/19(月) 03:04:40.78ID:32wORggh
pythonのインデントでブロック作るのホント嫌い
ちょっとした入力ミスでインデントがズレると死ぬ

あれのせいでワンライナーを半ば強制されてるようなもので
チューニングはしづらいし、可読性は下がる
2019/08/19(月) 03:38:01.34ID:ZZoimR+D
>>116に対する反論。
俺の会社の奴らはインデント矯正されないと
インデントめちゃくちゃにする。
可読性はもっと下がる。誰のせいか?
2019/08/19(月) 04:14:11.27ID:yIThGu8W
普通のプログラミング言語なら push 時にインデントチェックして拒否したり自動整形するようにできる
python みたいなインデントでブロック作る言語はダメね
2019/08/19(月) 12:15:27.59ID:sIPdGD0o
>>117
フォーマッタ使えばよくね???

インデントが狂っても静的チェックでエラー出ないからバグの温床になるし
長くなったコードを改行するときにもインデントが必要になるから区別がつけづらいし
ラムダ式書く場合も内容が複数行に渡る場合は関数内関数を定義する必要が出てきてこれがまた書き難いし読み辛い

インデントブロックは俺も最初は見やすくていいじゃん!って思ってたけど
使い込むうちに不便な側面の方が強くなってきたわ
2019/08/19(月) 12:20:48.74ID:W/U4wDij
インデントでブロックを作るやつはデバッグとか
動作検証したいだけってときに面倒だよね

自分で手書きするときはインデントするし
最終的には綺麗にするんだけど、

一部のコードをコメントアウトしたり
動きがわからんから、一部分抜き出して動きを見たりとか
そういう作業中のじゃまになる。
2019/08/19(月) 15:53:43.94ID:Kn9dUhI/
>>117
emacsならC-c C-qでもいいし他のエディタも整形機能ついてるのあるんじゃないの
pythonはエディタが特化してないとどうしようもない
インデントだけで管理しなきゃいけないってのは悪手だ
2019/08/20(火) 13:44:19.82ID:OPuGzupS
VSCodeでもインデントがズレると色でわかるな
123デフォルトの名無しさん
垢版 |
2019/08/20(火) 17:19:24.55ID:0DHPUJts
経験上、インデント面倒臭いというやつのコードは汚い
124デフォルトの名無しさん
垢版 |
2019/08/20(火) 17:26:59.88ID:OyLrpvkx
何が経験だ当たり前の話じゃねーかw
2019/08/20(火) 17:36:59.00ID:kykP5Tm6
>>123
(上級者は)インデントするのが面倒くさいって言ってるんじゃないからな。
デバッグや動作検証などの一時的なコードまでインデントするのが面倒くさいって言ってるんだからな。
すぐ消すようなコードまでインデントする必要ないし
後で消すときに目立つようにあえてインデントを崩してる。
2019/08/20(火) 19:53:51.24ID:aOYKq+L4
インデントと論理構造の一致が不要という人もいるだろうし
コードはすべて大文字で書くべきという人もいるだろう
コーディング規約の一貫性は不要だという人もいれば
レビューは工数の無駄だという人もいるだろう
そういうレベルのお話よね
2019/08/20(火) 21:02:08.67ID:QsJJjC9V
インデントとカッコで同じ情報を表してるんだから冗長なのは事実
知能が高いと冗長さは単純に無駄だが、低脳ドカタには冗長さも必要ってことだよ
2019/08/20(火) 21:25:25.48ID:ar+OimNr
インデントとカッコが同じ情報だと思ったことがPythonの敗因だろうね
インデントっていうのはスペースと同じなんだよ。

コンピュータからすれば意味はなくて、
人間が見やすくなるように人間のためのもの

意味がある情報だけで言えば、スペースは要らない
カンマや演算子の前後にスペースは要らない
関数の引数だって,のみスペースは禁止にしたってよかったはずだ。

でもそうしなかったのは関数の引数を区切るカンマと
見やすくするためのスペースは別物だから

Pythonは見やすくするためのインデントを意味と共通化してしまったから
見やすい記述に制限ができてしまった。
2019/08/20(火) 21:26:58.31ID:nmT/z9v6
>>127
上級者様やぞ
口を慎め
2019/08/20(火) 21:45:07.95ID:lOKfo+mN
>>128
それに、ブロックの終了の記号が何にも無いのは明確さがなく、
ケアレスミスの元となる。レイアウト的なものは、空行を入れたり
少し違う業や関数からコピーして来たりするときにずれ易い。
ずれたときにブロックの終了記号があると助かる。

>>127
逆に助長性は安全性に繋がりやすい。例えば、C/C++の最後のセミコロン";"
は無くてもコンパイラがその都度推定できる可能性はあるが、
有った方が確実だから有る。Rubyなんかは無くても分かるときはなくて良い
仕様ではあるが、大規模プログラムではそれが見つけにくいバグの原因に
なる可能性がある。
2019/08/20(火) 21:47:25.12ID:aHZAynoR
>>127
文系の人は、lexical(字面)的な読解力が頭の良さだと勘違いしやすいが、
そうではない。字面ではなく本質的なところが重要。字面的な判別能力
を自慢にしてる人は、短いが見にくい変な書き方をして結局本人も間違う。
2019/08/20(火) 21:50:09.95ID:aHZAynoR
>>127
ちなみにおいらは、客観的に見て低脳ドカタではない。
高IQ、高学歴、高実績で評価は高い。
2019/08/20(火) 21:50:17.64ID:Y189B2BT
理系の短いは実行する行が少ない(定義文や空行は含めない)
文系の短いは書く量が少ない
2019/08/20(火) 21:58:55.64ID:aHZAynoR
>>128
C/C++において、関数の引数を二行以上に渡って書きたいような時、
インデントと意味は、有る意味ではずれる。しかし、それぞれの引数の後ろに
一つずつコメントを書きたいようなときにはそのの書き方は見やすい :
func(
  aaa,   // これこれこういう意味。
  bbb,  // TYPE *pXxxx
);

また、ターゲット別に #if #endif などでコードを変えたいような場合は、
インデントの関係がどうしても崩れる場合があるし、その場その場で
マクロに対するインデントを重視するか、C/C++言語に対するインデントを
重視するか、どちらがいいかは一概には決まらない。

#if xxx
TYPE aaa;
・・・
#else
・・・
#endif

↑TYPE aaa; の部分に、#if ブロックのインデントを付けた方がいい場合と、むしろ、その場の
C/C++ のブロック宣言としてのインデントの位置を維持した方が分かりやすい場合とが有り、
どちらも優劣付けがたい。
2019/08/20(火) 22:01:08.71ID:aHZAynoR
>>133
文系の人は、文章そのものの雰囲気的な美しさに美学を見出す傾向がある。
芥川龍之介の「表現技巧(?)」が素晴らしいとか、○○氏の詩的表現は
真似できないとか。

しかし、それをプログラミングに持ち込んで欲しくない。ここでもそういう
表面的な美しさばかりにとらわれている人が多い気がする。
2019/08/20(火) 22:03:19.33ID:Y189B2BT
上級者はコードの書き方に拘って
見やすいように、意味が伝わりやすいよに書くんだが

低級者は無意味に見づらく書く(本人は見づらいことがわかってない。そこまで気が回らない)


そういう低級者にインデントのみ、書き方を押し付けることが出来るが
どちらにしろ低級者なので、クソコードにしかならない
低級者には補助輪程度の役目にしかならず、上級者には足かせとなる
2019/08/20(火) 22:25:28.11ID:lOKfo+mN
そういえば、プログラミングにおいても>>134の場合のように、関数の
引数を折り返して書く場合、どの程度引数の前に空白やタブを入れるべきかは
人間が見たときの「見易さ」で決まる。それは関数名 func 部分の長さに
よっても変化し得る。そして、何が美しいかは「美学」「美術」の領域に
入ってきてしまう可能性がある。だからプログラミングは芸術とも言われる。

その意味で、インデントに論理的な意味を与えすぎると、芸術的な
美しさが得られなくなってしまう可能性は高い。
2019/08/21(水) 00:14:46.18ID:4KDWfLCz
なっがーい
139デフォルトの名無しさん
垢版 |
2019/08/21(水) 03:52:34.88ID:jDiMObB6
ここでやる話じゃないな
140デフォルトの名無しさん
垢版 |
2019/08/21(水) 08:31:45.31ID:DZT6aay9
まるで自分が将来性が無いって言われてるように感じてしまって必死なんよ
2019/08/21(水) 09:51:04.12ID:qaUTxdbB
年収3000万超えてからが上級やぞ
それまでは低脳ドカタ
2019/08/21(水) 10:05:29.87ID:qaUTxdbB
>>133
数式嫌いでCOBOL好きそう
143デフォルトの名無しさん
垢版 |
2019/08/21(水) 15:30:57.62ID:zqKd/4GT
インデントで話を散らかしてRubyの将来性>>1から意識を逸らしたいだけw
2019/08/21(水) 21:17:39.84ID:6KJaGV9b
デルファイは言語じゃ無くて、IMEの名前じゃね?
あれ、中身言語はpascalだよな?
2019/08/21(水) 21:18:46.14ID:6KJaGV9b
あ、IDEだったw
2019/08/22(木) 08:32:58.59ID:oZbspsSs
Rubyに将来性はないし、使ってる99.999%は低脳ドカタ
2019/08/22(木) 10:20:23.28ID:jM8tCXZ0
なに調べ?
2019/08/22(木) 18:29:20.75ID:k0K3XsJW
pythonはインデントガーとか言ってる人ってメモ帳でソースでも書いてるの?w
2019/08/22(木) 18:37:54.75ID:jM8tCXZ0
メモ帳以外で書いたら、勝手にインデント揃えてくれるんか?
例えば、他から持ってきた複数行のコードをコピペしたときに

インデント=ブロック構造というコードの意味になってるんだから
勝手に整形してくれるわけないな
2019/08/22(木) 19:38:57.27ID:m0vVP3/5
ペーストしたとこからの相対でインデント維持しないん?
2019/08/22(木) 20:38:59.79ID:oZbspsSs
低脳ドカタの低脳っぷりが痛々しい
2019/08/22(木) 20:44:04.33ID:k0K3XsJW
>>149
秀丸とか使ってそう(^^;;
とりまVSCodeかatom入れようよ(^-^;
2019/08/22(木) 20:46:16.23ID:UjFyi9ja
>>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

に勝手にインデント揃えてくれるエディタなんて思いつかん

そもそも実現可能なのか?やる方法があるにしても、どこからコピペを
開始して、どこに移動してから貼り付けるとかパッと出てくる?
2019/08/22(木) 20:57:13.82ID:oZbspsSs
コピー先の最初の行のインデントの深さだけ決めてコピーしたら
残りの行のインデントも自動的に揃えられるだろ
2019/08/22(木) 21:01:44.67ID:427lMmCu
>>153

ちょっとは最新のエディタも触ってみようぜ
2019/08/22(木) 21:21:37.03ID:UjFyi9ja
>>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
2019/08/22(木) 21:41:54.61ID:7rqSp147
短形選択
158デフォルトの名無しさん
垢版 |
2019/08/22(木) 22:42:18.87ID:6Stfv2pG
>>153>>156
ここでPythonのインデント云々って言ってる人はこんなレベルだったの?
2019/08/22(木) 22:57:39.80ID:bojKrn/j
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でも日本語でバグらないかどうか、知りたい
2019/08/22(木) 23:13:01.91ID:6ipmKUpK
>>156
自分の周りにコピペプログラマーがいないからちょっとびっくりなんだけど
こういうレベルの人が世の中に結構いたりするの?!
2019/08/22(木) 23:16:34.88ID:427lMmCu
>>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")
        }
2019/08/23(金) 00:10:56.91ID:CiIDRu0Q
>>161
自動整形すればいいじゃない
2019/08/23(金) 06:25:16.83ID:c+DDVuzX
それpythonも同じだよね(^◇^;)
164デフォルトの名無しさん
垢版 |
2019/08/23(金) 16:14:51.02ID:Zx6EO+xk
敢えてやるなら
def repeat_msg(msg, repeat=3):
  for i in range(repeat):
    print msg
  if True:
   print foo
   print bar
こんな感じ
コピペの方がインデント浅い時とか長い時は別関数造って呼ぶ
2019/08/23(金) 19:10:11.80ID:T9lcDaB4
とりあえずpythonで書き慣れると他の言語が鬱陶しくて仕方ないねインデントに限らず
プログラミング言語の完成形に近いと思うわ
恒常的に動くシステムのソフトとかでもない限りpython一択だと思うわ
あ、GUIアプリは知らん
2019/08/23(金) 21:18:32.44ID:rm/zRxER
わい氏、第1得意言語haskell、第2得意言語ruby、無事死亡
2019/08/23(金) 23:11:02.04ID:LHN2h0YB
pythonの何が完成系なんだよ。
変数のスコープがあいまいだし、
参照かコピーかあいまいだし、
ライブラリと同じ名前のファイル名つけたら悲惨だし

結局あいまいだからちょっと複雑なものを作るとうんざりする。
完成されたライブラリにちょっとパラメータ変えて流すには便利ってだけの代物
2019/08/23(金) 23:12:37.22ID:LHN2h0YB
>>160
ある機能を他でも使うから関数化しようかなーとかあるわけだが
2019/08/23(金) 23:27:33.46ID:DZMYtvox
>>167
ちょっと複雑なものなんてお前には作れないだろ
モッサリ鈍重ウンコwebサイトは複雑でもなんでもないからね?
170デフォルトの名無しさん
垢版 |
2019/08/24(土) 01:31:25.28ID:dr4oD/Ll
あいまいではないな。
仕様どおりだ。
仕様が変だという話かな。
2019/08/24(土) 02:31:50.50ID:EUnYMN/C
>>166
そこでElixirですよ
2019/08/24(土) 02:50:57.03ID:GJDIT1Pg
えり草はえるwww
2019/08/24(土) 03:26:11.93ID:dA7WdXyV
Python, Ruby っぽい、Julia

関数型なら、
Haskell っぽい、Elm。
Ruby っぽい、Elixir
2019/08/24(土) 09:22:56.58ID:+nNIwdjo
>>167
まあ無能な奴は厳しい規則設けて檻に入れとくしか飼いならす方法ないもんなあ
プログラミング言語も同じで草
175デフォルトの名無しさん
垢版 |
2019/08/24(土) 11:08:29.62ID:Xzjcg9me
Pythonは30行以内でささっと書くスクリプトには向いている。
それより長大なプログラムを書くには苦行でしかない。
2019/08/24(土) 16:27:38.27ID:UCGlm4uz
年収3000万以上の開発者がPythonでAIを書き(もちろん30行以上ある)、
年収300万以下の低脳ドカタは世界の片隅で30行しか書けないとブツブツ言っている
2019/08/24(土) 20:07:40.46ID:CCZKsteH
3000行くらいでささっと、やね
10kL以下ならpythonだわ
2019/08/25(日) 09:20:51.79ID:X4RuV2IV
10年くらい前、Lightweight languageとかって盛り上がってた時は型に縛られはないから、早く楽しくプログラミングできるとか言ってたのにのね
2019/08/25(日) 10:37:56.39ID:mHrxK1Ru
>>178
まあ間違いじゃない。問題は歴史が浅く、大規模のアプリが作られてなかったことによる
結局大規模になって、作った人じゃない人がメンテナンスするようになると
途端に、型がないと大変ということに気づく。
180デフォルトの名無しさん
垢版 |
2019/08/25(日) 13:11:06.11ID:7aRWz3XD
先人の智慧や蓄積を無視して
若いのが俺カッケーした結果がこれか
2019/08/25(日) 17:01:15.19ID:Pi5/biNH
10年前の静的型といえばJava全盛期じゃん
そりゃ動的型の方が良いってなるよ
今と比べちゃいかんでしょ
2019/08/25(日) 17:16:09.82ID:90IJS4ej
C++もいちいち型指定するのめんどくさいってことでauto乱発だしな
2019/08/25(日) 17:42:45.70ID:ZgHIB80V
>>180
知恵や蓄積の結果生まれたpythonの方が優位なのは明らかなのに先人様がそれを認めない結果がこれなんやで
2019/08/25(日) 19:26:07.76ID:eKl51C89
結局、ケースバイケースなんだよな
Javaが向いてるケースがあれば、Rubyが向いてるケースもある
それ理解せずLL最高とか言ってたのが10年前のはてなブックマークのホットエントリー
2019/08/25(日) 19:27:05.70ID:eKl51C89
10年前に書かれたRubyを保守しろと言われたら悲惨だよね
186デフォルトの名無しさん
垢版 |
2019/08/26(月) 14:28:40.88ID:T0vtMl8v
XMLとかJSONとかテキストベースの無駄構造データ受け渡しを流行らせた糞も反省汁
2019/08/26(月) 15:11:42.69ID:MTH0kZ3a
何が無駄構造なのかわからん
CSVより便利だし
2019/08/26(月) 15:17:30.43ID:NWn2YSWg
バイナリでバッチリ敷き詰めて
更に圧縮したら効率がいいだろ!
189デフォルトの名無しさん
垢版 |
2019/08/28(水) 20:35:03.80ID:MglkklAk
SwiftはObjective-Cよりも先に死ぬよ
2019/08/28(水) 20:37:38.22ID:D19a7vMP
さすがにそれは無理がある
SwiftUI出てきたあたりで切り離してもおかしくない頃合い
依存してる領域もあるけどなんとかするだろ
191デフォルトの名無しさん
垢版 |
2019/08/31(土) 12:30:17.20ID:Fb8dqZh5
>>144
俺はObjectPascal言語の開発環境の名前がDelphiだと思ってるけど
違うかな
2019/08/31(土) 13:16:35.92ID:bRBeXa4d
もともとObjectPascalという言語だったが
魔改造し過ぎでもはやObjectPascalとは呼べなくなったから、
これからはDelphi言語だーって公式が言ったけど、
やっぱObjectPascalに戻すわーって言ったのがDelphiが使われなくなった頃
193デフォルトの名無しさん
垢版 |
2019/09/01(日) 00:58:31.40ID:sYwYgS29
>>191
IMEじゃなくてIDEな
わざとだろうけど
194デフォルトの名無しさん
垢版 |
2019/09/01(日) 00:59:58.12ID:sYwYgS29
>>192
Delphiと呼ばれる前の
ObjectPascalのIDEは
Paradoxとか言ってなかったか
195デフォルトの名無しさん
垢版 |
2019/09/01(日) 18:21:44.99ID:e9O8VIl4
誰かPHPは安泰だと言ってください
2019/09/01(日) 20:46:04.56ID:c46EKG3t
ぺチプ
2019/09/01(日) 20:55:12.89ID:Cv4S4gQH
ぺチプマ〜ン
2019/09/01(日) 23:22:15.91ID:gzRpR9B4
>>167
python のスコープなんてもっとも単純だろうよ。
>ライブラリと同じ名前のファイル名つけたら悲惨だし
こんなバカなことで困る輩はいない。

コピーと参照のあいまいさはまあわかるが。
199デフォルトの名無しさん
垢版 |
2019/09/02(月) 19:50:56.03ID:bydNTO5I
Paradoxはデスクトップデータベース
Accessみたいなもん
2019/09/03(火) 08:09:58.85ID:lcX2YhCp
>>194
ParadoxはDB
201デフォルトの名無しさん
垢版 |
2019/09/03(火) 10:05:46.27ID:gWEsYspA
ParadoxはObjectPAL
ObjectPascalの前身かこれ?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況