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

レス数が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/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はほとんど話題に出てないけど残しておくの?
2022/04/17(日) 18:52:19.55ID:KG26dcth
>>988
個人的にはマイナー言語は残して、少しでも注目を得られればと思っている。
2022/04/17(日) 19:39:25.03ID:xE2XgYmS
なんでお前が勝手に決めてるンだ
2022/04/17(日) 19:59:35.43ID:HtOTcTar
っていうか実質話題はGo vs Rustになってるんだからそれでいいのでは?
2022/04/17(日) 20:37:58.47ID:KG26dcth
>>990
マイノリティにも配慮した、中々の英断だろ?
2022/04/17(日) 20:38:30.40ID:KG26dcth
>>991
そうかも
2022/04/17(日) 20:40:24.07ID:YkM57FyS
まあこのスレはRust、Go、C++、C#、Javaのスレって感じだな
2022/04/17(日) 20:53:06.77ID:9n8vVUS+
>>986
なにげに876の順にしたのは素晴らしいと思うよ
2022/04/17(日) 21:16:36.68ID:HtOTcTar
>>994
いやいや、C++,C#,Javaは次世代でもないし、GoやRustに比べればすでに完敗してるから入れなくていいだろ
2022/04/17(日) 21:36:04.21ID:YkM57FyS
次世代かどうかはしらんけど、そのへんの言語の話題がなぜか多いんよ
2022/04/17(日) 21:40:35.44ID:98II7f1E
その三つを基準にして比較検討していくんだから話題に出ない方がおかしい
2022/04/17(日) 22:20:42.76ID:sABjwZnn
いっそのこと1.0がリリースされてる言語は対象外にしよう
2022/04/17(日) 22:31:30.13ID:xE2XgYmS
1000ならPHP大復活時代でルースターズを蹂躙レイプする
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 26日 19時間 7分 49秒
レス数が1000を超えています。これ以上書き込みはできません。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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