次世代言語24 Go Nim Rust Swift Kotlin TypeScript

レス数が950を超えています。1000を超えると書き込みができなくなります。
1デフォルトの名無しさん
垢版 |
2022/03/22(火) 03:23:41.60ID:ZDHdo9X7
スレタイ以外の言語もok

前スレ
次世代言語23 Go Nim Rust Swift Kotlin TypeScript
https://mevius.5ch.net/test/read.cgi/tech/1638086359/
2022/04/14(木) 12:22:45.14ID:Z089SWEo
ScalaがGoやKotlin,Rustより上なのか
Scala3になっていろいろ改善されてるみたいだし、まだ復活の目ある?
2022/04/14(木) 12:46:43.91ID:NlVTXqiH
ない
Scalaはビッグデータ分野のOSSでの採用が多かったから既存コードベースだけは無駄にデカい
そんな状況で非互換メジャーアップデートしたらどうなるかわかるだろ?
2022/04/14(木) 17:49:33.35ID:kkKc/VMN
なるほどPython3
2022/04/14(木) 18:41:17.09ID:lzoOecS7
本当の意味での次世代って存在するのかな?

ロシアが威嚇のために日本海に向けてミサイル撃ってるけど
他の国にも威嚇してエスカレートして核戦争始まって文明が滅ぶかもしれないw
2022/04/14(木) 20:30:53.20ID:06ANIdH6
人類がそこまでの存在だったってだけの話よ
2022/04/14(木) 21:31:28.88ID:dmYzyL87
次世代言語って、今流行してる言語を置き換えうる別の言語ってことじゃないの?
新しい概念やらが採用されてるかどうかは関係なく、政治的な理由で決まることもある気がする
まあそういうのよりは、新しい概念が採り入れられてる言語について語ったほうが楽しいだろうけど
2022/04/14(木) 21:39:45.95ID:IQzKdxCE
Rustは次世代を担う方の素養はないと思う。C->C++->Rustと進んでこないとRustの目指している世界観が理解できないと思うのに、コードは命名規則に_を使うのか思えば大文字小文字でFn/fnで意味付けをしてたり、’staticみたいなコメント?と思える雑な定義が多い。理解してない子が勢いで作ったの?って感じがするので広める前に整理が必要だよね。ISOをとったらどうかな?
2022/04/14(木) 21:50:00.79ID:Hy4f2CwM
rust嫌いなのはよくわかったけど理由付けがしょーもなさすぎる
2022/04/14(木) 21:52:41.11ID:9EW5Ge1x
>>894
JavaScript→TypeScript→Rust と普通にステップアップしたよ
とても使いやすいよ
2022/04/14(木) 23:13:24.53ID:BxOaTkYv
Cすっ飛ばしてRust来たけど気に入ってるよ
2022/04/14(木) 23:45:37.43ID:fXS8nb7A
Rustは十分に抽象化されているため
Cの生ポインタの知識なく効率よく使える
むしろ生ポインタは安全でないため足を引っ張る知識
2022/04/15(金) 00:26:17.76ID:/A+hDicd
なにいってんだこいつ
2022/04/15(金) 01:12:09.01ID:eIDEFdSW
バカが安易に生ポインタ書き込みしないようにunsafeしないと使えないようになってるので大丈夫
99%以上の用途ではそんな低レベルなものは必要とせずとも大丈夫なようにRustはできている
ほとんどの人は実験目的以外で用いることがないだろう
2022/04/15(金) 05:59:27.92ID:cD2+6A2l
unsafeがあるから安心安全
2022/04/15(金) 07:12:23.73ID:+y13V7Hk
生ポインタが分からぬのに使えてるとか笑
2022/04/15(金) 08:32:18.47ID:nO4hXcis
CもC++もRustも使えるが
確かにRustでは他の多くの言語と同じく生ポインタを使って読み書きすることはないしその概念も不要だな
普通の言語ならばそのような抽象度の低いものを持ち出さずともプログラミングできるべきなのだろう
2022/04/15(金) 08:48:44.24ID:JbDqxHHs
生ポインタとかエッチ
2022/04/15(金) 09:01:04.46ID:/A+hDicd
参照の同一性比較するためにas *const _したことないんか?
2022/04/15(金) 09:08:45.73ID:OmyTBDUu
人間関係というか変な人を排除するのにRustっていい例があります。
うちの会社です。
C++使える人は仕事はできる(昔からやってるだけですが)んですが、人格に問題があり、とにかく後輩にはほとんど教えず
なにか聞かれると自分で調べろとか、そういうなにかと偉そうな人たちが多いです。
そんな中Rustのプロジェクトが立ち上がるとそれまでC++使ってた偉そうな人たちが見事にいないプロジェクトになり、非常に風通しがよいプロジェクトになっております。
お互いつらい目にあってきたからその反動ですごくお互いに親切に教え合う雰囲気。
逆にC++のプロジェクトは偉そうな人たちと社内で最も使えない人たちだけが残りまして廃墟になっておりますw
2022/04/15(金) 10:13:34.70ID:y5QQqJ15
理系の比較的頭の良い人が多い割に非生産的な仕事の多い分野は、非協力的で常にイライラしてる人が多い印象
オンプレのインフラとかC++なんかはまさにそうだね
2022/04/15(金) 12:27:18.13ID:4kmZAVVg
なんでも敵視するRust新兵隔離所、Rustの話しかしてないからRustに誘導されたら、真のRust使いが怒り出した
2022/04/15(金) 12:30:40.34ID:NclNSxVV
>>908
そして別言語の話しだすと「優れてるマン」が噛みついてくるw
2022/04/15(金) 12:44:28.39ID:k/yGxJzN
>>905
as * const は safe では
デリファレンスが unsafe なだけでポインタの比較はsafe
2022/04/15(金) 13:05:03.59ID:/A+hDicd
>>910
そうだよ
でも生ポインタというかアドレスが何か分かっていないとこのキャストが意味するところは理解できないでしょうし
それゆえ「生ポインタの知識は不要だし有害」は過言という主張です
2022/04/15(金) 13:17:15.21ID:k/yGxJzN
>>911
そりゃそうだね
2022/04/15(金) 16:25:15.14ID:ozQCMa2m
メロスは激怒した
必ず、かの 邪智暴虐 ( じゃちぼうぎゃく ) のRUSTを除かなければならぬと決意した。
メロスには生ポイントがわからぬ
2022/04/15(金) 16:35:16.39ID:UYa93qbN
生ポインタの知識は無くてもプログラムは書けるし、動くし、困るまでは、知らなくても良いんじゃないの?
2022/04/15(金) 17:23:21.88ID:k/yGxJzN
一皮むけば生ポインタ出てくるのはどの言語でもそうだしことさらrustだけ取り上げる理由もないとは思うけど
ポインタの知識が有害というのは言い過ぎ
2022/04/15(金) 18:39:04.53ID:ozQCMa2m
でもおまえdouble freeじゃん
2022/04/15(金) 23:07:48.60ID:w/iGrZ8Q
Rustの話は専用スレ立ててそっちでやれよ
2022/04/15(金) 23:46:20.49ID:qbrugoRS
>>917
Rustの話ではないぞ
double freeはRustでは起きない
Rustは全自動解放だからプログラマーが気にすることはない
2022/04/16(土) 02:03:12.36ID:d9aHN/wl
いまさらdouble freeが問題になる言語ある?
920デフォルトの名無しさん
垢版 |
2022/04/16(土) 02:10:47.90ID:IW60Azsc
c++はstd::unique_ptrで使い回すようにしたららだいぶスッキリしたよ。
継ぎはぎ故の古い環境やオレオレツールが動くのも良い。
でもどっかでカバっと大規模に整理して欲しいと思ったりもする。
2022/04/16(土) 06:37:22.84ID:Ynxy6YP5
pythonってそんなに世の中で使われているかな?
単にエンジニアが好きと思ってるだけのような気がしなくもないのだが・・・
俺は嫌いだけどw
2022/04/16(土) 08:14:27.45ID:EdW3+kRq
寧ろエンジニア以外に受けているのでは?
2022/04/16(土) 08:17:27.30ID:1ORd5NzP
そのうち小学生の必須科目になりそう
2022/04/16(土) 09:04:49.24ID:teyv0kaV
「 全自動解放だからプログラマーが気にすることはない 」そんな訳ない、Rustでも自分でカスタムアロケータ書けば気にする
2022/04/16(土) 12:15:02.24ID:cvz/IVkr
Pythonの何でもかんでもベクトル演算縛り他の言語始めるとき悪影響だよな
2022/04/16(土) 16:00:51.37ID:HzTWzZVk
pascal じゃなく python ?
pascal は言語理論上の基礎の上に載ったしっかりした文法だが python のような出鱈目文法が今はウけるのか?

世も末としかいいようがない…
2022/04/16(土) 16:23:00.38ID:7TENBOhS
LL(1)がそんなすごい話だっけ?
928デフォルトの名無しさん
垢版 |
2022/04/16(土) 17:15:40.83ID:Tmn9GDW2
>>923
ベーシックよりはマシかと。
2022/04/16(土) 18:18:48.48ID:HzTWzZVk
>>927
そのような基盤にすら載らない言語が跋扈するなんて世も末かと
2022/04/16(土) 18:23:19.78ID:rBRO4aI9
>>929
意味解析しないと構文解析できないCとかいう言語が跋扈してる時点ですでに世界は終わっているよ
2022/04/16(土) 18:58:19.37ID:d9aHN/wl
クククLispが世界を支配する日は近いぞ
2022/04/16(土) 19:01:07.55ID:Ynxy6YP5
>>931
残念ながら・・・
そろそろC++++とか出ないのか?w
あ、C#かw
2022/04/16(土) 19:42:31.25ID:6xv6jabx
>>924
嘘つき
アロケータを自作しようが標準のを使おうが
そのことには全く影響されずに自動で解放されるぞ
2022/04/16(土) 20:32:01.07ID:G/CUq+lM
じゃあなんでRustは学習コストと難易度が高いのですか?
2022/04/16(土) 20:51:06.94ID:D0HU54VV
Rustに手を出してみたが特に難しいことは無かったな
むしろ洗練されたわかりやすい言語だと感じた
その上で必要ならば細かいことにも手が行き届く感じ
2022/04/16(土) 22:40:46.66ID:hJU9sS6g
洗練と言うのは一人だけだからわかりやすい
2022/04/16(土) 23:21:57.42ID:3G5k9Hnh
>>933
嘘つき、deallocで実際に解放しなければ解放されるわけないだろ、死ね詭弁論者
2022/04/16(土) 23:59:23.94ID:rBRO4aI9
>>937
それ、「freeを呼べばメモリが解放される」って主張にたいして
「メモリ解放しない独自実装のfreeならメモリリークする」って反論するようなもので
論理的には正しいけど意味のない主張だよね
2022/04/16(土) 23:59:50.03ID:G/CUq+lM
でも君たちRust書いたとてIT土方のままだよね
2022/04/17(日) 00:34:36.53ID:iAVEey/W
>>937
それは君が理解できていないからそんな主張になる

メモリの解放は3階層ある(GCでない場合)
(1) デストラクタによる解放 ←プログラミング言語の仕様で関係するのはここまで
(2) メモリアロケーターでの解放 ←例えばmallocに対するfreeの内部はここ
(3) OSへのメモリ解放 ←システムコールsbrkはここ

C言語は(1)がないため(2)のfreeをプログラマーが忘れず呼び出す必要がある
C++は(1)のデストラクタの記述と呼び出しにプログラマーの手動が一部残りうる
Rustはプログラマーが何もしなくてよい
2022/04/17(日) 00:45:36.82ID:xE2XgYmS
で?年収は?
2022/04/17(日) 00:46:21.20ID:xE2XgYmS
>>940
それ実質GCじゃん
2022/04/17(日) 00:54:39.19ID:10LdHAnc
>>942
Rustでプログラマーがメモリ解放しなくてよい点はGC言語に似ているけど
GC言語はガベージ(=ごみ)が溜まっていって後でガベージコレクションを行なう必要があるのに対して
Rustでは即座に自動的にメモリ解放されるためC言語と同様に省メモリかつ高速というメリットがある
2022/04/17(日) 01:09:59.47ID:xE2XgYmS
>>943
細かく解放のオバヘッド乗るとか最悪じゃん
2022/04/17(日) 01:16:07.56ID:3NrKz2t8
>>944
CとC++とRust がその同じ方法だけど
いずれも超高速だよ
つまりGCするよりも即座に解放するのが正解と結論が昔から出ているよ
2022/04/17(日) 07:19:14.82ID:98II7f1E
>>944
普通はシステムコールする専用のスレッドを作ってそこで全部やるからオーバーヘッド無いよ
2022/04/17(日) 08:46:12.09ID:xE2XgYmS
嘘乙
システムコールだろうがGCallだろうが、CPUとメモリ使うから一緒だぞ
これだから物理を知らないソフト屋は
2022/04/17(日) 09:02:05.09ID:98II7f1E
バックグラウンドのシステムコールが問題になるような環境だと、それこそガベコレ動かしてる余裕など無いのでは?
2022/04/17(日) 09:50:03.49ID:MVCPXkPs
>>943
>>549
2022/04/17(日) 10:25:23.27ID:fCmr+50W
freeでsbrk走るとか本気で言ってるのか
2022/04/17(日) 10:28:31.82ID:sABjwZnn
>>944
どういう状況を想定するかにもよるけど、解放可能なオブジェクトを解放せずどこかに貯めておいて、
後からまとめて解放するような実装もできるよ
明示的に書かないといけないからちょっとめんどくさいが
2022/04/17(日) 10:33:33.77ID:fCmr+50W
解放可能なオブジェクトを解放せず後からまとめて解放するような実装を明示的に書く

それはもうGCなのでは?
2022/04/17(日) 10:44:39.16ID:JSPiPQVg
自分でやるかシステムに任せるかで違うと思うよ

自分でやるとバグが発生する可能性がある
2022/04/17(日) 11:09:06.02ID:wPmjz1Mj
現実にGC言語方式よりもC/C++/Rust 方式の方が圧倒的に速くて省メモリであると判明している
ただしCでは手動でメモリ解放しなければならないデメリットがありミスも多かった
そこでC++ではメモリ解放を一部自動化した
さらにRustではメモリ解放を完全自動化してミスもゼロとなった
2022/04/17(日) 11:10:30.80ID:aLAyt8HE
まるでメモリ解放以外のプログラムのミスは無いみたいな感じだよな
2022/04/17(日) 11:11:47.17ID:fCmr+50W
Rustコンパイラはメモリリークが発生しないことは保証しません
2022/04/17(日) 11:16:42.17ID:kfDvzEft
セキュリティで問題となる多くはメモリ関連が起因している
2022/04/17(日) 11:17:28.40ID:zOCvtZTK
>>956
そんなの当たり前じゃん
一般的にコンパイル時点でメモリリークを検出することは論理的に不可能
だからRustコンパイラはメモリリークが発生しないことを保証できない
これはRustの問題ではない
2022/04/17(日) 11:19:15.00ID:98II7f1E
わざとメモリリークさせているのか事故ってるだけなのかコンパイラは区別できないからな
2022/04/17(日) 11:29:57.34ID:MOkVW5s5
Rustでは循環参照以外ではメモリリークを起こさないことをコンパイラが保証できる
さらにRustでは循環参照をプログラマーが意図的に起こさない限り勝手に作られることはない
そのためプログラマーの意図せぬ循環参照は起きずメモリリークも起きない

現実問題としては長らくRustプログラミングしてきて実験テスト目的以外で循環参照を扱ったことは一度もない
2022/04/17(日) 12:30:05.08ID:Do/bMUQD
顔真っ赤になってこういう事を書いてくる知能の無さそうな奴と仕事するのが嫌だ
2022/04/17(日) 12:32:19.63ID:sABjwZnn
>>952
tracing GCみたいな大げさなものでなくても、解法対象オブジェクトをVecに入れておいて適当なタイミングでVecごとdropするみたいなことはできる
シンプルだからバグの入り込む余地は少ないと思うけど、あらゆるケースに対応しようとするともう少し複雑な仕組みが必要かもね

>>960
いつもrust擁護してるけど、知識不足のせいか言葉遣いが雑なせいなのか、突っ込みどころ多すぎて逆効果になってる
循環参照以外でも Box::leak などでメモリリークは起こせるよ
2022/04/17(日) 13:18:48.86ID:6DAoI3Fa
>>962
おまえバカだろ
プログラマーが意図的にしないとメモリリークは起きないという話の場へ
Box::leakでメモリリークを起こせるという主張はキチガイ
2022/04/17(日) 13:31:15.61ID:sABjwZnn
>>963
よく読んで
>>960の主張は以下
1. Rust では循環参照以外ではメモリリークを起こさないことを保証できる
2. 循環参照はプログラマーが意図的に起こさない限り起きない
Box::leakは1の反例
プログラマが意図的にメモリリークを起こさない限りメモリリークしないなんて主張については何も言っていない
2022/04/17(日) 13:37:41.71ID:51iJikl9
結局プログラマーが意図的に起こさないとRustではメモリリーク起きないんでしょ?
この件でRust叩きは無理があるんじゃないかしら
2022/04/17(日) 13:39:19.65ID:JSPiPQVg
速くて省メモリなんて目指してない人が大多数なんだよ

システム書く人ならそれ目指すけど
2022/04/17(日) 13:47:11.48ID:li53nBOw
プログラミング言語は3つに分類できる感じ?
CとC++ ←省メモリ高速だがメモリ解放でミスると危険
GC言語 ←省メモリ高速ではないがメモリ解放は自動で気にしなくていい
Rust ←省メモリ高速だがメモリ解放は自動で気にしなくていい
2022/04/17(日) 14:13:22.09ID:kfDvzEft
なんかすげぇ素人がまぎれこんできたなw
長文タレ流し君の方がよかったかもw
2022/04/17(日) 14:21:16.64ID:JSPiPQVg
Rust ←省メモリ高速だがメモリ解放は自動で気にしなくていいが 独自の戒律があり常にそれを気にしなくてはならない
2022/04/17(日) 14:22:13.65ID:66PDnQQD
>>967
その通り
IT大手各社が珍しく連合してRust推ししているのはRustがプログラミング言語の革命児だから
2022/04/17(日) 14:51:06.13ID:CSWPaG5E
自演くっさ
2022/04/17(日) 14:54:33.00ID:sABjwZnn
Rustはバランスの良い言語だと思うけど万人向けではないからなぁ
真の意味で万人向けの言語なんてそもそも存在するのかは分からんが
2022/04/17(日) 14:57:22.12ID:JSPiPQVg
>>972
俺は嫌いだけどjava辺りだろ
2022/04/17(日) 15:14:44.89ID:uUrNfRmn
JavaよりはRustの方が使いやすくて便利でいいわ
2022/04/17(日) 15:22:20.54ID:JSPiPQVg
自演と単発w
2022/04/17(日) 15:45:36.98ID:kfDvzEft
>>970
Rust推しは電通がからんでるような気がするんだが
2022/04/17(日) 15:53:33.91ID:2ONtHvJl
つまりMicrosoft・Amazon・Google・Facebook(Meta)など大手IT各社が一緒になってRust Foundationを立ち上げたのも裏で電通が暗躍?
2022/04/17(日) 15:57:37.21ID:98II7f1E
wikipediaのMozilla Foundationのページ見てたら理事会に日本人居るの見つけたんだけど
この人経歴が訳アリすぎるなw
2022/04/17(日) 16:06:11.24ID:kfDvzEft
>>977
だろうな
2022/04/17(日) 16:29:36.29ID:gswFN8hB
>>977
広告代理店にそこまで影響力あるわけ無いだろう
2022/04/17(日) 16:36:29.33ID:HtOTcTar
>>980
電通の背後には政府とアメリカがいる
2022/04/17(日) 17:06:13.05ID:FHJUK9+v
つまり宇宙人との密約で動くアメリカ政府と
ネオコンの陰謀ということか
2022/04/17(日) 17:21:02.73ID:w9UOnqdK
ネトウヨ「電通の陰謀」
2022/04/17(日) 17:37:31.56ID:gswFN8hB
電通陰謀論は左右問わないね
ネトウヨはマスコミ批判に絡めて電通を黒幕にするし、パヨクは自民党が選挙で勝つことの裏に電通がいることにしたがる
2022/04/17(日) 17:52:20.84ID:KG26dcth
次スレ立てます
2022/04/17(日) 17:52:57.09ID:KG26dcth
https://mevius.5ch.net/test/read.cgi/tech/1650185555/
987デフォルトの名無しさん
垢版 |
2022/04/17(日) 18:36:45.87ID:KG26dcth
>>986

TypeScript Swift Go Kotlin 辺りは次世代感があまりないので、タイトルから外したかったが、とりあえずそのままにしておいた。
2022/04/17(日) 18:37:21.30ID:gswFN8hB
Nimはほとんど話題に出てないけど残しておくの?
レス数が950を超えています。1000を超えると書き込みができなくなります。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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