プログラミング言語 Rust 4 at TECH
プログラミング言語 Rust 4 - 暇つぶし2ch262:デフォルトの名無しさん
17/11/25 13:39:30.15 alyoZhJV.net
GUIはElectronみたいな方向に行ったほうがいいのかね

263:デフォルトの名無しさん
17/11/25 13:42:04.43 kotn+Cy/.net
Blink を Servo で置き換えた Selectron 来い

264:デフォルトの名無しさん
17/11/25 14:09:00.72 OgtFvRib.net
>>238
バカが調子に乗って新しい言語使って書き散らしたコードをメンテする経験をすればわかるようになるよ。

265:デフォルトの名無しさん
17/11/25 14:37:28.91 mxSpQEHX.net
言語じゃなくてそのバカをdisれよw

266:デフォルトの名無しさん
17/11/25 14:41:23.39 P27kKgvI.net
個人的に検討するGUIフレームワーク
簡単な奴→MS HTAやElectronなど。Webで使われている技術で実装できる
凝った奴→wxWidgets。高機能かつ高速、大抵の物は作れるが罠もある。もしくはAPI直叩き
昔結構悩んだけど結局上記あたりに落ち着いた。当時検討した物
GTK→LGPLウザイ。パフォーマンスが良くない(最近は良くなった?)
Tk→低機能で作れない物がある。パフォーマンスが良くない
Qt→LGPLウザイ。パフォーマンスが良くない
JavaFX→パフォーマンスは悪くないがJREの初期化(≒起動)に時間がかかる
>>256
バカに無計画にコードを書かせているバカが問題なのであって言語が悪いわけではないだろう

267:あ
17/11/25 14:57:49.91 UfRnLBpA.net
>>249
良いだろ。というか、それらを止めるのは現実的な方法では不可能。イエスマンを集めて楽しくワイワイ()になるぞ。
記名制のフォーラムでも本気の荒らしや本気のアスペや本気の無自覚は幾らでも居たんだから。

268:デフォルトの名無しさん
17/11/25 17:24:23.29 oLmjygAJ.net
hyperってシングルスレッドなんなね
ベンチマークも結果がバラバラでよう分からん

269:デフォルトの名無しさん
17/11/25 21:02:37.96 OgtFvRib.net
>>258
まあそうなんだが、
言語によって弾けるとする linus の意見には賛同するところはある。

270:デフォルトの名無しさん
17/11/25 21:09:22.03 3zoUsuFj.net
>>256
そういうやつって言語関係なく台無しにしてるんじゃね?

271:デフォルトの名無しさん
17/11/25 21:22:20.34 LOgLWN1+.net
>>262
確かに、そういう奴ってどの言語使っても大体はクソコードを書くだろうな。
ただし、ベストプラクティスを教えてくれるやつがいるかどうかで差はあると思う。
新興言語はベストプラクティスを教えてくれる奴が極端に少ないから、余計にひどくなる。
対して、普及している言語は周りにベストプラクティスを教えてくれる人がいれば
バカでもある程度はマシなコードを書く(書くことを強制される)んじゃないかな。

272:デフォルトの名無しさん
17/11/25 21:32:32.35 OgtFvRib.net
>>262
関係ないんだが
「関係ない」ということを理解せずに無駄に新しい言語推しで
現場嵐してくることが問題。まずはてめーのコードを直せと。

273:デフォルトの名無しさん
17/11/25 21:34:35.12 WRH8mdq5.net
そのバカと言語disに走るID:OgtFvRibは同レベルだよ。

274:デフォルトの名無しさん
17/11/25 23:18:19.74 3zoUsuFj.net
>>265
単語の断片に反応してるだけの思い付き厨だろうな。

275:デフォルトの名無しさん
17/11/26 00:38:40.95 FoFKguj9.net
>>264
それって人事が無能なだけじゃあ。まぁ日本にそういう会社は多いんだけどな

276:デフォルトの名無しさん
17/11/26 01:44:59.31 prdTxomD.net
いうほど言語disに走ってる訳ではないけどね。
ただ言語disに走る気持ちは理解できるってこと。
他の言語disパターンとしては単純に自分があんまり知らんから
理解する時間の節約のための dis かな。

277:デフォルトの名無しさん
17/11/26 02:00:15.38 zvEdo3BX.net
rustは組み込み向けの新言語になると思ったけど、全然流行らんな
早くC++から脱したいのに

278:デフォルトの名無しさん
17/11/26 02:37:39.20 8lbYkPLC.net
昔の一部の組み込み系では製品の安定を求めるために
コンパイラのバージョンアップすら信用しない(=古いバージョンを使用し続ける)ことがあったなー

279:デフォルトの名無しさん
17/11/26 02:50:50.14 FcDi9KjV.net
『"(Rustが売りにしてるような部分に関して)良いコード"を書きたいと思っているh人』にとっては素晴らしい言語となる可能性の高い言語がRust
『"良いコード"の定義が違う人』にとっては
『"良いコード"を書きたいと思っているわけではない人』にとっては

280:デフォルトの名無しさん
17/11/26 02:52:44.07 .net
Rustがコケると得するのは誰か

281:デフォルトの名無しさん
17/11/26 03:23:13.42 FoFKguj9.net
>>269
目的より手段を優先する日本じゃ無理だろw
どうしてもやりたいなら自分で立ち上がるしかないんじゃないか

282:デフォルトの名無しさん
17/11/26 03:57:56.67 2SXqucAT.net
>>273
rustが使いたいからその仕事を立ち上げるって明らかに手段と目的が入れ替わってますよね

283:デフォルトの名無しさん
17/11/26 09:03:05.51 d0SJzNDY.net
>>272
世界中のプログラマ
モジラのクソ提灯で言語未満の自称言語がひとつ減る訳だから

284:デフォルトの名無しさん
17/11/26 09:09:55.82 4gwTKbSY.net
この糖質「提灯」って言葉に執着してるね。

285:デフォルトの名無しさん
17/11/26 11:03:05.21 2p4Fc6MR.net
>>276
執着というより単に語彙力がないだけかと。
コイツいつも大体同じようなことしか言ってないよ。

286:デフォルトの名無しさん
17/11/26 11:11:18.98 d1Efc0fJ.net
>>263
ガウディ本とかで計算モデルを理解してれば、慣れてるという理由で合わない用途に無理矢理押し込もうとしないんだろうけどね。

287:デフォルトの名無しさん
17/11/26 11:35:06.02 chAORxhD.net
当人は必死だけどすっかり珍獣扱い

288:デフォルトの名無しさん
17/11/26 16:10:47.30 F1AvYoB1.net
少なくともswiftに採用しようとしてる機能を先行実装しているだけでも価値ある

289:デフォルトの名無しさん
17/11/26 22:44:13.85 mC/sVuBh.net
Rustが成功したから真似されたんじゃw
Apple信者さすがの言い草

290:デフォルトの名無しさん
17/11/26 22:54:59.36 hn9uvYDF.net
>>281
成功?成功ってなんだっけ?

291:デフォルトの名無しさん
17/11/26 23:15:44.20 4gwTKbSY.net
Swift の仕様変更と比べると、Rust のアップデートはかなり大人しいよな。

292:デフォルトの名無しさん
17/11/26 23:36:42.57 BDpjXZu3.net
>>282
Rustのメモリ管理の仕組みが破綻してないことを証明しただろ!
しかも実務にも耐えてる
これが成功でないわけがない

293:デフォルトの名無しさん
17/11/27 01:38:36.80 A6Q33Aj/.net
>>284
循環グラフとか動的計画法とか書けない言語のどこが破綻がないのかいってみろ工作員

294:デフォルトの名無しさん
17/11/27 01:55:07.26 .net
RustでDPできないの?

295:デフォルトの名無しさん
17/11/27 02:01:44.73 Kmvld91s.net
出来ない人がいるだけ

296:デフォルトの名無しさん
17/11/27 07:36:56.24 30J1+TRs.net
簡単にwasmコンパイルできる環境が整ってきたな
URLリンク(twitter.com)
今、試したけど、Windowsでも動いた。
cargo-wa は動かんかったけど。

297:デフォルトの名無しさん
17/11/27 16:32:30.04 UGzoAGct.net
このエラーメッセージ、表示されるときと(当該箇所の修正をしていないのに)も関わらず表示されないときがある
Why?
error[E0605]: non-primitive cast: `{integer}` as `f64`
= note: an `as` expression can only be used to convert between primitive typ
es. Consider using the `From` trait

このエラーメッセージが表示されるのは
このエラーメッセージの示す箇所と全然無縁な箇所でコンパイルエラーが出たときに同時に表示される
そしてその他所であるコンパイルエラーを解消するとこのエラーメッセージも同時に消える

298:デフォルトの名無しさん
17/11/27 22:23:59.13 0avMxfTz.net
言語構文とツーリングを改善したRust 1.21
URLリンク(www.infoq.com)

「Rust 1.22」リリース
2017年11月27日17:00
URLリンク(mag.osdn.jp)

299:デフォルトの名無しさん
17/11/27 22:38:51.64 zgUQvI9i.net
>>270
実際、g++ なんかはバージョン違うと相当挙動違うけどね。

300:デフォルトの名無しさん
17/11/28 01:05:16.27 oL6iYiK7.net
>>289 エラー時には情報足りなくてusize等に推論してるから、かなあ
構文チェック -> 型推論&チェック -> ボローチェッカーって順番でエラー出してる感じだけど、
関係無い場所でのエラーのせいでas f64してるローカル変数の型推論が不十分な可能性がある
型推論は重い処理だから何らかの最適化のせいでエラー時の挙動が分からないのではないか

301:デフォルトの名無しさん
17/11/28 01:05:23.35 YEKXo1x2.net
Rustでイミュータブルに拘る人は何なの?ミュータブル使えよ

302:デフォルトの名無しさん
17/11/28 01:26:37.66 9rdMMleK.net
ミュータブルなんて怖いもの使えないよ~><

303:デフォルトの名無しさん
17/11/28 01:38:14.99 YEKXo1x2.net
ミュータブルにする必要のない箇所をイミュータブルにする
基本はミュータブルで使え、ミュータブルしてなかったらコンパイラが教えてくれる、そのときイミュータブルに変更すればいい

304:デフォルトの名無しさん
17/11/28 02:15:45.91 OnNJR7WO.net
ID:YEKXo1x2
完全に頭おかしいな

305:デフォルトの名無しさん
17/11/28 05:26:38.97 9EzjspMa.net
Rustでイミュータブルに拘るのは、TypeScriptで型付けることに拘るようなもん

306:デフォルトの名無しさん
17/11/28 06:36:09.88 oe1VgQrD.net
いミューダブルって、Cellの話をしているの?

307:デフォルトの名無しさん
17/11/28 06:49:49.21 WfYnw+8u.net
最近勉強し始めたんだけど、デフォでイミュータブルなのに思いのほかmutキーワード使う局面が多くて面食らってる。

308:デフォルトの名無しさん
17/11/28 06:56:41.60 9EzjspMa.net
イミュータブルに拘ると、Scalaとかでもそうだが、コピーだらけになる
コピーを恐れてるとイミュータブルを徹底できないよ

309:デフォルトの名無しさん
17/11/28 06:59:54.84 bNHGW3XK.net
コピーってmut並みに最適化してくれんの?

310:デフォルトの名無しさん
17/11/28 07:35:10.58 oe1VgQrD.net
あ、そういうこと。むりやりイミュータブルにする人たちがいるのか

311:デフォルトの名無しさん
17/11/28 09:28:24.80 L9vMnZgT.net
静的型付け初めてなんだけどいきなりRustは敷居高いだろうか

312:デフォルトの名無しさん
17/11/28 10:02:32.22 hv4LFVGU.net
>>300
> イミュータブルに拘ると、コピーだらけになる
> コピーを恐れてるとイミュータブルを徹底できない
例出してみ

313:デフォルトの名無しさん
17/11/28 12:38:41.40 Q+QzpY2X.net
イミュータブルとかメモリを富豪的に使うだけで性能はなんら上がらない、いかにもお偉いさんが机の上だけで考えたクソ手法だろ
なんでFortranやCが現役なのか考えたこともないやつがイミュータブルをもてはやす

314:デフォルトの名無しさん
17/11/28 12:59:41.96 ZfJDlsQ3.net
メモリが富豪的って、それお前の設計が悪いだけやで

315:デフォルトの名無しさん
17/11/28 13:02:27.70 318e3gj2.net
それは言い過ぎだろ
なんでもイミュータブルにするべきとは思ってないが、
並列性が必要なプログラムではイミュータブルは重要視しているよ
並列性が性能に直結しない(難しい)のは残念な話だけど……

316:デフォルトの名無しさん
17/11/28 13:47:27.77 Q+QzpY2X.net
>>306
値変えないならコピーするしかないだろ。それが富豪的でなくてなんなんだ?
>>307
並列計算で必要なのはイミュータビリティじゃなくて、変数スコープ分離と外部依存性の無いアルゴリズムだ
大方MPIすら使ったことないんだろうが、
共有リソースにアクセスしなきゃいけない並列プログラム組んでる時点で
設計が破綻してるとみなせると思うがそこんとこどう考える?

317:デフォルトの名無しさん
17/11/28 14:26:25.75 iQnRQ46Kx
実際には、中卒でも、普通に、戒律壊せるやつがうろついてることを、まず認めろ

318:デフォルトの名無しさん
17/11/28 14:14:02.57 hv4LFVGU.net
このバカ、コンパイラが良きに計らうってことを知らんのか?

319:デフォルトの名無しさん
17/11/28 14:27:41.71 iQnRQ46Kx
いらない仕事するな

320:デフォルトの名無しさん
17/11/28 14:28:34.63 iQnRQ46Kx
バカと、優秀の二元論から解放されろ

321:デフォルトの名無しさん
17/11/28 14:36:10.62 iQnRQ46Kx
大人になると、rustがダメなんだ、と頭ごなしに言ってみたくなるものだなぁ

322:デフォルトの名無しさん
17/11/28 14:26:19.19 GpBjXyhn.net
>>292
thx
なるほど、コンパイル途中でエラーすると一部の推論に失敗してしまうのか

323:デフォルトの名無しさん
17/11/28 14:42:06.12 LCKhcLzq.net
const に異常にこだわるくせに異常に長い関数書く馬鹿は見たことあるな。
その前に関数切り出せと。
たぶん Rust が一般に広まるとボローイングルールをまともに理解できなくて
コンパイルできないから関数に切り出さないバカが増えると思われる。

324:デフォルトの名無しさん
17/11/28 15:17:40.57 .net
イミュータブルにすることでコンパイラによる最適化の余地が増えるんでないの?
ミュータブル派とイミュータブル派の宗教戦争勃発なの?

325:デフォルトの名無しさん
17/11/28 15:25:32.16 Q+QzpY2X.net
コンパイラが善きに計らうって、
つまりconstついてた(mut非指定の)変数がレジスタ割り当ての結果変更され得る最適化が起こるってことか?
さすかにそんな最適化は聞いたこと無いがソースあるのか?
即値展開ならわからんでもないが、それと並列は関係ないし

326:デフォルトの名無しさん
17/11/28 16:00:32.21 lii/QdBe.net
アマゾンでオライ�


327:梶[のProgramming Rust出てるのな アーリー版じゃ無い完全版かな? どうでも良いけど蟹座の俺が心惹かれる表紙



328:デフォルトの名無しさん
17/11/28 16:21:14.75 318e3gj2.net
>>308
「使ったことない」って人を判断したがるのは使ったことを自慢したいから?
ある数学上の問題を高速に解くために 2000年ぐらいにMPI を数ヶ月触ったことある程度で
以降は関わってないけど、それはなんか関係あるのか?
設計が破綻しているかどうかは問題によるだろ
どんなに考えても共有リソースにアクセスしなきゃいけない並列プログラムなんて山ほどある
共有リソースへのアクセス削減なんてみんな取り組んでる
そのための一ツールとしてイミュータビリティは重要な概念だろJK
> 並列計算で必要なのはイミュータビリティじゃなくて、変数スコープ分離と外部依存性の無いアルゴリズムだ
「重要視」と言ってるのに「必要」と解釈するのか……
変数スコープ分離という用語は知らん

329:デフォルトの名無しさん
17/11/28 18:02:39.24 wSmX/jVF.net
>>318
kindle版の話か
紙版を注文しちゃってるんだが

330:デフォルトの名無しさん
17/11/28 18:17:27.07 oL6iYiK7.net
ガーガー言うほど文句が出るもんでも、全力擁護すべきもんでもないと思うがね>デフォルトでimmutable
Haskellほどやり方が変わるわけでもない、C/C++のconstより明快、letとvarで分けるほど使い心地が違うものにはならない、
URLリンク(rust-lang-ja.github.io)
↑にあるようなBoxを使って大きい構造体を関数に渡すのはRustじゃ悪手ってとこだけ知ってればいい

331:デフォルトの名無しさん
17/11/28 18:18:12.38 Q+QzpY2X.net
>>319
MPIは不変性は並列化に必ずしも必要じゃないって話の例に出しただけだから、
さわった上で不変性が必要って主張するならまあそうなんだろう
データを不変にして触るノードの分だけコピーすりゃそりゃデータ競合は起きないだろうが、
その分ノードへの転送量だってかかるし、メモリも食う
だから富豪的で、額面上の並列度は上がっても性能には寄与しないと言ってる
俺が知らないだけでもっと良い最適化が不変変数にかかるなら完全に俺が無知晒したでめでたしなんだが

332:デフォルトの名無しさん
17/11/28 20:36:19.23 nHLuJ5vk.net
業務のDBとかででっかいBeanやテーブルさわってるとImmutableこだわると死ぬ気がする
ライブラリレベルだとImmutableすごいよさそうなんだが

333:デフォルトの名無しさん
17/11/28 20:40:51.18 7DSslbhb.net
immutableがいいのはソースの可読性が高まるのと、マルチスレッド化したときにリソースアクセスに問題ないのが保証できることでしょう。バグらなない自信があるなら効率を求めてmutableにするがよろし。

334:デフォルトの名無しさん
17/11/28 21:07:28.65 LCKhcLzq.net
mut にするのもそこまで困難な言語設定ってわけでもないし、
デフォルトが immutable でもいいんじゃねとは思う。
まあ大規模に作ったことはないからその際の困難はわからんけど、そこまで問題にならんのでは?

335:デフォルトの名無しさん
17/11/28 21:37:26.40 RsLfLMGU.net
let mutって書くのめんどくせーしvar

336:デフォルトの名無しさん
17/11/28 21:37:34.07 RsLfLMGU.net
追加してほしい

337:デフォルトの名無しさん
17/11/28 22:58:48.40 91xy27Pm.net
mutにするのをめんどくさくするというのが
let mut構文を採用した理由なので
varはよっぽど何かない限り入らないと思う

338:デフォルトの名無しさん
17/11/29 00:16:55.36 ZRmpNQ2i.net
Haskellのイミュータブルは永続データ構造?参照の使いまわし?
Rustのイミュータブルは?コピーしないと使いまわせない?

339:デフォルトの名無しさん
17/11/29 00:58:38.85 RLTBNHC0.net
wasmに出力するのって、依存ライブラリも全部pure Rustじゃないとダメなの?

340:デフォルトの名無しさん
17/11/29 03


341::28:58.51 ID:wq9Dycsx.net



342:デフォルトの名無しさん
17/11/29 12:04:01.36 TbD0G3jq.net
try catchみたいな構文検討されていたような

343:デフォルトの名無しさん
17/11/29 19:35:23.16 PZaIONIl.net
Rustを叩いている奴ってミラーレスカメラを叩いている一眼レフカメラ信奉者と同類に見える
大抵の場合は合理的な方が最終的に選択されるけどな

344:デフォルトの名無しさん
17/11/29 20:42:06.07 FCGUeU3g.net
mutable変数扱うなバーカ、というメッセージだと思ってる
必要なら再宣言させるようにして人為バグを減らそうという魂胆は分かるぞ(Javaのfinal教徒感

345:デフォルトの名無しさん
17/11/29 20:50:40.91 wq9Dycsx.net
BufReaderとかReadするStringとかにもmut必要何だからmut禁止とか無理じゃね?
不要なmutだったらワーニング出るでし、必要だったらコンパイルエラーになるでしょ
必要な形で使えば良いだけなのに一体何を議論してるんだ?
ミュータブルが気に入らないならhaskellおすすめ

346:デフォルトの名無しさん
17/11/29 22:01:09.26 pXSSowmn.net
Readした結果はmutableでいいのにlet mutと書かなければならんの面倒
人によってはletで再宣言するのかな

347:デフォルトの名無しさん
17/11/30 01:36:34.69 zpCxrqzF.net
例えばさ
mutな変数1つ宣言してそこに足し上げていくのと、
非mutな計算結果同士を足して新しい非mutな計算結果を作るのと
素朴に考えれば前者の方が省リソースだよな
別にその程度コンパイラの最適化やレジスタ割り当てでどうとでもなるだろうとも思うが

348:デフォルトの名無しさん
17/11/30 02:16:29.28 ypA28Khv.net
URLリンク(qiita.com)
これ見たんだけど、なんでwinがlet mut winじゃないんだろうって不思議に思った。
let win = gtk::ApplicationWindow::new(&app);
win.set_title("Vanilla Text");
で、コードを調べてみたら、こんな感じにFFIを呼んでるだけだから、
概念的にはオブジェクトを変更してるけどRust的にはmutが要らないという仕組みらしい。
ちょっと違和感無い?
fn set_title(&self, title: &str) {
unsafe {
ffi::gtk_window_set_title(self.to_glib_none().0, title.to_glib_none().0);
}
}

349:デフォルトの名無しさん
17/11/30 02:51:13.41 AHSKxIeg.net
ポインタの先がどう変更されようが、ポインタを持ってるだけの側は不変。

350:デフォルトの名無しさん
17/11/30 03:27:18.42 NyMSxVXi.net
gtkはgoのほうが簡単

351:デフォルトの名無しさん
17/11/30 07:37:17.88 YOUdxrbO.net
Cellもしらんのか

352:デフォルトの名無しさん
17/11/30 13:33:26.57 2d5TEUTF.net
Rust的な設計の指針というかコツみたいのって無いですかね…
勉強のつもりで外部のCのライブラリとの間に入るちっちゃなFFIのラッパーを書いてみたんですが、Cの感覚で書く->コンパイラに怒られてあーなるほど修正ってのを繰り返してとりあえずは動くようになったんだけど
何をするにも
let foo = xxx ;
{
let bar = foo.xxx() ;
bar.yyy() ;
}
{
let baz = foo.zzz() ;
baz.www() ;
}
{
let bar = foo.xxx() ;
bar.yyy() ;
}
みたいに書かないといけなくて書いた本人でも「何やねんこのウンコ!」ってなってる(´・ω・`)
(Rustがって意味じゃなくて自分の書いたものがって意味で)

353:デフォルトの名無しさん
17/11/30 15:21:22.37 AHSKxIeg.net
どんなエラー出してそんな醜いコード書いてるのかを説明してくれないと。

354:デフォルトの名無しさん
17/11/30 19:20:57.05 dqSyxXgg.net
>>342
RustがRustで書かれてるのだからRustのリポジトリのコードを読んで参考にすれば勉強になるのでは?
URLリンク(github.com)

355:デフォルトの名無しさん
17/11/30 19:27:22.21 uu2PxLG/.net
>>342
cと触れる部分はしょうがないんじゃないの?
その何回も触ってる部分をcで書いてインターフェイスを最小化した後で
rust から呼び出す方が正解なんじゃないかね。

356:デフォルトの名無しさん
17/12/01 00:02:21.38 9zBEgLMI.net
Rustに限らず他言語で書かれたライブラリを利用するときは呼び出し元言語の作法に適合するように改修しないと使いにくいことが多いような

357:デフォルトの名無しさん
17/12/01 00:53:10.98 +mBQRpP6.net
>>342
> Rust的な設計の指針というかコツみたいのって無いですかね…
私も知りたいです!

358:デフォルトの名無しさん
17/12/01 18:20:32.47 MEq6f57k.net
>>342 見た感じFoo::xxx : &mut Self -> BarとかFoo::zzz: &mut Self -> bazとなっているのでbarやbazが生きてるとfooにアクセスできないのが直近の原因だと思うけど、
xxxやzzzが本当にFooの変更を伴わないといけないのかを考えないといけない
CellやRefCellを使ってinterior mutabilityを導入したらFoo::xxx: &Self -> Barというメソッドにできる可能性がある
まあ実際のソースがどんなもんなのか知らないから適当だけど

359:デフォルトの名無しさん
17/12/02 18:50:17.68 LUcOy7p3.net
URLリンク(doc.rust-lang.org)
japaneseってrust作成者らって日本語好きなの?

360:デフォルトの名無しさん
17/12/02 19:17:25.64 XMmE+FVV.net
トーキョー、サムライ、ハラキリ、ゲイシャ!

361:デフォルトの名無しさん
17/12/02 21:21:37.22 nhUA9ni6.net
>>349
公式Twitterアカウントをフォローしてみれば、リツイートに含まれるアニメ画像の多さで分かるだろ

362:デフォルトの名無しさん
17/12/02 21:26:24.08 .net
ジャパニメーション

363:デフォルトの名無しさん
17/12/02 23:06:36.11 LUcOy7p3.net
プログラマ=アニメオタクの構図は海外でもデフォか

364:デフォルトの名無しさん
17/12/02 23:25:28.54 IvGxcnlE.net
アニメに限らずエンジニアのオタク率は高い

365:デフォルトの名無しさん
17/12/03 02:23:51.05 o8sHMMD+.net
そもそもエンジニアの時点でPCオタみたいなもんだろ

366:デフォルトの名無しさん
17/12/03 15:14:02.84 nF9LHZwo.net
標準ライブラリAPIリファレンス見てるけど難しいなぁ。

367:デフォルトの名無しさん
17/12/04 20:49:12.68 Guj0xD4V.net
map: HashMap<String, usize>をメンバーに持つ構造体Fooを作りHashMap::getをラップするメソッドを定義したいんだけど、
型表記をどう書けばStringとstrの両方を受け取れるようになれるの?

368:デフォルトの名無しさん
17/12/04 20:51:25.15 Guj0xD4V.net
自己解決。AsRef<str>を使えば良かった

369:デフォルトの名無しさん
17/12/05 00:26:24.15 9T1+J47W.net
panic!で終わらすのでなくErr()を返してエラー時の挙動は呼び出し側に任せる・・・?

370:デフォルトの名無しさん
17/12/05 01:46:51.82 Z65eXqg0.net
get で使うなら AsRef じゃなくて Borrow

371:デフォルトの名無しさん
17/12/05 08:09:29.16 qtUVw02h.net
>>360 こういうことかURLリンク(play.rust-lang.org)
こんなの行けるんだな。doc見てもよう分からんかったありがとう

372:デフォルトの名無しさん
17/12/05 09:27:16.18 hHacdpPt.net
Mercurialも、Python/CからRust/Pythonに切り替えるのか
> Python is also hindering us because it is a dynamic programming language.

373:デフォルトの名無しさん
17/12/05 18:20:02.95 zRXsR4tV.net
>>362
ソースどこだよデマ乙
歴史あるVCSがRustみたいなゴミつかうわけねえだろ

374:デフォルトの名無しさん
17/12/05 18:38:54.65 lkNfeWcr.net
>>362
なんでそれでpython残すんだ?

375:デフォルトの名無しさん
17/12/05 19:47:27.34 qtUVw02h.net
URLリンク(www.reddit.com)
・hg本体がpythonなんで起動時のラグが気になる、特にスクリプトからhg呼び出す場合に重いからネイティブにしたい
・python2.7のGILのおかげで高速化のための並列化が面倒
・メモリ安全と並列化をCや古めのC++でやるのはキツい
何故まずpython3に移行しないのかは分からんかった。Rustで書き直すより先にやった方がいいんじゃないかと

376:デフォルトの名無しさん
17/12/05 20:16:52.30 Z65eXqg0.net
> For Mercurial, Rust is all around a better C.
> It is much safer, about the same speed, and has a usable standard library and modules system for easily pulling in 3rd party code.
>>363みたいな基地外君発狂しそう。

377:デフォルトの名無しさん
17/12/05 21:03:22.04 zRXsR4tV.net
ソースはRedditwwwwwwwww
ソースは2chよりひでえwwwwwwwwwwww

378:デフォルトの名無しさん
17/12/05 21:16:31.60 qtUVw02h.net
一次情報はmercurial oxideなんだけどこれが公式mercurialとどんな関係があるかがRedditのスレで言及されてるんだが
モジカス連呼基地外君は発狂中だとurlしか読めないのね

379:デフォルトの名無しさん
17/12/05 21:18:53.28 gT8tzSz1.net
>>364
mercurialにpythonで書かれた拡張機能がいっぱいあるからだろうかね

380:デフォルトの名無しさん
17/12/05 21:42:01.40 4Jhqan/B.net
HN見ないんだ?URLリンク(www.mercurial-scm.org)
ていうかモジカス君固定ハンドルつけてくれない?名声もつくよ

381:デフォルトの名無しさん
17/12/05 22:45:09.30 H7tXCLyD.net
言語が錆でプロダクト名が水銀だから、プロジェクト名が酸化ってのもうまいことつけたな
Python3化を優先しないのは、斜め読みした感じだと「hgコマンドをPythonスクリプトから(必要に応じてPythonインタプリタを埋め込んだ)バイナリにしたい」ってあったから、順番的には確かにそっちは後だな

382:デフォルトの名無しさん
17/12/05 22:52:10.21 H7tXCLyD.net
あとは、GILの性能自体はPython3で向上したとはいえ、GILそのものがなくなった訳ではないから、
それで得られる速度向上は並列化と比べてたいしたことないってのもあるんじゃね?
あとPython3はそもそも単純なベンチでは2より遅かった気がする

383:デフォルトの名無しさん
17/12/06 00:11:41.11 aEHwTVhz.net
なるほどね。
個人的にはgitよりmercurialに頑張ってほしい

384:デフォルトの名無しさん
17/12/06 01:15:02.87 6LacDPiL.net
VCSは自身の機能や性能も大事だけどそれを使った開発プロセスの整備と提示が大切なんだなあとgithub見て思う
pijulにはちょっと期待してる

385:デフォルトの名無しさん
17/12/06 03:56:18.90 sNDBG4Pk.net
公式がマジで言ってんのかこれ。多分gitに負け続けて資金調達のためにモジラに泣きついた感じか。そこまで落ちぶれてたんか
けどまあwikiの他のNewFeature見てみた限り放置も多いみたいだし、これもそのまま忘れ去られる系だな

386:デフォルトの名無しさん
17/12/06 08:49:40.91 7Z4PG9ak.net
資金調達のためにモジラに泣きついた感じかキリッ

387:デフォルトの名無しさん
17/12/06 09:15:41.98 o9r2lFwR.net
Rustで大きなプログラムは書けない
→Firefoxにしか使われない
→Mozilla以外はまともなプロダクトでは使われない
→負け組プロジェクトしか使われない
進化を楽しみにしてるぞ

388:デフォルトの名無しさん
17/12/06 09:25:54.43 J6ceqlJH.net
>>377
上から目線で言ってるけど無能そう

389:デフォルトの名無しさん
17/12/06 09:28:53.95 dVNrL5aP.net
効いてるやん

390:デフォルトの名無しさん
17/12/06 11:24:37.38 g4tVD/U6.net
374 自体も上から目線でワロタ

391:デフォルトの名無しさん
17/12/06 11:48:39.53 F7bxA/jW.net
5chでマウント取りは当たり前だからな

392:デフォルトの名無しさん
17/12/06 13:03:02.39 C/GcjX4C.net
コンパイル通せない事がそこまで彼のプライドを傷つけるとは……
コンパイルエラーが発生したときに、自動で「大変申し訳ありませんが、」の文字列を追加表示する
コンパイラプラグインを誰か開発すべき

393:デフォルトの名無しさん
17/12/06 17:33:11.66 Zd+Z66A3.net
Rustつかって書き直すなんて、言うだけはタダだし、言ったことでモジラから金がもらえるなら言うだろうね、落ち目のプロジェクトなら
個人的にはgitより好みだったけどな
そもそも言語変えて書き直すとか非現実的なことできると思ってんのお前ら
チャットワークは記憶に新しいぞ

394:デフォルトの名無しさん
17/12/06 17:35:26.67 mFCLg4Qg.net
モジラから金がもらえる(キリッ

395:デフォルトの名無しさん
17/12/06 18:02:57.09 CoVGsVpS.net
いい加減コテつけろガイジ

396:デフォルトの名無しさん
17/12/06 19:19:06.35 enrVe2xz.net
rust ならこういう問題は解決できんの?
URLリンク(qiita.com)

397:デフォルトの名無しさん
17/12/06 19:34:24.15 LlbO+WJR.net
それを解決できるのはスレッドの類をGC対象にできる言語のみだろう
Ponyはできたような気がする

398:デフォルトの名無しさん
17/12/07 11:46:55.50 4fQhnjSw.net
ponyってあれか。スポンサー企業が一抜けしたやつか

399:デフォルトの名無しさん
17/12/07 16:49:06.35 e6grhN6X.net
これからやるのにGUIでいいプログラム言語教えてください。Microsoftは無しで。

400:デフォルトの名無しさん
17/12/07 17:14:54.82 3Pu9MQ/V.net
なんでこのスレで聞く?
Java

401:デフォルトの名無しさん
17/12/07 18:42:24.96 wb2m4Sd2.net
>>389
おじいちゃん、GUIはブラウザってきまったでしょ?

402:デフォルトの名無しさん
17/12/07 18:57:24.40 DAqiucIC.net
実際マジで綺麗なGUI作ろうと思ったらブラウザ使った方が良かったりするからなあ
wasm/WebGLのみターゲットにしたGUIツールキットcrateを作る人も出てくるんじゃないかね

403:デフォルトの名無しさん
17/12/07 19:10:54.37 aNywij93.net
VueとかReactが便利すぎる

404:デフォルトの名無しさん
17/12/07 20:40:39.18 hv/QEVwp.net
簡易なもんつくるなら react をてきとうにいじるのが一番覚えること少ない気がする。

405:デフォルトの名無しさん
17/12/07 20:40:53.05 Hyaivhp0.net
wasmって使えるのcoreライブラリだけ?

406:デフォルトの名無しさん
17/12/07 21:20:46.84 7uR0ShQv.net
しばらくreact+reduxやってから久しぶりにC#に触ったらやっぱり.NET楽だと思ったわ。
Webアプリ前提ならReact一択でいいけど、スタンドアロンでいいならわざわざ選ばんなぁ。

407:デフォルトの名無しさん
17/12/07 22:04:12.67 hv/QEVwp.net
.NET は何がどう依存してるかわかりずらくてデプロイするのが面倒じゃん。

408:デフォルトの名無しさん
17/12/08 18:13:41.90 wmniiGfA.net
Rustは何がどう依存してるかわかりずらくてプログラミングするのが不可能じゃん。

409:デフォルトの名無しさん
17/12/08 19:09:50.20 eb9UBXrx.net
>>398
よ、クソモジラ君

410:デフォルトの名無しさん
17/12/08 21:32:53.09 Zo2thUux.net
>>398
> ずらく
お前はまず日本語を学ぼうな。

411:デフォルトの名無しさん
17/12/08 22:30:24.09 4nIOqmyr.net
>>397
>ずらく
ついでにお前もな

412:デフォルトの名無しさん
17/12/08 23:14:50.34 tq7RAj6Q.net
rust使う前に日本語を正しく習得しないとな

413:デフォルトの名無しさん
17/12/09 00:27:43.89 .net
英語やった方がいいと思う

414:デフォルトの名無しさん
17/12/09 05:14:49.50 GA23pAhd.net
URLリンク(rust-lang-ja.github.io)
このArcってやつはマルチスレッド以外でも使ったりします?

415:デフォルトの名無しさん
17/12/09 10:29:41.27 YwIpfF9w.net
日本語マニュアルなんてあるんだな。
相当本気なんだなRust。
Swiftなんて公式は未だに英語だけだぞ。

416:デフォルトの名無しさん
17/12/09 10:59:59.55 XSUSRhS+.net
日本語のやつは1.9時代のやつな?

417:デフォルトの名無しさん
17/12/11 22:26:30.27 6IPQBxXz.net
そういえばPEZYが自分とこのcpuでrust動かしてたな。

418:デフォルトの名無しさん
17/12/11 22:32:24.37 s6/Bk6Rt.net
これ?
URLリンク(tanakh.jp)

419:デフォルトの名無しさん
17/12/12 13:19:02.69 wxlBGx5A.net
Cの代替として使ってるみたいだけど、mutとかunsafeとかめんどくさすぎて話しにならないな

420:デフォルトの名無しさん
17/12/12 18:14:51.93 x1rOBdPo.net
やっぱRustは詐欺だな。詐欺会社同士モジラとは馬が合うんだろうな
普通の感覚持ってたら>>409と同じように使い物にならないって感想持てるよなあ

421:デフォルトの名無しさん
17/12/12 19:44:02.91 r7OHvt42.net
RustはSmallTalkと並び称されるべき言語
Rustは死んでも血脈は残り続けるだろう

422:デフォルトの名無しさん
17/12/12 19:50:08.37 guPPPE2T.net
死ぬのは決まってるのかよ草

423:デフォルトの名無しさん
17/12/12 19:50:40.56 r7OHvt42.net
>>409
主要部分丸々Unsafeにした挙句
インラインアセンブラを書いてやればいいですとか
なんでもなさそうに書いてあってわろw

424:デフォルトの名無しさん
17/12/12 19:53:48.14 QKUZj3QB.net
プログラミングに限らず安全はタダで得られるはずがないのだが理解出来ない日本人は多い

425:デフォルトの名無しさん
17/12/12 20:36:13.29 jqGL6fhm.net
>>410
なぜRustの苦手分野で語ろうとするのか?
これはJava等の高級言語では絶対に出来ないこともRustなら不格好にはなるものの
可能だということを示しているのであってRustで書いた全てのコードがこうなるわけではない。
低級なことをするときはこういう書き方が必要になるというだけだ。
Rustのいいところは低級なところをすべてunsafeでラップすることで、
それより上位層のコードに低級な部分を持ち込まなくて済むようになることだ。
そして、Rustの最大の特徴は高度な型システムとゼロコスト抽象化等の機能であり、
C++, Java以上の賢い抽象化の仕組みを実現しつつC++並みの実行速度で実現できる点である。
unsafeに関しては、あくまでC++の後継を狙っているので低級なコードを書く手段も用意しているというだけに過ぎない。
CやC++にRust程の抽象化や型安全、メモリ安全を保証する機能はあるだろうか?
「そうまでして安全性や抽象化を追求する必要があるのか?」と問われればそれは作るシステムや個人の趣向にもよるだろう。
欲しいと思う人もいるし、それはやりすぎだと思う人もいる。
Rustが苦手としている部分をとりあげて「ほらダメじゃん」とか言われても、
「Rustの得意なところじゃないんだから当たり前じゃん」としか言えない。
要約して一言で言うならば「論点がずれている」。
以上だ。何か反論はあるか?
長文失礼した。

426:デフォルトの名無しさん
17/12/12 20:49:42.49 r7OHvt42.net
ようわからん
unsafeでくるまれたところでデータ変な風にいじくられたら
結局上までおかしくなるんじゃないの?

427:デフォルトの名無しさん
17/12/12 20:57:21.36 yKSYAIcd.net
こういうの�


428:ヌむ度にやっぱ大物専用だよなあと思う



429:デフォルトの名無しさん
17/12/12 21:00:36.03 gOiBnq4b.net
>>416
要件に合わせて方式選択できて、必要であればその範囲を狭めることができるのがメリットでは?

430:デフォルトの名無しさん
17/12/12 21:07:19.45 x1rOBdPo.net
>>415
詐欺師の長文は読むつもりもない
以上だ

431:デフォルトの名無しさん
17/12/12 21:13:22.11 x1rOBdPo.net
モジラも一緒に逮捕されればよかったのに

432:デフォルトの名無しさん
17/12/12 22:02:32.80 WKBp9cNB.net
404みたいに新しいCPUに移植して特殊な命令使うような話なら
C言語でもインラインアセンブラ使ったりするしかなかろう

433:デフォルトの名無しさん
17/12/12 23:28:17.37 WIgA/FGZ.net
>>416
別に上でおかしくならないことを保証してくれるとかではないよ。
単にメモリ保護違反とかが起こるなら必ずunsafe内で起こるってだけ。
それでもプログラム全域のどこで起こるか分からないCとかよりはましだろうってことかと。

434:デフォルトの名無しさん
17/12/12 23:46:23.16 w89eybus.net
>>415
rustのセールストークを真に受けちゃった人にしか見えない。

435:デフォルトの名無しさん
17/12/13 01:26:07.39 ppLrkL+I.net
>ゼロコスト抽象化
実際にはzero-costじゃなくてzero-overheadだよなrustって。
わかりづらいけど正当なコストはちゃんと払ってるし。
ところで、javaのクソ翻訳にauto boxing and unboxingを「ボックス化」と訳す
トンデモ訳が蔓延してるんだけど、リージョンでメモリ管理するrustだと
正真正銘のboxed valueがあって、この訳が「ボックス化」だから逆に紛らわしい。

436:デフォルトの名無しさん
17/12/13 02:03:31.96 SOXPTBso.net
で、結局はRustはbetter C++なの?

437:デフォルトの名無しさん
17/12/13 02:04:22.47 8wpVTjy4.net
Javaの方が先にあるのに後発が正真正銘だとかどういう了見だよ

438:デフォルトの名無しさん
17/12/13 05:05:47.72 .net
>>420
Haskellマスターtanakhが逮捕されたと誤解を招く書き方辞めろ

439:デフォルトの名無しさん
17/12/13 06:22:58.05 4b7agDte.net
宣伝文句としてはbetter C++だけど、実際の使用例はbetter Cが多い

440:デフォルトの名無しさん
17/12/13 08:01:26.38 fAEH4Erl.net
既成ライブラリの中でメモリ保護例外を吐いた経験がある人ならRustのありがたみが判るはず
マルチスレッドアプリケーションでトレースバックが参考にならないような状態だともう泥縄

441:デフォルトの名無しさん
17/12/13 11:51:23.28 ctCEo+oJ.net
そんなコードが散乱してる現場でrustのボローイングに関して
まともに対応できるとは思えんが。

442:デフォルトの名無しさん
17/12/13 11:56:02.61 SyEPusRz.net
よしんばあったとして、Rustに頼るのは間違ってるだろ
不運続きの人間がカルトにはまるようなもんだ

443:デフォルトの名無しさん
17/12/13 17:17:09.03 wA2gfXD8.net
ここの人たちはまじでレベル低いよね

444:デフォルトの名無しさん
17/12/13 17:22:14.28 SrS6Tw/p.net
>>432
まあRustなんて有り難がってる時点でなあ

445:デフォルトの名無しさん
17/12/13 18:09:45.22 wA2gfXD8.net
>>433
いやそうじゃなくて、あんたみたいに知ったかぶってるやつが多い
そうじゃないのもいるけど

446:デフォルトの名無しさん
17/12/13 18:46:17.79 SrS6Tw/p.net
しったかぶってるか?
C(++)の後継うたってる割に、動くCコードの移植がチェッカーに阻まれて不可能
グラフのような自己再帰構造が書けない
そもそも開発元が悪名高いモジラで、言語機能の改善がまったくなされないのに何故か使ってると称する会社だけが謎のペースで増える(恐らく金が動いてる)
例のスパコン詐欺会社で運用されていたらしいという負の実績
事実並べただけ�


447:ナRustがいかにクソか分かるだろ 金が動いてる部分だけはソースないが他は全部ソースつきだ



448:デフォルトの名無しさん
17/12/13 19:01:44.96 lECrl9Kb.net
みんなランタイムエラーの方がコンパイルエラーより好きなわけ??

449:デフォルトの名無しさん
17/12/13 19:11:47.05 JQsIbvFA.net
んなこたないけどコンパイルエラー出なきゃいいっていう馬鹿が増えそうなのが心配。

450:デフォルトの名無しさん
17/12/13 19:17:48.37 sjTFpswL.net
>>435
そのまま移植しようとしたらそりゃ難しいに決まってんだろ

451:デフォルトの名無しさん
17/12/13 19:18:17.70 sjTFpswL.net
しかもあのスパコン会社技術力は確かに高いし
社長がうんこだっただけで

452:デフォルトの名無しさん
17/12/13 19:32:51.33 JQsIbvFA.net
これ見る限り、素直に c で書いた方が圧倒的に楽だろ。。
完全に話題集めのためだね。
URLリンク(tanakh.jp)

453:デフォルトの名無しさん
17/12/13 19:36:42.74 lMuueXHh.net
まあ、アホほどいっぱい書き込むからそう見えるだけなんだけども。、

454:デフォルトの名無しさん
17/12/13 19:38:53.62 DaKrOXes.net
楽なのは書くことだけじゃん

455:デフォルトの名無しさん
17/12/13 19:43:29.07 YreXArfE.net
[][][] [][][] [] [][][][] [][] [][][][][] [][] [][] [] [][][][][]
[] [][][][ [][][][][] [][ [][] [] [][][] [] [][][] []
[][][][] [] [] [][][][][][ [] [][][] [][] [][] []

456:デフォルトの名無しさん
17/12/13 19:49:19.41 1figGuPs.net
モジラ|提灯|信者|工作員|詐欺|ステマ

457:デフォルトの名無しさん
17/12/13 19:57:43.17 JQsIbvFA.net
>>441
dgemmみたいな行列演算をチューニングするとどうしてもああいうコードになるんだよ。
てか多分 c で書いたのを話題のために無理やりrustに書き換えたんだろうね。。
unsafeで囲むとかもうrustで書く意味ないだろそれ。。

458:デフォルトの名無しさん
17/12/13 20:18:14.75 4b7agDte.net
pezyの例には当てはまらないけど、Cに分けたモジュールリンクするぐらいなら、
unsafe丸囲みの方がビルドが単純になって意味がある。

459:デフォルトの名無しさん
17/12/13 20:31:13.73 lMuueXHh.net
ワッチョイつくまで加速していいよ

460:デフォルトの名無しさん
17/12/13 20:54:35.27 FrEBhkqx.net
この手のキチガイは荒らすことが目的だからワッチョイを付けてもいなくならないよ

461:デフォルトの名無しさん
17/12/13 23:24:55.82 ovEDqqcU.net
unsafeで囲む意味が無いとかマジで言ってんの?
ここはunsafeだよって一目で分かる利点を理解していない?

462:デフォルトの名無しさん
17/12/13 23:32:58.46 HCqZ9sMc.net
NGしやすくなるだけでOK

463:デフォルトの名無しさん
17/12/14 00:04:22.83 huNKzx1I.net
ワッチョイもunsafeも同じように有用ってことだね

464:デフォルトの名無しさん
17/12/14 02:06:28.32 qcE0Inz8.net
ボローチェッカじゃなくてモジラに親を殺されたんだな、かわいそうに
悪名高きとか言われても知らんがな。悪い話もいい話も聞かんが

465:デフォルトの名無しさん
17/12/14 02:32:34.93 ImDQ9Tno.net
元々なんでか知らんがMozillaが嫌いだったところに、
コンパイル通すまでがちょっと難しい言語をリリースして、なんか世界的にそこそこバズって
それを自分で使えなかったことで、正気を保てる限界を越えた感じかね
突撃荒らしのバイタリティが妙に高いのも納得できる

466:デフォルトの名無しさん
17/12/14 02:36:48.61 ImDQ9Tno.net
>>449
例のブログみたいに、全部を囲ったらチェッカーの意味ないじゃんって話では
言語機能としてのunsafeの有用性は分かる
確かに全体をunsafeで囲うなら現状はまだCで書いた方がいいと思う
Rustからだけ使うなら難しい線だが

467:デフォルトの名無しさん
17/12/14 04:17:05.67 C5mtxm9E.net
unsafeブロック内のRustコンパイラによるチェックはCコンパイラに劣るということ?

468:デフォルトの名無しさん
17/12/14 04:41:03.96 FN0VuvQq.net
自前のstructのnewメソッドで外部crateのAWSクライアントを作って持たせて、インスタンスメソッドの中でそのクライアントを使いたいんだけど、
そのクライアントがgenerics使ってて実際に返ってくる型が分からない時にstructに持たせる方法ってないのかな
例えばこんな感じの。
[crate]
struct<A:Trait1, B:Trait2> Client<A, B>
[My code]
struct Hoge {
client: Client<?, ?>
}
ソース見たら更に別のバージョンが古めのcrateのモジュールがそこに入ってたりしてて、そうすると同じバージョンの依存crateをこっちでもexternして、それを自分のstructに書いたりしないといけないのかな?

469:デフォルトの名無しさん
17/12/14 13:12:01.23 +r9JdhqC.net
Hogeをgenericにしちゃいけないのか

470:デフォルトの名無しさん
17/12/14 15:01:05.06 FN0VuvQq.net
外から隠蔽したいかな

471:デフォルトの名無しさん
17/12/14 15:25:18.16 bx+g54aE.net
トレイトオブジェクトは?

472:デフォルトの名無しさん
17/12/14 15:37:10.49 FN0VuvQq.net
自分でラッパー的なトレイト作って該当の外部structに実装してbox化したら持てそうか
やってみる

473:デフォルトの名無しさん
17/12/14 16:59:26.03 FN0VuvQq.net
>>457
>>459
自前トレイトでトレイトオブジェクトにしたら出来た!
トレイトの使い方はまだ慣れてないな

474:デフォルトの名無しさん
17/12/17 19:39:49.04 S5+bbMRX.net
[][] [] [][][][] [][] [] [][][][][
[ ][] [

475:デフォルトの名無しさん
17/12/20 12:24:37.10 QkI0Spk3.net
LISPスレで見かけたこれが結構良かった。
Exaリーディングのすゝめ
URLリンク(www.slideshare.net)

476:デフォルトの名無しさん
17/12/20 13:00:40.50 OeCoTXzU.net
lispとなんか関係あるの?

477:デフォルトの名無しさん
17/12/20 16:53:37.22 PmxuD3Kp.net
Rust界隈では、RustでLisp処理系を作って初めてRust初心者と認められるからな

478:デフォルトの名無しさん
17/12/20 19:40:35.05 w4Ra0RsW.net
そこは電卓でなんとか

479:デフォルトの名無しさん
17/12/20 20:20:27.50 .net
Rust入門書
Rust初心者 RustでLisp処理系を作れる
Rust中級者
Rust上級者

480:デフォルトの名無しさん
17/12/20 20:21:53.84 aJ+/6RQH.net
何それ怖い

481:デフォルトの名無しさん
17/12/20 20:56:53.63 4jfNXtPu.net
敷居高過ぎ

482:デフォルトの名無しさん
17/12/21 00:05:29.62 14mdma0k.net
c++はまってたやつがlisp権威にボコられてrustに走るというわかりやすいストーリー

483:デフォルトの名無しさん
17/12/21 00:10:47.84 s3fe5nPo.net
お前の脳内ストーリーは相変わらずだな

484:デフォルトの名無しさん
17/12/21 00:53:33.89 Fp0tYNZy.net
Lisp処理系を作るってLisp以外の言語で作るのRustに限らず普通に難しくね?
Lisp用のパーサとか適当なライブラリ拾ってきて作るってんなら話は別だけど

485:デフォルトの名無しさん
17/12/21 01:15:00.66 tLGR8mGR.net
C処理系より圧倒的に簡単なのは間違いない

486:デフォルトの名無しさん
17/12/21 09:26:37.87 VHSiL3Am.net
S式の構文解析なんて再帰で括弧対応とるくらい

487:デフォルトの名無しさん
17/12/21 14:15:12.50 egTpAFaH.net
なんせ初心者LTって名目のLT会で、
Lisp処理系書いただの、ベアメタル開発してみただのってお題が平気で出てくるからな
まあ初心者でもこれくらい出来て当然っていう選民思想のなせる技だろう
うっかりLT出てしまった同僚があまりの初心者バイバイ加減に途中抜けしてしまったらしく俺に謝ってきたわ
お前の言う通りRustまわりは録な世界じゃなかったってな

488:デフォルトの名無しさん
17/12/21 15:09:42.01 2erAH6pr.net
勉強会あるあるだよな
間口を狭める行為だ。
まあ勉強会行くやつなんて勉強するきないわけだから、そうなるわ

489:デフォルトの名無しさん
17/12/21 15:21:15.07 14mdma0k.net
でも残念ながらrustやりたがる連中の動機のほとんどはそういうマウント飢餓に
よるもんだからしゃーない。

490:デフォルトの名無しさん
17/12/21 15:46:57.61 2erAH6pr.net
rustはとっつきにくいけどc++(をちゃんと使う)に比べたら簡単だよ
c++初心者のほうがひどい(すごい)

491:デフォルトの名無しさん
17/12/21 16:29:22.74 NHNfcEn+.net
C++は会社や学校にやらされてる人が多いから、初心者はちゃんと初心者だろ
勉強会になんか不毛な空気を感じるのは分かる

492:デフォルトの名無しさん
17/12/21 16:53:40.47 B47fEr+Y.net
なんでついて行けなかったらマウントなの?
逆マウントじゃねえの?

493:デフォルトの名無しさん
17/12/21 18:02:20.28 s3fe5nPo.net
ID:14mdma0k からは例によって非生産的な被害者妄想を感じるな

494:デフォルトの名無しさん
17/12/21 18:24:57.39 Z3tvmV5W.net
まあrustの話しようぜ

495:デフォルトの名無しさん
17/12/21 23:49:36.37 Hr0bpa37.net
rustの話だぞ?界隈に録な人間がいないのは
言語の元締めが個人情報売りさばきのくせに上から目線だけは世界一のクソ企業モジラだから類友なんだろう
絶対に使ってはいけない言語。まあ実用性もないから使えんけどな

496:デフォルトの名無しさん
17/12/21 23:54:02.85 GqKgyaUt.net
モジラ憎しの異常者が今日も頑張ってる

497:デフォルトの名無しさん
17/12/22 00:20:16.73 yyY3EuhM.net
rustってc++よりも簡単なのか?
個人的にはc言語経験者であればc++のほうがとっつきやすい気がする

498:デフォルトの名無しさん
17/12/22 01:13:34.67 MxkH0ZRM.net
CやっててもC++はコード読むのに必要な知識がどんどん増えてくからずっと追いかけてないといけないのがしんどい
追加される仕様は使わなければ問題ないんだけど、コード読む側の負担は考慮してくれない
で、覚えるべき内容もクセのあるテンプレート、言語毎に微妙な差異があるオブジェクト指向、演算子定義等々、厄介なものが多い
複雑なことをしようとしたら複雑なコードになるのが普通のCとは随分違う感じがするよ
個人的には良いCを書けることと良いC++を書けることの関連は薄いと思う

499:デフォルトの名無しさん
17/12/22 03:42:39.31 .net
彼はもじらに個人情報を売りさばかれて親を殺された可能性が微レ存

500:デフォルトの名無しさん
17/12/22 07:38:52.24 GBrZB/rB.net
>>487
5chでグダってる時点で、脳内ストーリー確定。

501:デフォルトの名無しさん
17/12/22 09:58:45.71 rTt8+XPB.net
>>488
現実でもちゃんと反Rust反モジラしてるわカス
Rust言語に肯定的に言及してるやつとは関わるなって同僚には言ってる
一度怖いもの見たさでLT行ったやつはあまりの選民思想具合に途中で逃げたと謝ってきた

502:デフォルトの名無しさん
17/12/22 10:00:35.49 KkeFD613.net
>>489
キチガイwww

503:デフォルトの名無しさん
17/12/22 10:22:15.57 MxkH0ZRM.net
言語自体に対する批判も「C/C++で動いてたオレのプログラムがRustだとコンパイルも通らん!」しか言えないキチガイ君
もっと具体的な話をしろと言われても何も言えずにモジカス連呼、周囲に必死にネガキャン
そろそろ親を殺されたモジラに会社で孤立もやられるんちゃうか?モジラのせいで会社クビになったり、再就職もモジラが邪魔してくるんじゃないか?
すげえ集団だなモジラって。ブラウザ作って新言語作るだけで1人の人生滅茶苦茶にできるんだもの
全盛期のマイクロソフトやIBMでも中々できなかったぞ

504:デフォルトの名無しさん
17/12/22 12:08:29.64 GBrZB/rB.net
>>489
でその活動ってのが5chでグダるになる理由は?

505:デフォルトの名無しさん
17/12/22 12:21:32.68 JCfCdiaY.net
>>492
うっかりここでRustに興味を持つやつを逃がすため
特にこのスレはモジラから金もらったのか知らんが妙に持ち上げるやつが多いからな

506:デフォルトの名無しさん
17/12/22 12:38:52.55 fxvf/KNi.net
 \                    /
   \  丶       i.   |      /     ./       /
    \  ヽ     i.   .|     /    /      /
      \  ヽ    i  |     /   /     /
   \
                                  -‐
  ー
 __   モ ジ ラ か ら 金 も ら っ た の か    --
     二          / ̄\           = 二
   ̄.            | ^q^ |                 ̄
    -‐           \_/                ‐-
    /
            /               ヽ      \
    /                    丶     \
   /   /    /      |   i,      丶     \
 /    /    /       |    i,      丶     \

507:デフォルトの名無しさん
17/12/22 12:59:40.36 9y9ltKJ4.net
いろいろと可哀想なやつだな
まあ頑張れや

508:デフォルトの名無しさん
17/12/22 13:00:04.77 JCfCdiaY.net
>>491
×ブラウザ作って言語作るだけ
○世界中の個人情報売り買いして大もうけして工作員送り込んでる
ブラウザも言語もマネロンでしかないわ

509:デフォルトの名無しさん
17/12/22 13:01:45.87 JCfCdiaY.net
ブラウザマネロンだけじゃなくて個人情報収集手段だな

510:デフォルトの名無しさん
17/12/22 13:16:35.50 YySnaHMg.net
>>497
ブラウザが集めるメタ情報を個人情報と呼ぶならGoogleが一番の悪だな。
Firefoxなんて足元にも及ばない。
Go言語でもdisりに行けばどうだ?

511:デフォルトの名無しさん
17/12/22 13:19:17.97 f8seMuZP.net
発想がトンデモ過ぎてワロタ
ブラウザマネロンってブラウザを開発することでマネーロンダリングする手法ってこと?
どうやってロンダリングするんだろ

512:デフォルトの名無しさん
17/12/22 13:24:47.80 .net
ただの構ってちゃんでしょ

513:デフォルトの名無しさん
17/12/22 13:25:38.52 JCfCdiaY.net
>>498
出た、Googleをスケープゴートにする工作員!
今やクロームなんかより火狐の方が個人情報収集はひどいぞ
なんせ画面のスクショとその上のマウスの軌跡まで送信してるってプライバシーポリシーに明記してるからな

514:デフォルトの名無しさん
17/12/22 14:15:27.48 YySnaHMg.net
>>501
プライバシーポリシーなんていちいち全部読むかよ。
何処に書いてあるかソース元(URL)を載せろ。話はそれからだ。
あと、そんなこと言えるってことはChromeとEdgeとSafariの
プライバシーポリシーももちろん全部読んだんだよな。
Firefoxは読んだけどそっちは読んでないから知らないじゃ話にならないからな。

515:デフォルトの名無しさん
17/12/22 14:37:02.79 Kw0QQsKg.net
スレチ
Rustの話をしろ

516:デフォルトの名無しさん
17/12/22 16:32:24.55 yyY3EuhM.net
rustのターゲット層ってぶちゃけc++erだと思うんだけど、
その割にはc++erの間では話題になっていない印象

517:デフォルトの名無しさん
17/12/22 17:18:44.46 9y9ltKJ4.net
仕事でC++使ってるとこは開発SDKも含めてC++だしこれまでのノウハウや社内資産あるから困ってないというか
待ってればC++にも新機能入ってくるし

518:デフォルトの名無しさん
17/12/22 17:25:28.17 .net
C++コーディングはストレスで禿げる
禿げずにC++並みのパフォーマンスを獲られないかという人類の宿願がRust

519:デフォルトの名無しさん
17/12/22 18:14:33.04 bOdX3AhV.net
>>486
なるほど

520:デフォルトの名無しさん
17/12/22 19:24:35.04 FEUZiQaC.net
c++は安全に書くのが難しい
rustは速くするのが難しい

521:デフォルトの名無しさん
17/12/23 09:43:47.67 LnjVX11P.net
何か思い付きで毛無したいが為にに、色々と時系列や整合性矛盾にも気付かないのが居るな。
惜しむらくは、ネタが古過ぎで手抜き過ぎ。

522:デフォルトの名無しさん
17/12/23 15:59:05.35 3huEAQas.net
>>509
毛無したい...
なんか卑猥な響きだな。

523:デフォルトの名無しさん
17/12/23 20:34:19.49 yTCzKfN3.net
URLリンク(blog.goo.ne.jp)
これがRustを使っているなどと吹聴していた詐欺会社の実態
Rustを使っているなどと大ボラを吹いている他の会社も似たようなもんだろう

524:デフォルトの名無しさん
17/12/23 20:43:27.64 7wgq04iU.net
>>509
また髪の話してる……

525:デフォルトの名無しさん
17/12/23 20:53:42.25 2K6JHNCs.net
>>511
> 「STAP細胞仮説は自然過程であり正しい。STAP否定論者は荒唐無稽な進化論否定論者だ」
ワロタ

526:デフォルトの名無しさん
17/12/23 22:02:16.59 97OmZxF2.net
もう叩くのに理屈もへったくれもないな
具体的に何がわるいのかさっぱり

527:デフォルトの名無しさん
17/12/23 22:16:53.43 XxMQCsYn.net
URLリンク(twitter.com)
pixiv Sketch LiveはErlang, Go, Rustで作ってるらしい

528:デフォルトの名無しさん
17/12/23 23:20:56.30 4xY+voZ+.net
>>511
これTwitterで話題になってる糖質のブログやんけ

529:デフォルトの名無しさん
17/12/23 23:24:11.47 7wgq04iU.net
とにかくmozillaに関する物事は全部否定するのが第一で理屈も手段も二の次か
敵意の向け方に糖質に近いふいんき(変換できない)を感じる

530:デフォルトの名無しさん
17/12/23 23:27:19.33 Wkndnp5t.net
最近の荒らしの間では毛の話が流行ってんのか?
てかこいつ脈絡もなくlispの話しだすし@nobkzじゃね?

531:デフォルトの名無しさん
17/12/23 23:30:00.71 3/AR0zR7.net
驚くほど似てないな

532:デフォルトの名無しさん
17/12/24 00:28:33.50 DahxbI2b.net
>>511
これRustを批判するために張ったリンクなんだよね(;・∀・)
リンク先にRustの文字が1つもないんだけど。(; ̄Д ̄)?
今軽く調べてみたんだけど、
ここの会社がRustを使ってるって明言しているような情報は見当たらないんだよね。
(見つけられなかっただけかもしれないが。)
Rustを開発に使用してるって情報のソースが無いと説得力が皆無なんだけど。
pezyのコアでRustが動くって情報なら見つかったんだけど、
ただ、Rustが動くのはllvmベースだからとも書いてある。
Rustだけ特別扱いされてる訳でもないようだ。
この流れでRustを批判したいのなら、同時にllvmベースの言語も全部批判対象になるんじゃないのか?
llvmベースって言うと現在代表的なのはC, C++, Swift, Rustくらいかな。
将来的に対応予定(すでに対応済み?)も含めるとGo, D, C#, (うろ覚えだがJavaも)入るはず。
主要なコンパイラ付きの言語のほとんどを敵にまわした気がする。

533:デフォルトの名無しさん
17/12/24 00:39:53.65 RXv/EpfS.net
>>475
プレゼン初心者向けのイベントだったんでしょ。

534:デフォルトの名無しさん
17/12/24 01:07:55.87 F1BONnbf.net
>>520
横からだが、スレ遡ったら中の人がRustでこの上で動くコード書いてるブログのリンクがあるぞ

535:デフォルトの名無しさん
17/12/24 08:40:25.62 Z7VMSn3p.net
中の人って、自称イスラエルハイテクベンチャーCEOとtanakhは何も関係無いだろう

536:デフォルトの名無しさん
17/12/24 08:52:26.56 FsFnxVmK.net
Pezyはtanakahを雇っている
tanakhはRust信者
Pezyは詐欺会社よってRustは詐欺!
ってこと?自殺しないの?

537:デフォルトの名無しさん
17/12/24 11:44:59.08 aCkD6VOe.net
>>520
まあ元々、Rust批判したいが為にRustに関わりの有りそうなところの批判を持ってくるという、時系列とか因果関係無視したロジックだからねえ・・・
マトモな技術者なら、他言語や他の計算モデルとの比較で批判や改善提案するんだろうけど。

538:デフォルトの名無しさん
17/12/24 13:00:19.44 Z7VMSn3p.net
ああ、イスラエルハイテクベンチャーというが詐欺という意味じゃなくて
そいつの言うとおりにPezyのスパコンの性能が嘘だと言ってたのか
納入先もグルじゃないとまず無理なのに

539:デフォルトの名無しさん
17/12/24 13:33:10.65 ygtK8spx.net
ハードウェアで思い出したがfirefox osが生きていたら
rustでアプリ開発みたいな未来もあったんだろうか

540:デフォルトの名無しさん
17/12/24 13:58:20.60 aCkD6VOe.net
>>527
そういやスマホどうなったんだろ。

541:デフォルトの名無しさん
17/12/24 14:48:39.87 .net
イスラエルハイテク芸人の記事真に受けてる奴いるの?

542:デフォルトの名無しさん
17/12/24 17:23:57.80 kDRDeSwT.net
>>529
社長が詐欺で逮捕された会社の社員よりは信用できる

543:デフォルトの名無しさん
17/12/24 18:16:21.45 dRKEdAK7.net
コテ付けるかアンチスレ池。次からこのスレワッチョイありでいい?NGしたいんだけど

544:デフォルトの名無しさん
17/12/24 18:19:50.69 ZdJPg4SS.net
次スレは当然ワッチョイ付きだろ

545:デフォルトの名無しさん
17/12/24 18:29:22.88 dRKEdAK7.net
とりあえずワッチョイありの建てたわ
このスピードじゃ次スレまでまだまだ掛かりそうだし

546:デフォルトの名無しさん
17/12/24 18:30:08.61 dRKEdAK7.net
あ、ちなみにワッチョイあり/なしの分裂は運営が認めてる(乱立扱いされない)ので

547:デフォルトの名無しさん
17/12/24 18:30:13.42 ZdJPg4SS.net
そして乱立荒らしと化す

548:デフォルトの名無しさん
17/12/24 18:31:04.33 dRKEdAK7.net
vの数間違えたから一回建てなおした
1514107621使ってくれ

549:デフォルトの名無しさん
17/12/24 20:33:26.59 E1mkQFcM.net
ワッチョイ付けて荒らしがワッチョイコロコロしなかった事例なんて見たこと無いんだが

550:デフォルトの名無しさん
17/12/24 22:59:14.04 F1BONnbf.net
なんだっていいわ。言語の話ができれば。
URLリンク(blog.rust-lang.org)
2017の総括が来てるぞ
個人的にはまだLibz Blitzが不十分なのと開発の敷居が下がってないなとは思うが、
チーム的にはおおむね達成されたって認識なのかね?

551:デフォルトの名無しさん
17/12/24 23:10:11.64 ke4WkGne.net
Rust Christmas I gave you my heart

552:デフォルトの名無しさん
17/12/24 23:12:52.22 Yy5Ib13l.net
>>527
firefox os載ってるパナソニックのテレビが
最近投げ売りを見るようになってきたから試せるぜ。

553:デフォルトの名無しさん
17/12/24 23:18:18.33 AgcUAg+9.net
rustでググるとゲームのrustのほうが出てきた気がしてたがプログラミング言語のrustのほうが出てくるようになった

554:デフォルトの名無しさん
17/12/25 01:15:11.44 amicdpkk.net
>>539
嫌いじゃない

555:デフォルトの名無しさん
17/12/25 21:17:01.81 xKPVoTzN.net
結局RustはKotlinとかSwiftと比べて何が良いのか
純粋に言語として
ライフタイムとかはコストに見合ってるのか

556:デフォルトの名無しさん
17/12/25 21:18:48.87 d0gulbrz.net
>>543
汎用性ならKotlin
Rustは特化型

557:デフォルトの名無しさん
17/12/25 21:19:18.87 d0gulbrz.net
そもそも「安全で高速に低レベルな事をする言語」だからね

558:デフォルトの名無しさん
17/12/25 22:58:45.45 4xHQMB5H.net
enumがtagged unionだから分岐と構造化束縛時の
スタック操作ばっかになって素直に書くと遅い。
cursesで描画してもそこそこ遅い。
cならuntagged unionだから想定してないメンバに
アクセスしたら落とせばいいからここまで遅くならないよ。
安全な抽象化にそれなりのコストかかってる。

559:デフォルトの名無しさん
17/12/25 23:19:26.65 /fea/C1E.net
その速度比較に使ったRustとC++のそれぞれのソースコードplz

560:デフォルトの名無しさん
17/12/25 23:31:01.92 BOF70SMI.net
untagged unionで想定してないメンバにアクセスしたときに落とすためにはtag必要では

561:デフォルトの名無しさん
17/12/25 23:34:48.96 TM/+0evy.net
Cのenumを使いたいならbitflagsでやる方が良いかなと今のところ思ってる

562:デフォルトの名無しさん
17/12/26 00:30:52.01 UK4eFYlP.net
今日日パソコンはとても高速なわけだが
Rustでcurses使うと気になるほど遅くなるのか?

563:デフォルトの名無しさん
17/12/26 02:21:08.27 MIW2tV/6.net
>>546
>cならuntagged unionだから想定してないメンバに
>アクセスしたら落とせばいいからここまで遅くならないよ。
きちんと落ちるのなら苦労はしてない。
落ちないでスタックぶっ壊しながら突き進むから苦労してるんだろ。
スタック壊されるデメリットに比べればtagged unionのコストなんて安いもの。

564:デフォルトの名無しさん
17/12/26 02:29:45.01 2mEdN5M0.net
そもそもrust stableにもunionは入ってるんでお好きに使うがいいやってのと、
「想定してないメンバにアクセスしたら」ってどう判断すんのって疑問が残る
タグに相当するものを自作してもいいけど、そこまで気にする程のオーバーヘッドを感じたことが無い

565:デフォルトの名無しさん
17/12/26 03:05:26.84 wnOOkvy2.net
数百万回まわしてナノ秒単位で測るマイクロベンチマークならともかく、cursesで違いが分かるとか、ありえんわ

566:デフォルトの名無しさん
17/12/26 12:24:50.36 MBQNrtsd.net
今時のマシンでcurses使うと遅いっていう人間、明らかにニュータイプでは?
もしRustで標準入出力が目に見えて遅いって話なら、
単純に標準入出力のロックに無頓着ってだけのオチだと思う

567:デフォルトの名無しさん
17/12/26 15:07:09.73 .net
>>545
夢みたいじゃないか!

568:デフォルトの名無しさん
17/12/31 20:32:09.45 Pbe3xhzg.net
@HiraokaTakuya
Rust で C++ の non type template arguments使いたい時は、適当に中身無しの struct 作るしかないんかな~(´・_・`)
午後1:18 · 2017年12月29日

他人のツイートなんだけど僕も気になるから教えて(´・_・`)

569:デフォルトの名無しさん
18/01/01 03:23:35.09 CPUGDh/w.net
これ?
Pre-RFC: Integer Templating - internals - Rust Internals
URLリンク(internals.rust-lang.org)

570:デフォルトの名無しさん
18/01/01 06:07:12.08 eODIGKc2.net
C++ の template<int N> か。
これが使えれば、
impl<T> Hoge for [T; 0]
impl<T> Hoge for [T; 1]
impl<T> Hoge for [T; 2]
...
みたいなのを
impl<T, N: usize> Hoge for [T; N] でまとめられるよね(と良いな)

571:デフォルトの名無しさん
18/01/02 01:05:03.64 tEjF/+vh.net
rustのジェネレータってasync function用のコンテキストスイッチしないまがい物か。
ジェネレータだけだと所有権奪ってキャプチャした値返すしか出来ないから
Cloneしないstd::iter::repeatくらいにしか使い道ないな。
ウォームアップしてないjsの倍程度の速度しか出ないけど
resume関数は最適化で綺麗になくなるみたい。

572:デフォルトの名無しさん
18/01/02 01:27:26.59 D11hAiYE.net
ほぼtraitしか無い状態なのにそんな評価できるの?

573:デフォルトの名無しさん
18/01/02 20:34:21.94 3aikB/VZ.net
型間のキャスト
URLリンク(rust-lang-ja.github.io)
これの数値キャストのとこにリンクされてるissueまだOpenのままだけど大丈夫なんですか?

574:デフォルトの名無しさん
18/01/03 03:23:23.29 9cEaeLyk.net
ターゲットごとに調整が必要だから後回しにされてんのか?

575:デフォルトの名無しさん
18/01/06 15:03:12.41 +G0EWjNB.net
Announcing Rust 1.23
URLリンク(blog.rust-lang.org)

576:デフォルトの名無しさん
18/01/06 20:14:58.33 BPUjGU8x.net
今回の目玉は何?

577:デフォルトの名無しさん
18/01/06 23:26:46.03 +G0EWjNB.net
目玉無し

578:デフォルトの名無しさん
18/01/06 23:35:55.23 iXDfk3dJ.net
コンパイラの最適化の改善くらいかな。
「メモリ使用量を平均で5~10%くらい削減することに成功した」だそうだ。

579:デフォルトの名無しさん
18/01/07 00:56:06.77 .net
この言語ってC++より遅くてJavaより速い感じ?

580:デフォルトの名無しさん
18/01/07 07:28:23.02 uw/m3vxc.net
間違ってはいない。
けどc++とは僅差なのでこんな感じかな。
C++ < Rust <<< Java
テキトーに書いたので異論は認める。

581:デフォルトの名無しさん
18/01/07 08:28:15.81 N4ZmoDnH.net
下手すりゃc++より速いんちゃう

582:デフォルトの名無しさん
18/01/07 09:11:44.01 uw/m3vxc.net
全く同じアルゴリズムならC++のほうが速いはず。
C++のコンパイラはもう成熟してるけど、Rustのコンパイラはまだまだ改善中だから
将来的にはほとんど同じくらいになるんじゃない?
まぁなんにせよ、結局はアルゴリズム次第。

583:デフォルトの名無しさん
18/01/07 10:36:20.02 VPcvS++b.net
Rustに限った話ではないが世の中のアルゴリズムの大半はC/C++前提に作られているのだから
C/C++の方が速いのは当たり前。新世代で速くしたければそれにあったアルゴリズムが必要

584:デフォルトの名無しさん
18/01/07 11:03:31.13 YhE3wbKh.net
>>571
トンデモだと思う

585:デフォルトの名無しさん
18/01/07 11:59:29.53 zsxI9Sw+.net
「C++がJavaより早い」というのは「大抵は」が抜けているか、「原理的には」が抜けている
C++でVMとJITは作成しないなど、
いくつかの条件が整うと C++ より Java が早いというケースも存在する
無制限にコストをかけれるという前提なら Java より C++ のほうが早い
URLリンク(softwareengineering.stackexchange.com)

586:デフォルトの名無しさん
18/01/07 12:31:49.44 S38kpWyE.net
Cは速いけどC++が速いってのは思い込みだな

587:デフォルトの名無しさん
18/01/07 13:40:28.36 vkdahwds.net
c++は実装依存激しいだろ。

588:デフォルトの名無しさん
18/01/07 14:52:58.05 ztEE4sQM.net
>>571
なんだそりゃ…

589:デフォルトの名無しさん
18/01/07 14:53:20.71 ztEE4sQM.net
>>574
なんだそりゃ…

590:デフォルトの名無しさん
18/01/07 15:50:38.75 .net
CとC++の速度比 ≒ C++とRustの速度比
みたいな感じ?

591:デフォルトの名無しさん
18/01/07 16:38:03.27 lYFenZIw.net
>>578
単純なCだけ頭一つ抜けてて、C++とRustはvtableやsmart pointer由来の遅さを抱えた同じグループ

592:デフォルトの名無しさん
18/01/07 16:57:20.32 .net
ありがとうございました

593:デフォルトの名無しさん
18/01/07 18:25:18.16 oRH7Tob1.net
腕振り回すのが早いからって、仕事も早いと思い込んでるのが未だに居るな。

594:デフォルトの名無しさん
18/01/07 20:07:26.07 QaVgU45N.net
>>579
検証結果plz
最適化コンパイラがない時代ならともかく今時のコンパイラで有意な差が出るとは思えない

595:デフォルトの名無しさん
18/01/07 20:12:31.97 GuZkQfSu.net


596:et="_blank">>>582 pc初心者?



597:デフォルトの名無しさん
18/01/07 21:31:27.55 sQmpVu5G.net
vtblと比較するならCの関数テーブルだろう
C++のスマポも必要なとこしか使わないし、使ったらその分だけ遅くなるのは当然

598:デフォルトの名無しさん
18/01/07 23:35:47.39 rkol6e+G.net
URLリンク(benchmarksgame.alioth.debian.org)
URLリンク(benchmarksgame.alioth.debian.org)
これでいいか?

599:デフォルトの名無しさん
18/01/08 00:09:18.31 fNfSzvO3.net
c++�


600:灑ustもアセンブルコード埋め込めるのだから速度を出そうと思えば出せるのでは



601:デフォルトの名無しさん
18/01/08 00:56:10.81 y4IOANaR.net
今時、C#みたいなGC付きの言語で3Dゲームが開発できちゃう時代なんだ。
今のPCの性能を鑑みたら、C, C++, Rust の速度差なんてほとんど誤差みたいなもんだろ。
普通は気にするようなもんじゃない。
そんなわずかな差が気になるって言うのなら直にアセンブリでも書いてろよ。
ぶっちぎりで速いぞ。

602:デフォルトの名無しさん
18/01/08 01:09:23.55 fNfSzvO3.net
3DゲームってUnityのことか?Unityの内部はC#じゃなくC/C++では

603:デフォルトの名無しさん
18/01/08 02:09:23.80 xRIQXPI+.net
有能はコンパイラが上手く最適化できるコードを書く
無能はコンパイラが混乱するコードを書く
Cの方が速いとか言う奴は大抵無能

604:デフォルトの名無しさん
18/01/08 02:29:49.41 +UJAnfcM.net
まあそれ言い出したらそもそもそこまでcpu速度に影響ある部分なんて
少ないけどな。
ガベコレねーからrust速いってやつも
スマポないからc速いってやつも
大して変わらん。

605:デフォルトの名無しさん
18/01/08 02:49:24.32 puck2ipT.net
将棋ソフトとかチェスソフトは1%でも速くしたいという需要あるんちゃう
実際stockfishをRustで書き直したら速くなったりするのかね

606:デフォルトの名無しさん
18/01/08 03:01:21.87 88cycnja.net
>>591
あんまり大きいプログラムじゃないみたいだけど、内部は木構造か
うーん

607:デフォルトの名無しさん
18/01/08 05:39:51.66 PZS9kotp.net
>>589
それも突き詰めると絶対普段はこんなの書かねーっていうベンチマークのためだけのコードになったりするからなあ
>>585は有名な話だけどソース見ると言語によっては酷いもんだぞ

608:デフォルトの名無しさん
18/01/08 16:00:03.99 2tTEytIx.net
rustで書き直すぐらいならC/C++のままでいい

609:デフォルトの名無しさん
18/01/08 16:42:57.60 MR/7hfVk.net
既存のC/C++コードを捨ててまで移行する価値のある言語ではないのはたしかだな

610:デフォルトの名無しさん
18/01/08 16:49:10.90 fzq0teyP.net
そもそもRustが便利だと思ってるやついないだろ
C++書いたことない奴がC++より安全だの同速だの言ってヨイショする
本当にCやC++書いたことあるならただの制限厳しいだけのゴミだと分かる

611:デフォルトの名無しさん
18/01/08 16:54:23.84 ZvHTaNmI.net
そう思いたいのですね

612:デフォルトの名無しさん
18/01/08 17:52:58.17 G8CneCok.net
ここはアンチスレだからね。
わざわざまともな話題をここでやることはない。
本スレは過疎

613:デフォルトの名無しさん
18/01/08 18:53:52.23 +UJAnfcM.net
c++ゴミ老害をマウントするために新言語が必要なんだろ。

614:デフォルトの名無しさん
18/01/08 21:23:29.25 aKL7Lo8F.net
>>579
速度優先なら
vtable作らない
smartpointer使わない

615:デフォルトの名無しさん
18/01/08 21:24:35.96 aKL7Lo8F.net
>>587
ゲーム開発はできてもゲームエンジン開発はどうなの

616:デフォルトの名無しさん
18/01/08 22:12:41.54 xRIQXPI+.net
無能が生ポインタを使うとコンパイラの最適化を阻害して遅くなる

617:デフォルトの名無しさん
18/01/08 22:47:28.33 rvM8YIeZ.net
>>601
横レスだけどCAPCOMのC#自社エンジンはC++でモリモリ書いてあるしC#用VMもC++で独自実装(SlideShareに確か資料があったはず)
Unityだって結局ライブラリも開発環境もC++が大部分よね

618:デフォルトの名無しさん
18/01/08 22:52:48.05 cPU/Gv3T.net
カプコンのあれはゲーム用に超最適化されたGC詰んでるから…

619:デフォルトの名無しさん
18/01/08 23:20:56.60 y4IOANaR.net
>>588, >>601, >>603
そりゃぁ、ゲームエンジンは速度が求められるからC#じゃ力不足だろうな。
そこまで持ち出されるとグーの音も出ない。
だから「『普通は』気にするようなものじゃない」って書いた。
ゲーム作ろうとするのにゲームエンジンから自作しようとする奴なんて『普通は』いないだろ?
そして、仮にゲームエンジンの開発に使うんだったとしても、
C#みたいなGC付きの言語ならともかく、C, C++, Rustの差は誤差みたいなものでしょ。
なぜなら、C++とRustの差が気になるっていうのなら、当然、C++とCとの差だって気になるはずだよな?
だったらゲームエンジンの開発にC++じゃなくてCを使ってるはずだろ?
でも実際にはCじゃなくてC++が使われている。
ということはゲームエンジンみたいにシビアな領域でもCとC++の差はさほど気にされていないってことになる。
ならやっぱり、C, C++, Rustの差なんて気にするようなものじゃないと言いたかった。

620:デフォルトの名無しさん
18/01/08 23:59:18.26 y4IOANaR.net
>>579, >>600
Rustは実装にもよるけど vtable はほとんど使わないはずだよ。
「ジェネリックとトレイト境界」を使えば引数に関しては静的ディスパッチが可能。
戻り値のほうは「ジェネリックとトレイト境界」じゃどうにもできないけど、
こっちはTagged Union 使えば大体は何とかなる。
現状、クロージャを返す場合はトレイトオブジェクトを使わざるを得ないけど、
クロージャを返すことって稀だし、そこまで気にするようなことじゃないと思ってる。
Cにはそもそもクロージャ自体が存在しないわけだし。C++でもクロージャは一般的じゃない。
smart pointer に関しても unique_ptr なら遅くはならない。(ほとんど誤差みたいなもの)
だって unique_ptr は参照カウンタ使ってないし、Rallの仕組みを使って構造体(スタック)に
ポインタを持ってデストラクタで解放を行ってるだけだから、その程度で遅くなるわけがない。
そして、Rustはデフォルトが C++の unique_ptr と同じだからやはり遅くはならないはず。
遅くなるのは内部で参照カウンタを使ってるshared_ptrとweek_ptrの2つ。
Rustの場合は参照カウンタは Rc or Arc として標準ライブラリに用意されてる。
まあ、Rustで Rc or Arc を全く使わずに作るってのはちょっと現実的じゃないけど。
まぁ、自分もそれほど詳しいわけじゃないけど、
vtableとsmart pointer はRustが遅い理由にはならないんじゃないかな。
RustがC, C++ と比べて少し遅い理由は他にあると思うよ。
個人的にはまだコンパイラが成熟してないってのが主な理由だと思ってるけど。
結構いっぱい書いたけど、やっぱり結論としてはC, C++, Rust の速度差は普通に使う分には気にすようなものじゃないと思う。

621:デフォルトの名無しさん
18/01/09 00:07:21.22 vsbSHK2s.net
>>606
訂正
week_ptr ×
weak_ptr ○

622:デフォルトの名無しさん
18/01/09 00:16:14.62 BgSfBmJG.net
確かに

623:デフォルトの名無しさん
18/01/09 08:02:08.21 dghT81NU.net
HashTableがデフォルトで安全側に倒してSipHash使ってるのも大きい気はする
ripgrepやfont-rsなど既存の実装よりも圧倒的に高速なrust実装もあるし、言語自体の差と言うよりも、書き方の差だと思う
constexpr周りはDやC++の方が充実しているけど、build.rsなどで代替できなくもないと思う

624:デフォルトの名無しさん
18/01/09 09:33:53.22 4EiQrQ8s.net
Unityが出てからC#でゲーム書く人が増えたわけだし、どこかの企業が気合い入れてRustサポートしたエンジン作れば使ってみる人も増えるやろ

625:デフォルトの名無しさん
18/01/09 10:25:16.50 vtbi2ENx.net
速さの差を気にする必要はないとかいう奴って
普段どんなところでコード書いてるプログラマなんだ?
プログラマなら一番速い選択するべきだろ

626:デフォルトの名無しさん
18/01/09 10:36:54.87 pRblgKD+.net
かけれるコストが一定という制約で一番速くなる言語を選ぶと結果は変わるんだよ

627:デフォルトの名無しさん
18/01/09 10:59:57.42 e9VuKocG.net
>>611
「速さ」にも何種類かあるのは理解してる?
最近は開発スピード優先だろ。

628:デフォルトの名無しさん
18/01/09 12:31:14.96 hZWQBtrg.net
開発スピード優先とは言っても
アルゴリズムや計算量知らないで
とんでもない糞コード書く香具師はいる

629:デフォルトの名無しさん
18/01/09 13:00:20.99 CtLIzYrP.net
そりゃ論外だ。
開発言語の問題じゃない。開発手法は少しは関係あるか。

630:デフォルトの名無しさん
18/01/09 13:08:01.94 hgVWuJUP.net
Rustでプログラマが意識してないのに走るランタイム処理って何かあるかな?
起動時になんか処理してる?
あとは、メモリ解放時に意外とjemallocが重いとか?

631:デフォルトの名無しさん
18/01/09 14:20:37.33 vtbi2ENx.net
かけれるコストを減らすのがプログラマの仕事だろうに……
処理の肝の関数をアセンブリで書くのに一週間かけるのか?

632:デフォルトの名無しさん
18/01/09 15:06:26.69 pRblgKD+.net
> プログラマなら一番速い選択するべきだろ
> かけれるコストを減らすのがプログラマの仕事だろうに……
一番速い言語を選択した上でかけれるコストを減らすという主張のようだが、
コストの上限って大抵あるのよ?
上限ないならプログラム全部アセンブリで書いた上で
お好きなようにかけれるコストを減らしてください
> 処理の肝の関数をアセンブリで書くのに一週間かけるのか?
元になる関数の有無、関数の規模、ボトルネックとしての割合、
複雑さ、アーキテクチャ、既存のテストコードの有無、
作業する人数、スキルと単価の前提すらなく作業時間だけ提示されても
必要なら一週間かけますとしか言えないよね?

633:デフォルトの名無しさん
18/01/09 15:08:41.92 Im+qxt+8.net
>>617
> 処理の肝の関数をアセンブリで書くのに一週間かけるのか?
必要ならやるけど
ふつうは、アセンブリで書くというという結論に至る前に
処理の見直しで数ヶ月試行錯誤するかな

634:デフォルトの名無しさん
18/01/09 15:46:18.74 vtbi2ENx.net
本当に必要なら
関数のアセンブリ化くらい一日でやるのがプログラマだろって話な?

635:デフォルトの名無しさん
18/01/09 18:36:32.15 pRblgKD+.net
処理の肝の関数が一日程度のアセンブリの最適化ですむ程度なら、
絶対に手を付けないな
コードの保守性を考えるとむしろ害悪
ドライバのコードを一週間かけて最適化して劇的に早くしたことがあるが、
関数に対する暗黙の前提とかを見つけて、
ひらめきでニーモニックを最適化していく作業
一日程度でやることじゃない

636:デフォルトの名無しさん
18/01/09 20:29:59.87 6UEtXwLz.net
今時の高性能(で複雑な)なプロセッサの最適化はコンパイラ>人間

637:デフォルトの名無しさん
18/01/09 23:11:43.33 0nJMugwX.net
C++からRust移植で高速化!?
URLリンク(twitter.com)

638:デフォルトの名無しさん
18/01/10 00:25:27.71 GZ3v7wml.net
例の会社の方ですね

639:デフォルトの名無しさん
18/01/10 01:04:10.48 sDNuvOTB.net
stockfishもrustで書き直しましょう!

640:デフォルトの名無しさん
18/01/10 05:48:28.54 zJE5XuIr.net
移植で高速化する案件ってのは、大概同じ言語で書き直しても高速化するからなあ
要するに作り直しに際して全体を見直すという行為が一番効く

641:デフォルトの名無しさん
18/01/10 11:54:40.05 kHYccep6.net
詐欺会社の社員の言うことなんて信じるからRustなんかに飛び付くんやろなあ

642:デフォルトの名無しさん
18/01/10 12:43:57.38 6PCYvjwP.net
気が狂ったようなレスだな

643:デフォルトの名無しさん
18/01/10 15:45:01.02 GLuGS5zO.net
>>626
お前それインタプリタ言語からコンパイル言語への移植でも同じこと言えんの?

644:デフォルトの名無しさん
18/01/10 15:47:29.13 GLuGS5zO.net
GoogleのAIエンジン、別にRustで書けとは言わんがせめてGoにしろやと常々思う
演算量多いんだよバーロー

645:デフォルトの名無しさん
18/01/10 16:22:06.54 Dg+5gWi5.net
GoogleのサーバサイドではPythonからGoへ置き換わりつつあるみたいだけど、そっちも置き換わるのか

646:デフォルトの名無しさん
18/01/10 18:47:50.56 GLuGS5zO.net
スレチだけど、Goはマルチコアでの並列処理に適した言語だからAIエンジンをサーバで動かすなら置き換えて欲しいよね
しかしまぁ、C/C++からRustの移植で早くなるのは、オブジェクトの取り回しが無理やり矯正されることによる恩恵かねぇ
mutexのlock/unlockによるブロッキングが早々起きないから待ち合わせしなくていい所の待ち合わせは矯正されてそう
プログラマが意識して作るならC/C++のままで良いけど、人がやるより機械がやってくれるならそれに越したことない

647:デフォルトの名無しさん
18/01/10 20:16:34.04 85p1Kkix.net
tensorflowの事言ってるなら、pythonで書かれてなかったら誰も使わないよ

648:デフォルトの名無しさん
18/01/10 22:46:46.16 GLuGS5zO.net
pythonは利用者==開発者での試験開発には非常に好ましい言語だけど、利用者!=開発者では性能悪くてver.2,3で言語仕様互換性のないRust未満のクソ言語だよ?
AIエンジンを実用ツールとして見ない日曜プログラマはtensorflow(python2 lib)をホクホクと使うけど、実用ツールとして見たらtensorflowは誰も望んでは使わないよ
同じように言語の適材適所を考えないプログラマはRustの適所を考えることもせず、アンチ活動に走るよね
コンパイル通るコード書くの大変だし、ローポインタ操作は好まれないし、日本語書籍少ないしで決して便利な言語じゃないけどRustもハマれば良い言語よな

649:デフォルトの名無しさん
18/01/10 22:54:00.21 aQix+RRX.net
アンチの存在はともかく
アンチと戦うのが好きな人が多いのが難点ですね

650:デフォルトの名無しさん
18/01/11 01:05:22.99 wQj3L0Ay.net
たなこふアンチはどっか逝って

651:デフォルトの名無しさん
18/01/11 03:40:32.06 iyu0SjqV.net
演算グラフを構築してGPUに投げる処理をrustで書けば速くなると思ってる低脳っぷりヤバイわ
GPUの100倍も遅いCPUでループ回るのが速いとかマジでどうでも良いからw

652:デフォルトの名無しさん
18/01/11 04:02:35.22 QmzCPTgd.net
今rustで業務アプリ開発してるけど、マルチスレッドでのデータ競合をコンパイル時にチェックしてくれるのが特にいい感じだわ
ただ、今まで気楽に相互参照使ってた所とかrust流の書き方しないとキツイのが結構あるな

653:デフォルトの名無しさん
18/01/11 11:23:35.66 s4xLMRqm.net
まあ行列演算のコアなところは今でもアセンブラだったりするわな。
一つの言語で全てのレイヤーを賄おうとするのがそもそも馬鹿すぎる発想。

654:デフォルトの名無しさん
18/01/11 11:40:16.18 AZiVul63.net
>>634
挙げてるデメリット全部致命的で、
全く嵌まれば強いように見えないな

655:デフォルトの名無しさん
18/01/11 13:36:38.57 c+w22aA0.net
>>640
それってpythonについて文句言ってんの?それともRust?
それとも両方?

656:デフォルトの名無しさん
18/01/11 19:09:36.95 iS+zA8r5.net
>>634
日曜プログラマとかレッテル貼ってdisってみたけど、
実は自分の方がクソど素人だと>>637>>639にバラされた気分はどう?
流行りだからってドカタが無理してAIとか口出さない方が良かったね

657:デフォルトの名無しさん
18/01/11 19:11:41.94 EF30eMeR.net
>>641
Rust
Pythonについては同意見

658:デフォルトの名無しさん
18/01/11 23:02:05.67 b1xHFrgv.net
道具でしかないプログラミング言語ごときに何でそう愛憎うずまくレスが沸くんだぜ

659:デフォルトの名無しさん
18/01/12 00:01:22.91 v4YvA7k7.net
やっぱりマイナー負け組言語マニアは余裕がないから
簡単にムキになっちゃうんじゃね

660:デフォルトの名無しさん
18/01/12 00:16:17.30 8Bbkgawk.net
Rustが使える有能な言語だと思っている?お前がそう思うんならそうなんだろう お前ん中では
Rustが使えない糞な言語だと思っている?お前がそう思うんならそうなんだろう お前ん中では
お前がそう思うんならそうなんだろう お前ん中では

661:デフォルトの名無しさん
18/01/12 10:24:05.79 KQEkfNlJ.net
>>646
そういうお前のなかではどうなんだ?

662:デフォルトの名無しさん
18/01/12 15:03:45.10 yzgw2U0r.net
>>644
本当は電気ドリル使った方が楽なのに頑なにスコップ使わせたり、
逆にブルドーザーでやれというようなアホな現場があるのが
ITの世界だったりする。
まあそんなことが続けばその道具を嫌いになるのはわからんでもない。

663:デフォルトの名無しさん
18/01/12 16:29:33.21 /01TbNc2.net
>>648
わかる
そしてスコップやブルドーザーでも時間や犠牲を払いつつもやれてしまうのがITの世界

664:デフォルトの名無しさん
18/01/12 19:30:59.16 RuIpixvC.net
>>642
とりあえず、tensorflowのコードを見てないんだなって思った
GPUに投げる演算処理以外のステップ処理とか関数コールとか動的型変数の取り扱いとか
インタプリタ言語がコンパイル言語より遅い理由に挙げられるデメリットをガン無視かよぉ
>>643
IteratorやOption, Resultとか、ハマればC/C++で何行もかけて書いてた所が1行に収まって
短くて可読性高くて性能良いコードになるのはメリットだと思うんだけどなぁ
あとは、makeだのvalgrindだのgoogletestだの色々な3rd party toolを使わなくてもcargoで完結するのホント助かる

665:デフォルトの名無しさん
18/01/12 20:43:22.05 yzgw2U0r.net
>>650
3rdパーティツールを使ってないんじゃなくて、利用が簡易ってことだけどな。
そういう怪しげなこと書くくらいならモチっと使い方なり書いた方が普及には繋がると思うよ。
URLリンク(qiita.com)

666:デフォルトの名無しさん
18/01/12 20:52:57.80 /u+itip5.net
>>650
tensorflowはボトルネックになりそうな所はC++で書かれてるよ
想像でテキトーな事を書くなよ

667:デフォルトの名無しさん
18/01/12 21:01:05.95 /u+itip5.net
Pythonが科学技術分野で好まれてるのは
numpyやscipyのお陰だから言語に文句つけても意味ないし、
Rustで書くよりnumpyで行列演算した方が速いから
速度面でも移行するメリットがない

668:デフォルトの名無しさん
18/01/12 21:54:28.61 kjmG24Y8.net
>>648
ITに限らないような。低能率な環境や命令を棚に上げて生産性向上などと吠える製造業も多いぞ

669:デフォルトの名無しさん
18/01/13 09:02:27.08 PRFVc3V3.net
>>654
未だに設計にEXCEL使ってる現場とか多いしね。
自称IT屋がIT使ってない。

670:デフォルトの名無しさん
18/01/13 19:22:01.99 MW2t1rKM.net
excelがITではないとは暴言では

671:デフォルトの名無しさん
18/01/13 19:34:17.26 aU8wc9zz.net
エクセルは芸術

672:デフォルトの名無しさん
18/01/13 21:22:56.33 ZmH3DZ0F.net
>>656
ああ精確には「古いIT」だな。
客には「Excelで台帳管理しないでDBとWebアプリ使いましょう」とか提案する癖に、開発工程ではExcel使ってるという非効率さ。

673:デフォルトの名無しさん
18/01/13 21:38:44.30 V4m1sF41.net
Excelが悪いとは思わないけど処理の規模が一線を越えてくるとプログラムを書いた方が処理効率や保守性の面で有利になる
関数山盛りの激重スパゲッティワークシートを運用しているところは少なからずあるのでは
あとExcelに表計算ソフト以上の仕事をさせているところも結構あるな

674:デフォルトの名無しさん
18/01/13 21:43:49.20 aU8wc9zz.net
経済学の論文でエクセル使ってて、しかし普通にバグってて問題になってたことがあったな。

675:デフォルトの名無しさん
18/01/14 00:19:53.66 Qz3+ZXNT.net
rustスレだと思っていたがexcelスレだった

676:デフォルトの名無しさん
18/01/14 01:19:41.63 I9Kg/0Pm.net
>>658
規模がでかくなるとすぐ破綻するが
使い捨て作業でつかうぶんには超優秀
なにもまちがってない

677:デフォルトの名無しさん
18/01/14 03:40:45.43 ppap/O0M.net
まあ実際はエクセルとバージョン管理使ってりゃそれで十分なケースは多いけどね。

678:デフォルトの名無しさん
18/01/14 09:51:38.95 5kx72Xik.net
とある公的研究施設に嘱託で行ってたときの実話なんだが
・それエクセルでマクロ書いたら多少楽になるんじゃね?って提案
→わけのわからんことに時間使わないで今すぐ手を動かして紙で管理してね
・コピペ満載糞コード見せられ「なぜこれ関数書かないんですか?」とだけ質問
→関数使うと見難くなる、保守しにくくなる、関数は書かないでね
なお、必死で食い下がって関数書くことだけは許してもらった模様
公務員なんてのはPCの前に座って屁こいてるだけで時間が金になるから
みんなこんなもんよ
時間を惜しむと言う発想が無いか、少なくとも民間とは違う

679:デフォルトの名無しさん
18/01/14 11:24:43.60 pZVQT//+.net
rustなんて使ってるやつも同じメンタルだな
成果物出さないでコンパイラにエラーメッセージ出させてるだけで時間が金になるようなやつ
物作らなくていいなら理想の言語だわな

680:デフォルトの名無しさん
18/01/14 11:37:01.71 BkqToWZD.net
けんきゅうしせつのひとが嘱託よりすべてにおいて優れているのは自然の摂理なので
本当にわけのわからない提案をしたり
既存コードに手を突っ込んで意味不明なリファクタをしようとしたりしたんだろう
マクロ化したり関数作ったほうが本当に能率いいなら
許可なぞとらずに自分のところだけそれでさっさとやっちゃう
うまくいくようならあとから提案する

681:デフォルトの名無しさん
18/01/14 11:41:16.95 pZVQT//+.net
>>666
だーれがその「自分で勝手にやったところ」の面倒を見てくれるんだ?
嘱託ごときが定年まで面倒見れるわけもなかろうに
勝手にブラックボックス作るのは何様?

682:デフォルトの名無しさん
18/01/14 11:46:14.88 BkqToWZD.net
自分の責任範囲内の話だし
特にブラックボックスなところはないが
なにがきにいらんのだ

683:デフォルトの名無しさん
18/01/14 11:48:39.30 pZVQT//+.net
嘱託に設計を勝手に変えられる「責任」が存在するならそれは嘱託ではなくね?
自分が勝手にやった、自分一人しかわからないものは十分ブラックボックスだ

684:デフォルトの名無しさん
18/01/14 11:57:24.04 BkqToWZD.net
コーディングルールに関数作らないことって明記されてなかったら
べつにいいんじゃないか

685:デフォルトの名無しさん
18/01/14 12:26:12.32 ppap/O0M.net
いや関数ダメとか普通にどうかしてんだろ。。
これでブラックボックス化するからダメ言うんだったら何もできんわ。

686:デフォルトの名無しさん
18/01/14 13:02:12.25 8svLfVJD.net
そもそもプログラミングってきちんと正しく
ブラックボックス化(カプセル化)しましょうってものだろうに。。。

687:デフォルトの名無しさん
18/01/14 13:39:57.15 pZVQT//+.net
カプセル化はAPIと内部状態の分離であって
中のコードや仕様を隠蔽するのが目的じゃないんだが

688:デフォルトの名無しさん
18/01/14 13:57:59.71 jzH2L7UL.net
ID:pZVQT//+ は何かズレてんな。だから必死なのか。

689:デフォルトの名無しさん
18/01/14 14:43:57.62 b6ZBN6zi.net
Rustに限らないが、新しい言語ごり押しする奴や
コーディング規約ガン無視してコード書いたりする奴は、
結局そいつしかメンテできない領域を産み出すだけで、全く生産性に寄与しない
ってことが言いたいだけだぞ

690:デフォルトの名無しさん
18/01/14 14:45:29.84 8svLfVJD.net
>>673
その「APIと内部状態の分離」をなぜ行いたいのかきちんと考えたことはあるのか?
車を運転するのに車の仕組みを知らなくても良いのと同じように、
プログラム(ソフトウェア)を使うのにそのプログラムの仕組みを知らなくても済むようにするため。
さらに言うと、プログラマが他人が書いたAPIを使うのに、そのアルゴリズムを知らなくても済むようにするためだ。
結局のところ、カプセル化の目的は「きちんと正しく」ブラックボックス化を行うことで
利用者側が内部の仕組みを知らなくても使い方を知るだけで済むようにすることだ。
「APIと内部状態の分離」を行うのはそのための手段として最も有用なものの1つというだけに過ぎない。
何の目的もなく「APIと内部状態の分離」を行えば、それは「中のコードや仕様を隠蔽する」のと大して変わらないよ。
もう少し本質をしっかりと考えよう。
君の言ってること自体は必ずしも間違っているわけではないし、言わんとしていることも分からんではないが、
なんというか、、、底が浅いと感じてしまう。

691:デフォルトの名無しさん
18/01/14 14:56:16.89 8svLfVJD.net
一応補足。
かといってカプセル化した中身は汚くてもいいと言ってるわけじゃないよ。
大多数の人間はカプセル化した中のコードを読む必要性はないけど、
プログラムにバグがないことは絶対に保証できないのだし、
パフォーマンスの改善やらその他いろいろな理由で、
一部の他人は必ず中身のコードを読むことになるからね。

692:デフォルトの名無しさん
18/01/14 14:56:20.26 ptHdDqnU.net
>>667 勝手にブラックボックスを作るべきではない
>>668 ブラックボックスなどないではないか
>>672 プログラミングとはそういうものだ
>>667への反論として>>668はわかるが>>672はなんかずれてると思うがな。

693:デフォルトの名無しさん
18/01/14 15:03:52.23 8svLfVJD.net
>>678
「そもそも論」の話をしたからな。
ずれてるというか議論のすり替えが起こってるな。
悪かった。申し訳ない。

694:デフォルトの名無しさん
18/01/14 17:34:15.38 BkqToWZD.net
どうなんだろう
人と違うことやるときは
特に何も決まってなくても提案として言ったほうがいいの?

695:デフォルトの名無しさん
18/01/14 19:43:43.81 5kx72Xik.net
rustに関係ない話持ち込んじゃってゴメンね…
「関数書くな」って真顔で言われたときのショックを伝えたかったの
Cから入った人間だから「プログラムを書く≒関数を書く」
だとどこか思い込んでたようなとこがあったのかなぁ
軽くパニックになったわ
関数書かないで何を書くんだろう…って
関数を書かないレベルの人に言葉を尽くすのは大変だったYO

696:デフォルトの名無しさん
18/01/15 01:12:06.90 TeZ6A4z4.net
昔俺が入ったプロジェクトはJavaだったけど、1クラス1スタティックメソッドのみっていう縛りがあったよ

697:デフォルトの名無しさん
18/01/15 10:25:31.75 C2H3bXQJ.net
嘱託の契約次第だろ。
まあ、無駄な時間を使わされるようだったら契約違反を盾に交渉するのは正しい。契約外だったら少なくとも追加費用を要求しないとな。

698:デフォルトの名無しさん
18/01/15 12:02:33.62 Sawl3Tst.net
嘱託の人間に「こっちの方がいいから」って理由で
そいつにしかわからないプログラム書かれた側から言わせてもらうとまじでやめろ
お前がどんなにクソだと思おうと言われたようにやれ
嘱託のお前にとっては書いたらおさらばでいいんだろうが、こっちはそれを半永久的にメンテするんだぞ
こっちの形式指定はメンテするためにこっちが必要な条件なんだ

699:デフォルトの名無しさん
18/01/15 12:05:18.28 Sawl3Tst.net
だから「新しい言語のRust使います」だの「ナウでヤングなライブラリ使います」だの「イケてるツールのwebpack使います」だのは
お前がお前のために書くプログラムでやれ
嘱託先に納品する物で書くな。それはお前の物ではない

700:デフォルトの名無しさん
18/01/15 12:09:10.97 Sawl3Tst.net
関数切るなって指示も、メンテナンス性考えたら自然とそうなるところもあるだろう
例えばコード上あっちこっち飛ばれたら追えなくなるメンテナもいるんだ
そういう人にもメンテナンス業務させるためにそういう指定になるのは自然なこと
さすがにうちではないけども、そんな奴を抱えてるSIer上流も当然あるだろう


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch