プログラミング言語 Rust 3 [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2017/05/21(日) 14:04:29.55ID:9L9dm7b/
Mozillaがリリースした、プログラミング言語「Rust」について語るスレです。

http://www.rust-lang.org/
https://github.com/rust-lang/rust

Servo
https://servo.org/
https://github.com/servo/servo

◆前スレ
プログラミング言語 Rust 2
http://echo.2ch.net/test/read.cgi/tech/1478023960
8デフォルトの名無しさん
垢版 |
2017/05/23(火) 18:18:14.39ID:fz0kg0Hd
>>7
プログラミング言語いくつか知ってれば他の言語なんて多少解説読むだけですぐ理解できるぜ、みたいなのをぶち壊してくる言語よね
慣れれば生産性が高いのは分かるけど、チーム開発にはとても適用できない……
2017/05/23(火) 19:11:09.91ID:1Q8iu32F
C++ std::unique_ptrを使い倒してればすぐ理解できるぜ?(白目
事細かなエコシステムや凶悪なボローチェッカは慣れたら愛すべき馬鹿として愛せるけど、他人に勧めるものじゃないよな
まぁRustじゃないといけないケースってのは少ないから、好事家の中で流行ってれば良いと思って使ってる
2017/05/23(火) 20:03:50.20ID:n1SS9OPs
俺はコーディング規約でガチガチにしないと使えないC++よりチーム開発に向いてると思うけど。
2017/05/23(火) 20:09:42.82ID:tcrYM/HP
コンパイルが通らない時に、相談できる人がチームに居ればね
2017/05/23(火) 20:44:41.89ID:XgxPLO7Q
alexcrichton、いつもissueのopen/closeの操作をミスりまくってて笑う
2017/05/23(火) 21:52:49.96ID:sJY6yDAU
Rustをある程度緩く使えるライブラリ…
Rust使う意味あるか?
2017/05/24(水) 00:09:41.07ID:8Z1z+g0P
Rustのborrow checkerに勝てるレベルのやつはそもそもRustなんて使わずにC++使ってりゃいいしな。
2017/05/24(水) 00:22:10.07ID:6yksy5B1
いや、気を使うの面倒だからborrow checkerに任せたいわw
どうせC++でもValgrindなりそれに類するツールでチェックするわけだし、言語仕様で縛ってくれるのは楽だ
2017/05/24(水) 00:37:53.57ID:D5tT9Iz6
C++でチーム開発したことないやつもいそうだしな。
C++から来たやつと、関数型とかから来たやつで感想も違うみたいだし
2017/05/24(水) 00:50:41.45ID:pRDkrxzx
If it compiles, it worksが概ね成立するのは魅力だよな
2017/05/24(水) 06:11:06.95ID:+DimD/vP
tokioが代表だけど、tokeiとかhayakuとか、謎日本語名crateが幾つか有るのは
中二病開発者が多いから?
2017/05/24(水) 09:10:30.78ID:Sn2/MSJK
外人の日本語タトゥー的な…
hayakuは「端役」にも読めるが
2017/05/24(水) 10:35:29.34ID:MMUszNj4
>>18
Rust使ってるクズなんて中二病患者とモジカス工作員だけなんだから妥当だろ。
2017/05/24(水) 13:06:58.00ID:1nGlF3E4
メンヘラは特定の言葉に執着があるからNGしやすい。
2017/05/24(水) 20:37:17.74ID:pRDkrxzx
kuchikiなんてのもあるな
あとコミッターに@BurntSushiとか@mitsuhikoみたいなのがいる
@briansmithはアイコンが「ス」だし
2017/05/24(水) 20:56:34.76ID:+DimD/vP
ところで、Boxをboxキーワードにする件はどうなったん?
2017/05/24(水) 21:30:26.80ID:FIIUGQKl
そんなどうでもいいことよりクロージャがまともに使えない問題とトレイト境界の問題(これら結構重なる部分あるけど)はいつ解決するの?
2017/05/26(金) 08:01:17.73ID:1zFjO363
昨日のRust入門者の集いは、50人ぐらい集まったのか
少し前のScalaぐらいの盛り上がりある?
2017/05/26(金) 10:35:47.30ID:f/19a4oq
やっぱ本当に入門したいやつは勝手にずかずか入ってくるよなー
2017/05/26(金) 10:36:07.10ID:f/19a4oq
わざわざ集まって入ることない
2017/05/26(金) 11:11:47.24ID:lITgTAsg
こんなにRustは欠陥品っていうのは広まってるのにまだ始めようとするかわいそうな騙された人がいるのか。
それとも流行らないことに業を煮やしたモジラさんが雇ったサクラか?
2017/05/26(金) 11:40:08.52ID:PvbJKgcc
こいつ同じことずっと言ってんな。糖質はしつこい。
2017/05/26(金) 11:41:35.93ID:lITgTAsg
>>29
Rustなんてありがたがる信者に糖質言われるならむしろ本望だな。
2017/05/26(金) 11:50:37.94ID:lITgTAsg
少なくとも俺が、Rustはまともに物がつくれないコンセプト崩壊の欠陥言語、っていってることについて、このスレの住民はなんら答を出していない。
ベンチマークの結果が良いとか悪いとか以前にまともにコードが書けない言語のどこがC++の後継言語だ?
C++で書いたバグのないコード(Valgrindチェック済み)をRustに移植してもコンパイルが通らないって時点でお察しなんだよ。
2017/05/26(金) 11:53:07.95ID:fYEpqUiH
そしてこの顔真っ赤である
2017/05/26(金) 12:02:24.21ID:xRlJL6be
だって、このスレにいる奴はRustコードが書けるから答えも何もないし・・・

なんでこんなに長いこと必死にRust否定を続けてるのか分からんかったけど
自分がRustコードが書けなくて、第二のコードが書けなくて傷つく奴が出ないように、という正義感からだったのか

プログラミング言語の学習コストなんてあってないようなものだ、みたいなプライドを打ち砕かれた可哀想な子なんだな
34
垢版 |
2017/05/26(金) 12:08:45.87ID:uOeVRBLK
>>31
cppで書いたコードはcppで使えばいいのでは?
俺が書いたcのコードは、'a'bつけたのと、ポインタインクリメントやめたくらいで割と素直に移植できたけど。
バグが無いってのは、今まで俺事故ったことねえって言う奴くらい、どう正しいか証明するの大変な事だよ。
そういえば、valgrind、スタック変数の境界チェックできるようになったの?
2017/05/26(金) 12:30:25.06ID:8eg+gckK
>>34
experimentalだがSGCheckが使えるな。
36
垢版 |
2017/05/26(金) 13:22:40.22ID:uOeVRBLK
>>35
おお、そうなのか。
ちゃんと動けばそこそこ良さそうと思ってたし、見てみようかな。
クソ遅いのももう少しマシになってくれてれば良いんだが…。あれも知らんだけなのかな。
2017/05/26(金) 19:23:44.69ID:JcK0B0rB
キチガイにもやさしいここの住民好き
38デフォルトの名無しさん
垢版 |
2017/05/27(土) 02:31:59.03ID:SSsXXMTN
公式HPでシステムプログラミング言語、って書いてあるのが読めないで、なんちゃってアプリ作ろうとしたんじゃないかな?
2017/05/27(土) 02:59:10.15ID:CDShuPAP
結構、Webアプリを作ろうとしてる人が多い感
2017/05/27(土) 03:03:11.16ID:lxNSMSh+
サーバーサイドRustとか素敵やん
2017/05/27(土) 06:03:06.96ID:2NZ16S+U
web系だとライブラリのマッシュアップって感じが普通だからライブラリ不足が不満になるのかな。
2017/05/27(土) 06:48:55.16ID:3w92Yrys
それ以前に、コンパイルの通るコードが書けなくて挫折してるんでしょ
サーバフロントエンドのマッシュアップだとHTTP I/Fで特に支障は出ないと思うぞ
バックエンドだとライブラリ側がC I/Fが提供してるならさほど面倒はなかった
2017/05/27(土) 06:55:11.90ID:41DJlv/7
Rustって最近知ったんだけどどういう目的で使うのがよろしいの?
2017/05/27(土) 09:42:53.30ID:CDShuPAP
JavaScriptしか知りませんって人が入門してるらしいけど、全員投げ出すと思うわ。
C/C++経験者しか残らんだろう。
2017/05/27(土) 10:07:55.57ID:2NZ16S+U
第二言語がRustだったら絶望するよな
第5言語くらいじゃないと
2017/05/27(土) 10:09:10.22ID:2NZ16S+U
>>43
C++に不満なときこれで置き換える。
ネットワーク系だったらGoのがいいかも。
2017/05/27(土) 10:11:29.38ID:mjlYjLQ6
guiアプリ作る時はrust的にはやっぱxul使うの?
2017/05/27(土) 10:15:34.31ID:CDShuPAP
PHPerをScalaに大ジャンプさせようとして大やけどしたチャットワークの悲劇に学ぶべき。
2017/05/27(土) 10:45:11.15ID:41DJlv/7
>>46
なるほどー
RubyとかPythonのC拡張の部分をRustで置き換えたりあるいは機械学習や分散処理らへんでRustが有用にはならないだろうか
2017/05/27(土) 11:04:04.64ID:1jZ1Mh3o
GUIと言えば、GTKの中の人がRustに乗り気で、既に一部置換が始まってるというのが面白い
2017/05/27(土) 12:44:23.89ID:SP+5JLSB
Valgrindといっても、あれが扱えるのはメモリ関連だけで一般のuse-after-freeは対処できるわけではないよなあ
例えば`hyper::server::response::Response`のようないわゆるsession type(https://deterministic.space/elegant-apis-in-rust.html#session-types)も、
ownershipのおかげで安全性を静的に保証できている
2017/05/27(土) 13:58:45.99ID:V3R8pPgP
お前らってRust以外に何の言語を使ってるの?
2017/05/27(土) 14:32:09.69ID:Nnf9Y/EU
>>52
C++, python
むかしLisp
かじったのはruby, java , javascript, objective-c
54デフォルトの名無しさん
垢版 |
2017/05/27(土) 15:51:40.38ID:gV6nh4ij
>>43
OSとかミドルウェアとかそういうの向け。あと組み込み。
ネイティブの速度が必要だけど、CとかC++やって苦労した人向け。
2017/05/27(土) 17:16:38.79ID:3w92Yrys
C/C++で苦労した人は更に苦労すると思う(名推理

前スレで上がってたベンチマーク、C/C++勢がキレて追い抜いてるかと思ったけど更新されずなのな
http://benchmarksgame.alioth.debian.org/u64q/performance.php?test=knucleotide

流行ってるベンチマークでもないから別にそれ自体はおかしくないんだけど
他のRustで最適化されてないヤツはどうなのよと実装し直してみたら普通にトップスコアが出るな
この程度の簡易な処理だと性能良い言語だなぁと見直した、実用時に活かせるかは別問題だけど
2017/05/27(土) 17:37:25.20ID:2NZ16S+U
>>55
同程度のエキスパートのチームだとして、やっぱC++より苦労するかなぁ?
2017/05/27(土) 21:36:50.13ID:0kaExwmN
ベンチマークの順位はそこまで気にならないが、そこのコードでrayonとfutures使っているのを見て触らないとと思った
2017/05/28(日) 01:37:36.40ID:CAN6hjyr
>>52
Java,C/C++,C#
政治的、宗教的な意味合いはなく只で使えるものを探していた結果
2017/05/28(日) 02:34:25.88ID:/SKdZHom
>>52
C、Ruby
それと使い込んではいないけどJava、JavaScript、Common Lisp
2017/05/28(日) 19:51:05.68ID:vySQPNuk
焼寿司さんが日本語ツイートにリプ付けてるの見かけたけど、日本語分かるんかな?
Google翻訳かな
2017/05/28(日) 22:41:06.63ID:9sPyoVkk
>>55
一番上のjavaがまだ最適化の余地があるのが気になる
けどガシガシ書きたくないからあんなもんだろうな。
62デフォルトの名無しさん
垢版 |
2017/05/29(月) 08:05:31.35ID:aIZDJONO
スカイプはどんな言語で作られてるの?
2017/05/29(月) 13:10:22.27ID:yBvsn9Ro
>>53>>58>>59
やっぱりみんな何かしらC系言語の素養はあるのか
2017/05/29(月) 13:24:18.34ID:R8bGfh1Z
LSI C試食版には足を向けて寝れないね
2017/05/29(月) 17:17:49.50ID:XCGSI9yY
うお懐かしいなw
2017/05/29(月) 22:06:22.42ID:kppw5p5H
やはり、better Cなのか
2017/05/29(月) 22:27:54.48ID:hRcE5cRH
better cはgoでしょ
cは関係ない
2017/05/29(月) 23:46:05.71ID:2+2L65e+
ほんとぉ?
2017/05/29(月) 23:49:43.56ID:4qLs+IkO
Goがbetter C……?
2017/05/29(月) 23:59:14.77ID:L9ed4gjc
obj-cやc++の立場は、、、

goがbetter cってのは、rustがbetter cってのと同じくらい不可思議だなw
2017/05/30(火) 03:08:14.82ID:IqZ8KgLG
やはり、better Cなのか
2017/05/30(火) 07:29:11.22ID:f0HoldrK
ごめんGo知らずに適当に言ったわ。
Goはなんなの
2017/05/30(火) 07:58:02.99ID:hxsHc/tN
いやGoスレいけよ
74デフォルトの名無しさん
垢版 |
2017/05/30(火) 10:45:37.44ID:gxWnkgCC
god bless c
2017/05/30(火) 12:54:00.95ID:IWC/1tpu
もうcでいいじゃん
メモリーリークさせる馬鹿に合わせる必要なんかなかったんだよ
2017/05/30(火) 13:03:48.77ID:cUShYlMs
>>75
Rustはバカには使えない
バカはCを使わせてもまともには書けない
Cをまともに書けるならRustなんて不自由な言語はなくても問題ない

よってRustは不要
2017/05/30(火) 14:53:42.47ID:jV/RuSAE
長年C/C++やってた連中は始めから眼中になかっただろ。
Swiftしかり、新しいものに飛びつくのはいつも歴史を学ばない若い連中。
2017/05/30(火) 15:46:56.49ID:zOXcPiC1
C/C++より(なぜか)性能良いから、borrow checkerに勝てるなら良い言語だがなぁ
問題は、若者も老害もborrow checkerに勝てないから使えない
学習曲線の改善を今年の目標に掲げてたはずだけど、どうにもなる気がしねぇwww
2017/05/30(火) 16:21:27.71ID:3rG32g2E
2chなんて年寄りしか見てないからここの意見なんて全くあてにならんよなー
ここ見てない若い人のほうがメインなユーザーだろうし
80デフォルトの名無しさん
垢版 |
2017/05/30(火) 16:41:31.26ID:xHXzQ5Z2
>>79
ワイ16歳
2017/05/30(火) 17:25:14.81ID:KVzaPBtZ
俺15だし
2017/05/30(火) 17:52:40.62ID:cUShYlMs
>>78
C++はどっこい、Cにはまだ及ばない。
2017/05/30(火) 18:35:38.41ID:PZbBKLpD
ちゆ 12歳(おっさん感

Cに比べりゃC++, Rustはランタイムの分のオーバーヘッドが絶対的に存在するから
そこを引き合いに出すならどうやっても勝てんしな
実用性のあるコードを書いた時の性能はどうだかねぇ
84デフォルトの名無しさん
垢版 |
2017/05/30(火) 18:40:13.37ID:xHXzQ5Z2
>>83
性能はそこまで気にしなくても良い気もする
最近のPC高性能だし
ネイティブでメモリ管理出来るってだけでそこらへんの言語よりは速いし
2017/05/30(火) 19:06:48.72ID:2KYBWSXG
学習曲線の改善って何をするんだ?
2017/05/30(火) 19:07:46.03ID:reqRzc0L
まあプロダクションでのパフォーマンスはServoとQuantumが示してくれるでしょ

>>85
Non-lexical lifetime以外よく分からない
2017/05/30(火) 20:40:00.58ID:XaqH7Fx5
Cで書くには煩雑なものを相手にしたときに、
実際Rustがどんだけの結果を出せるか、
というのがみんなの興味だろう。

ちっさいサンプルプログラムみたいなんをコンパイルして、
それでベンチマークテストして結果比較したって、
そんなもんは誰も嬉しくはないし驚きも無い。

オーバーヘッドの一点のみで語りつくせるんなら、
バイナリエディタと機械語でOSだって作れる。
それはオーバーヘッドの無い、最速最軽量だろうね。
2017/05/30(火) 21:45:35.31ID:NwY5b/Ke
librsvgの移植が、中規模コードの実践例として参考になりそう
https://people.gnome.org/~federico/news-2016-10.html#25
2017/05/30(火) 21:54:14.25ID:re3tYRpg
free挿入するよりcopying gcの方が速いし
無駄なオーバーヘッドなくそうとしたらlibstdの実装みたいに
raw pointerだらけになるからそんなこと気にしなくていいよ。

jitのおかげでロジックそのまま書いても速いなんてことが
起こらないから将来、最適化は必要になるだろうけど過剰な最適化は必要ない。

抽象度の高いまま低レベルな領域でも書けるからいいんだよ。
javaだと整数型の型を揃えようとするからバイト列の操作とか苦手だけどrustはそういうのないのよ。
90デフォルトの名無しさん
垢版 |
2017/05/30(火) 23:04:32.49ID:xHXzQ5Z2
>>87
ベンチマークって基本そういう系多いからね
ファイルアクセスとか考えたら速度ほとんど変わらないのに
2017/05/31(水) 01:36:02.83ID:/NtvNHJE
ベンチマークはオーバーヘッドが無視できるよう(特定)処理を大量回数ループさせてる
という意味が分かってないから、そういうこと言っちゃうんだろうねぇ

もっと勉強しろ、若造どもが
2017/05/31(水) 01:44:33.93ID:8BExUPKw
オーダが同じでもオブジェクト生成や関数呼び出し等々のオーバーヘッドは係数部分に効いてるんやで
2017/05/31(水) 02:15:05.25ID:/NtvNHJE
Rustはzero-cost abstractionだのコンパイラによる関数最適化でC言語とさして変わりないんやで^^
VMだと係数にもろに影響するやがな
2017/05/31(水) 09:42:28.64ID:OQ401SVi
>>91
だから若造はいないんだって。
Cとか言い出す老人しかいないの。
2017/05/31(水) 09:46:53.00ID:Kcuasmjx
>>94
>>78

若者も老人もいるんだよなぁ
2017/05/31(水) 12:19:43.42ID:WjnJkecI
本当のおっさんや老害はRustスレなんてこないだろ。
ワイは偉そうに古参風を吹かせてた>>77だがまだビンビンの学生やで。
2017/05/31(水) 12:22:43.65ID:FbhpYS54
ワイ周辺だと学生はそれなりに見る
よくはてなブログに書いてる人も学生でしょ
2017/05/31(水) 12:27:53.72ID:xgELgHJk
そりゃ、おっさんの大多数は新しい言語が嫌いだからね
2017/05/31(水) 12:38:49.91ID:WjnJkecI
それな
2017/05/31(水) 12:55:16.23ID:IqYufuRr
年取ると守りに入ってしまっていかんな
2017/05/31(水) 18:15:57.61ID:xNKvRsij
まだ2chは若者に人気だったのか
slackとかじゃないの
102デフォルトの名無しさん
垢版 |
2017/05/31(水) 23:54:17.31ID:H5pMSxMU
>>83
ランタイムなんてリンクしなけりゃ済む話
2017/05/31(水) 23:59:15.13ID:8BExUPKw
no_stdか……
2017/06/01(木) 10:52:08.55ID:AXJF1Amn
それランタイムじゃなくライブラリ
no_mangleでマングル名消してもランタイムはリンク解消できないだろうねぇ
2017/06/01(木) 12:56:34.33ID:5JdW7IAM
#![no_std]すればliballocとlibpanic_unwindはlibstdは勝手に外れなかったっけ?
libcoreはliballocにリンクしていないし#![needs_panic_runtime]もしてない
2017/06/01(木) 13:33:54.90ID:TwQiYK+8
Rustランタイムって具体的には何してくれるの?
ファイナライザ呼び出しとパニック時のスタックダンプ表示?
2017/06/01(木) 13:39:40.72ID:AXJF1Amn
ttps://doc.rust-lang.org/book/no-stdlib.html
最小限のmain関数だけにしても、C言語+clangでビルドするバイナリ相当までは削れんなぁ

Rustマングル名の解読とか、C言語へのブリッジなんかも入ってるんでない
str型はno_stdでも使えるようだから、この辺の一部プリミティブ型のラッピングもしてるかな
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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