プログラミング言語 Rust 2at TECH
プログラミング言語 Rust 2 - 暇つぶし2ch650:デフォルトの名無しさん
17/03/02 22:21:45.15 TuErB/Pj.net
>>636
language server protocolはコンパイラじゃない。
rustだけのものじゃないし。

651:デフォルトの名無しさん
17/03/02 23:53:09.94 unB1K5KY.net
ビルドツールって言い回しでもいいけど、結局そういうモノが使えるのかという疑問なんだが
MSが切った規格っぽいけど、MSは使ってて流行ってるのかねぇ

652:デフォルトの名無しさん
17/03/02 23:58:57.23 5xdornxH.net
流行るかどうかは知らんが、使って見た感想としては、racerで不十分だったエラーチェックやgo to definitionとかもあってそれなりに快適
不満があるとすれば、初期化に時間がかかる(ただし2回目以降は少し速い)のと入力の度の解析に少し時間がかかる(ただしcargo checkよりは速い)のとキャッシュがクソでかいところかな

653:デフォルトの名無しさん
17/03/03 02:48:30.02 NOi6E2uI.net
Rust(錆)
流行ることなく誰にも使われず錆びていくプログラミング言語、それがRust
ルストハリケーン

654:デフォルトの名無しさん
17/03/03 02:50:44.93 8SEA7Mtt.net
language server protocolはビルドツールでもない。
エディタでコード補完とかフォーマットとか(VisualStudioのIntellisenseのようなもの)を実現するためのプロトコル。
エディタの機能拡張のためのものだよ。

655:デフォルトの名無しさん
17/03/03 05:22:56.35 Mo/AGisi.net
Ryzenなら、rustcも爆速になる?
URLリンク(twitter.com)

656:デフォルトの名無しさん
17/03/03 05:26:52.91 bMgzQydB.net
Rustスレで語るほどの話題でもないな

657:デフォルトの名無しさん
17/03/03 05:46:13.37 Dlw1K2JE.net
>>642
話がズレてんぞ
「Rust Language Server」(ソフトウェア)の利便性/実用性を問うているのであって
「language server protocol」(プロトコル)の利便性/実用性を問うているんじゃない
>>640
ああ、キャッシュはクソでかいのか...
元コードや依存crateに比例するだろうけど多少の利便性のために使って良いものか微妙なのかなぁ

658:デフォルトの名無しさん
17/03/03 06:25:02.22 bMgzQydB.net
まあクソでかいと言ってもdebug buildのキャッシュに少し欠けるくらいだけどね
逆にいえばdebug buildと同等のオーダーで容量を食うということだが

659:デフォルトの名無しさん
17/03/03 08:53:13.29 8SEA7Mtt.net
>>645
ビルドツールとかいって何に使うものかも解ってない >>639 みたいなのが居たから書いたのに話がずれてるって…

660:デフォルトの名無しさん
17/03/03 09:37:43.14 NTvASRIg.net
それでもその程度(debugビルド)か
提供体系変えたからってそれ以上は減らないだろうから
結局は、サーバクライアントモデルにメリットがあればって所なのな, 情報thx

661:デフォルトの名無しさん
17/03/03 10:21:19.53 Ufz5V5uO.net
LSPをサポートしてれば、エディタ/IDEそれぞれに特化したプラグインを作らなくていいところが良い
まあracerもそうだけど。後は非同期的なのも重い処理にはいいかもね

662:デフォルトの名無しさん
17/03/03 18:34:23.36 NTvASRIg.net
IntelliJのRustプラグインはRLS対応メンドイから当分見送りな!とか言ってるんだよねぇ
エディタ/IDEのフロントエンドは作り込み必要だし、LSP共通でできることって結構薄いレイヤーなんだろうな

663:デフォルトの名無しさん
17/03/03 23:51:37.58 JBnTbtYi.net
Rainicorn開発して自前でon the fly error checkやってたRustDTが
LSPが発表された途端にRustLSP開発始めたのにRLSがでてきて完全に沈黙中。
(´・ω・)カワイソス
LSPはリファクタに使える問い合わせもできるから
RLSとIDE側が対応すればrustのツールで初めてのリファクタ機能が現れるかも。

664:デフォルトの名無しさん
17/03/08 03:21:51.70 DeDFMxZF.net
URLリンク(i.imgur.com)
Rustのメモリ管理が良く分からないので
脳内整理してみたけどよく分からない

665:デフォルトの名無しさん
17/03/08 07:03:46.86 jgMpoXzS.net
このごちゃごちゃで整理とか笑える。

666:デフォルトの名無しさん
17/03/08 07:23:54.02 CjJNAnlh.net
コメ返してるのウケる

667:デフォルトの名無しさん
17/03/08 07:26:21.29 fOyT060n.net
こ、コメ

668:デフォルトの名無しさん
17/03/08 10:47:45.16 6Gp+/qzY.net
よく分かってないから脳内整理もぐちゃぐちゃになってるのではなかろうか
rustはマルチスレッドに影響受けることはないし、他にも理解が出来てない所が多そう
公式ドキュメントが分かりやすいからきちんと読み直したら?
URLリンク(doc.rust-lang.org)
>>654
ワロタ

669:デフォルトの名無しさん
17/03/08 13:45:42.21 68sDUGxJ.net
何が分からないのか分からない状態。borrowじゃなくてownershipが分からないのか、スタックとヒープが分からないのか。

670:デフォルトの名無しさん
17/03/08 13:59:22.48 jMX+hATM.net
>>652
java臭い

671:デフォルトの名無しさん
17/03/10 08:50:25.22 mPQwWGXM.net
>>455
JavaにはJapanese Eraあるな

672:デフォルトの名無しさん
17/03/11 03:15:58.35 ls0F4O8F.net
Rustで作ったプログラムを公開するとき
Rust自身のライセンス文書と
crateで含めた各パッケージのライセンスと各パッケージが依存するパッケージのライセンスを
含める必要があると思うんですが
それらのライセンス文書をかき集めるcargoのコマンド等あったりしますか?
( ~/.cargo/registry/src/ 下にパッケージのソースファイルやライセンスファイルがあるのは分かってるんですが手動で集めるのは面倒なので・・・)

673:デフォルトの名無しさん
17/03/11 08:13:55.49 kL5whW8F.net
HyperのTokio化が間近まで迫っているわけだが、かなり仕組みが変わってて対応が面倒臭い

674:デフォルトの名無しさん
17/03/11 08:15:11.10 x2OoeTeG.net
DASH言語

675:デフォルトの名無しさん
17/03/11 08:16:44.20 hkT0qMWn.net
そういえばhyperってcharsetから自動でデコードしてくれないのかな

676:デフォルトの名無しさん
17/03/11 08:19:31.82 qKzUYLvE.net
>>662
まずは言語を動かすプロセッサーを作るための半導体から調達するのかな

677:デフォルトの名無しさん
17/03/11 08:24:05.78 kL5whW8F.net
Charsetはhyperの領分からはかなりかけ離れてるんじゃないかねえ。reqwestですら対応しなさそう

678:デフォルトの名無しさん
17/03/11 08:46:49.37 qKzUYLvE.net
charsetは別に良いけど、Content-Encodingは対応してくれないのかなぁ

679:デフォルトの名無しさん
17/03/11 09:04:48.56 kL5whW8F.net
>>666
gzipに関してはreqwestのupstreamで既に対応している
URLリンク(github.com)
いつリリースされるのかは分からん

680:デフォルトの名無しさん
17/03/11 12:10:28.94 nSjuwCRc.net
reqwestにモリモリとFeature Request投げつけて肥大化したライブラリにすればいいんじゃないかなぁ!
それを横目に、reqwestに代わる極最低限の機能をピックアップできるライブラリの登場を期待したい
tomlのoptionalで切れるのでもいいんだろうけど、crate分けてくれた方がrustらしい気がする

681:デフォルトの名無しさん
17/03/12 13:51:15.74 oPHiMgG4.net
Rayonの1.0 milestoneが残すところドキュメント関連のみとなって1.0が秒読みという感じでとてもよろしい
SerdeだのHyperだのRayonだのという目玉crateが軒並みpre-1.0なままなのは気持ち悪いからなあ

682:デフォルトの名無しさん
17/03/12 15:37:08.34 O3/Gyy1q.net
Windows版はVisual C++ 2015 Build Toolsをインストールする必要があるってことだけど、
これのライセンスってどうなってるの?
Communityと同じだったらうちの会社じゃあ使えないことになるけど、はっきり書いてある
ところが見つからない。

683:デフォルトの名無しさん
17/03/12 15:41:23.49 U4Jjwa7O.net
>>670
インストーラーが表示しないの?

684:デフォルトの名無しさん
17/03/12 17:13:31.76 O3/Gyy1q.net
なるほど。ライセンス条項を表示して「同意する」にチェックを入れさせるいつもの奴じゃないから
スルーしそうになったけど、いちおうリンクが見つかった。ありがとう。

685:デフォルトの名無しさん
17/03/14 00:27:55.78 olV+TTff.net
#[allow(unuseed_variables)]
じゃなくgolangみたいに
let _ = hoge;
とプレースホルダでコンパイル通したりする?

686:デフォルトの名無しさん
17/03/14 00:32:20.78 UwSzXh4Z.net
>>673
それでも良いし、let _piyo = hoge;でも良い

687:デフォルトの名無しさん
17/03/14 22:39:18.78 pGPNuxtq.net
ていうかallow(unuseed_variables)とプレースホルダはぜんぜん違うぞ

688:デフォルトの名無しさん
17/03/14 22:54:53.45 UwSzXh4Z.net
まあ確かに、unuseed_variablesなんてlintはないしな

689:デフォルトの名無しさん
17/03/15 09:52:08.89 65dLeHL5.net
うぬ種(unuseed)、、、これには深い秘密が
unused_variablesとプレースホルダ、ワーニングを消すために使うなら同じバイナリ出力するがな
traitのインターフェース切る時はプレースホルダ使ってる

690:デフォルトの名無しさん
17/03/16 22:41:36.30 KeMWtB7g.net
そういえばC++だとリリースビルドで消える変数はmaybe_unusedいるんだよな。rustかしこい!

691:デフォルトの名無しさん
17/03/17 03:23:47.24 bRwtX1Af.net
Announcing Rust 1.16
URLリンク(blog.rust-lang.org)
・staticとconstのlifetimeがデフォルトで'staticになった(RFC 1623)
// つまりこれが
const ENC: &'static [u8] = b"0123456789ABCDEF";
// こう書ける
const ENC: &[u8] = b"0123456789ABCDEF";
・consider using an explicit lifetime的なメッセージを廃止(不正確な内容を吐くことがあるから。将来安定すれば復活の可能性あり)
・cargo checkが追加(実際にコンパイルせずにコンパイルが通るかの検査だけを行う。cargo buildより時間の短縮が見込める)
・Cargo.tomlのpackage.categoriesがstableでも有効に

692:デフォルトの名無しさん
17/03/17 21:17:58.70 OBbyZsQw.net
b‘\x0a‘を”a”に一発で変換する関数ってライブラリにある?自分で書かないと無理?

693:デフォルトの名無しさん
17/03/17 21:33:20.90 bRwtX1Af.net
format!("{:x}", b'\x0a')

694:デフォルトの名無しさん
17/03/17 22:53:52.43 OBbyZsQw.net
>>681
マジでありがとう
こういうときはformatなのね

695:デフォルトの名無しさん
17/03/18 00:10:31.46 c1jSzzlC.net
cargo checkサブコマンド、エラー内容によっては挙動がおかしいんだよね。
cargo test --no-runなら完走する。それかrustcは問題ないから直接rustc叩く。
infinite typeが循環してるとrustcが止まらないのと組み合わさると
rustcがcargoに制御返さない→cargoが無言決め込むになって何が起こってるのかわからなかった。
>>682
自前で弱い動的型付け言語並みのto_string()実装しても良いんだぜ?

696:デフォルトの名無しさん
17/03/18 01:29:52.32 ZU/olwx/.net
標準ライブラリでは任意の記数法(62進数とか)を扱えないから自前でフォーマッタを定義してちょいちょいする羽目になることがある
std::fmt::fmt_radixは1.9で消えちゃったから、この手のものを公式で提供する気はなさそうだし

697:デフォルトの名無しさん
17/03/18 02:04:48.97 sCZDN2Pv.net
Hideyuki Tanakaさんのツイート: "URLリンク(t.co) 多くのベンチでRustがC++より高速なコードになってきたみたい。"
URLリンク(twitter.com)

698:デフォルトの名無しさん
17/03/18 10:03:15.93 cTWPUp3Z.net
>>685
いいね

699:デフォルトの名無しさん
17/03/18 10:48:58.61 HHPgXzoi.net
vec![“data”,“chou-data” ...みたいなのがあって
出現する要素の数をカウントする一番賢い方法ってなんじゃろ?

700:デフォルトの名無しさん
17/03/18 10:53:52.98 ZU/olwx/.net
vec.iter().filter(|&&s| s == "predicate").count()
とか?

701:デフォルトの名無しさん
17/03/18 11:13:48.52 HHPgXzoi.net
要素全てのカウントで
“data”は3回 “chou-data”は20回という情報が欲しいです
mutなHashMapでシコシコカウントですかね?

702:デフォルトの名無しさん
17/03/18 11:26:04.35 G5NG4rX0.net
multisetは使えない? 外部クリートを使うことになるけど

703:デフォルトの名無しさん
17/03/18 11:36:10.64 Y4C9s3ir.net
てかそもそもどういう操作にどのくらいの計算量を要求しているのか言ってくれないと答え損にしかならないというか

704:デフォルトの名無しさん
17/03/18 11:40:29.03 DBFuVmGN.net
要素→int のマップを用意して、配列の頭から走査して行って出現ごとにインクリメントが正道じゃね。

705:デフォルトの名無しさん
17/03/18 11:49:38.08 HHPgXzoi.net
ありがとうございます
とりあえずmultisetのソース見て勉強してきます

706:デフォルトの名無しさん
17/03/18 18:38:07.11 zyxHQlVL.net
“data”と“chou-data”の2種類しかないなら一方だけ数えて全体の要素数から引けば両方求められるんじゃね

707:デフォルトの名無しさん
17/03/18 19:49:33.18 PBtATWqK.net
ゲームとか作るのにはまだつらい感じ?

708:デフォルトの名無しさん
17/03/18 22:51:11.48 kQkqB4BZ.net
ss

709:デフォルトの名無しさん
17/03/18 23:36:17.52 Cy4FObwW.net
そういえばコレクション操作で統計用の述語足りてないよね。
他にもあらゆる標準ライブラリ的なものが足りてないからそういうライブラリばかり作られてるんだけど。
>>695
pistonに一通りある。

710:デフォルトの名無しさん
17/03/19 06:16:46.07 Q49RXSlY.net
Nightlyでcargo updateをしようとしたら
thread 'main' panicked at 'called `Option::unwrap()`
云々とか出てきて何事かと思ったら、どうやらRust TeamがGitの操作をミスってnightlyが壊れてたらしい
URLリンク(github.com)

711:デフォルトの名無しさん
17/03/21 23:01:00.46 hxyeHBes.net
高階関数に渡す述語のinline属性の指定にかかわらず
そこだけ必ずインライン化するか必ずインライン化しないか指定する方法ない?
Option::map_or_elseに渡すdefault引数とf引数がinline属性付いてるけどインライン化させたくないんだけど。

712:デフォルトの名無しさん
17/03/24 07:34:18.46 yNGhLANb.net
Stack Overflowの調査でまたしてもRustが最も好まれている言語になった
URLリンク(stackoverflow.com)
が、エンタープライズでの採用例が少ないのだからユーザのうち好んで使っている人の割合が高まるのは当然っちゃ当然だわな

713:デフォルトの名無しさん
17/03/24 08:53:30.74 mOA6Vf99.net
みなさんfloatのベクタのソートについてどう思ってるの?

714:デフォルトの名無しさん
17/03/24 14:35:58.01 pHNq00OZ.net
>>683
こば?

715:デフォルトの名無しさん
17/03/24 19:39:57.65 YSCc9yI+.net
>>700
良い言語なんだけどまだ安定感が足りない感じなんだよなぁ、web系だとclojureがイミフな位安定感あるのと違って
rustはもっと期待されている分バージョン間の差違に敏感な用途が多いからじゃないのかと思うけど。

716:デフォルトの名無しさん
17/03/25 03:50:37.57 BrrX4e7P.net
Tokio-minihttp is number 4 in TechEmpower Round 14 Preview : rust
URLリンク(redd.it)

717:デフォルトの名無しさん
17/03/30 16:59:39.44 mKbsz9A+.net
// 例1
if let Some(ref mut x) = self.x {
  // ...
  if x.is_hoge() {
    self.x = None; // borrowck激おこ
  }
  foo
} else {
  // ...
  bar
}
// 例2
let ret;
if let Some(ref mut x) = self.x {
  // ...
  ret = foo;
  if ! x.is_hoge() {
    return ret;
  }
} else {
  // ...
  return bar;
}
self.x = None; // おこらない
ret

718:デフォルトの名無しさん
17/03/30 17:03:13.41 mKbsz9A+.net
>>705ミス
// 例1
if let Some(ref mut x) = self.x {
  // ...
  if x.is_hoge() {
    self.x = None; // borrowck激おこ
  }
  foo
} else {
  // ...
  bar
}
// 例2
let ret;
if let Some(ref mut x) = self.x {
  // ...
  ret = foo;
  if ! x.is_hoge() {
    return ret;
  }
} else {
  // ...
  return bar;
}
self.x = None; // おこらない
ret

719:デフォルトの名無しさん
17/03/30 18:52:42.70 mCoqxFE9.net
え?それが何だというの?

720:デフォルトの名無しさん
17/03/30 19:02:31.30 VKjElo3D.net
ボローチェッカーのせいで読みづらいコードを書かされるって話じゃね?
てかこんな風に書けるのか。今までunwrapで無理矢理対応してたわ

721:デフォルトの名無しさん
17/03/30 19:45:59.94 Gp+R1RG2.net
>>708
borrowckなしの状態よりむしろ危険になってて悲しい

722:デフォルトの名無しさん
17/03/30 21:09:15.78 JBiI28RD.net
C++だとprivateにしてアクセサ付けろって言われるのに
rustだと必要なときだけ、って感じなのってなぜ?

723:デフォルトの名無しさん
17/03/30 22:29:46.32 s+CP+YQd.net
>>710
C++でも言われないよそんな事

724:デフォルトの名無しさん
17/03/30 23:51:37.90 UVGuKdEr.net
URLリンク(www.textdrop.net)
URLリンク(google.github.io)
これとかは一昔前ということ?

728:デフォルトの名無しさん
17/03/31 08:31:32.16 kyVktr8w.net
c++スレで聞けって感じだね
ここの住民のように最近の言語しらんのだ。ありがとう

729:デフォルトの名無しさん
17/03/31 09:35:15.35 CFLp8HcF.net
>>710
rustのラッパー系が持ってるget_ref/get_mut/into_innerはアクセサとは目的が違うよ。
それと、他言語のprivateなフィールドはrustだとinterior mutabilityになるけどこれは必要だから。
>>713
>大昔:public/privateの概念なく、どこからでも何でもアクセスあり
俗にカプセル化の一言で説明される全ての隠蔽は60年代~70年代からあるよ。
>>714
C++はストラウストラップのオブジェクト指向の聖遺物。rustは宗教(パラダイムと設計思想)が違うし、
「ストラウストラップのクラス嫌やねん」が今の主流派だからそれに属するrustを見てC++の流儀が古いかどうかは言えない。
たとえば、最近のJVM言語がフィールド定義すればアクセサ自動定義するのは「メソッド記法面倒くさい」と
「C++系の流儀のjavaとシームレスに通信するため」の二点を同時に満たせるからであって、
こういうJVM言語はイマドキな考え方とC++系の昔からある考え方を両方備えてるからまだ古くなってない。

730:デフォルトの名無しさん
17/03/31 12:21:13.04 8wrz3vyb.net
>>714
言語自体はもう新興言語というほど新しくもないC++やJavaは修飾詞つけるのが正義なんじゃない
それ自体は別に文句ないし、自分もそれらの言語を使う時は率先して付けてる
rust, go, swift, nim, kotlinみたいな最近隆盛してる言語は付けないのが文化だと思う
デフォルトのアクセス権限がprivateだったりするヤツもいるから複合的な理由だけど

731:デフォルトの名無しさん
17/04/01 09:03:12.10 xsH2QUDo.net
コンパイル通すのに必死で、最適化まで考える余裕がない

732:デフォルトの名無しさん
17/04/01 11:27:53.05 xsH2QUDo.net
xml parseしたいけどserde使えばよい?

733:デフォルトの名無しさん
17/04/01 11:37:09.88 yqxqzJbW.net
serdeってDOMじゃなかったっけ
DOMでいいならserde一択だとは思うけど

734:デフォルトの名無しさん
17/04/01 13:13:16.49 dZXDeDc3.net
serde_xmlってあまり活発に開発されてる感じはしないよなあ。いまだにserde 0.8に依存してるし
まあ、DOMツリーを得たりstructに読み込んだりするにはserde_xml、ストリームを扱うのならxml-rsってところじゃないかねえ

735:デフォルトの名無しさん
17/04/01 13:25:53.82 ShBKdKpe.net
domでおけ <


736:デフォルトの名無しさん
17/04/01 14:14:43.48 yqxqzJbW.net
Issues読んでたら、serde 0.9はこっちで対応してるからいいんじゃねって雰囲気でワロス
URLリンク(github.com)

737:デフォルトの名無しさん
17/04/01 20:06:49.50 xsH2QUDo.net
やっぱ現代的言語としては標準ライブラリが弱すぎじゃない?
C++よかましだろうけど

738:デフォルトの名無しさん
17/04/01 20:35:17.04 /2Cak4ys.net
探せばあるけど野良クレート頼りな感ある
C++よかましだけど

739:デフォルトの名無しさん
17/04/01 21:26:19.10 xsH2QUDo.net
雰囲気的にnodeとかに近い感じかなぁ

740:デフォルトの名無しさん
17/04/01 22:33:38.44 cPS3ohZQ.net
標準ライブラリは最大公約数的な最小限のパーツに押さえるというポリシーだしcrates.ioの使用が前提になってる

741:デフォルトの名無しさん
17/04/01 22:45:09.77 dZXDeDc3.net
0.x時代はnumもrandもlogもstdの一部だったしね。こっちの方が破壊的変更がしやすいとかなんとか
今のstdですら、@alexcrichtonがio::Cursorの実装を後悔していたりするし(↓)
URLリンク(github.com)

742:デフォルトの名無しさん
17/04/02 00:14:26.80 4ErkdvW9.net
>>724
弱すぎるけど既存の標準ライブラリの設計も実装も結構ひどいところがある。
だけど、rustはcoreライブラリ書くのに向いてるから結局必要なら自分で実装しちゃう。
ネイティブスレッド一々作らせずにthread poolくらい標準で用意しろと思うけど。
>>727,728
cargoで一番センス悪いのがcrates.io前提とalexcrichtonだと思う。

743:デフォルトの名無しさん
17/04/02 00:47:10.72 YQEfEn7s.net
Alex Crichtonになんの恨みがあるんだwww

744:デフォルトの名無しさん
17/04/02 08:00:17.30 GW9gqzFE.net
no_stdをデフォルトにしようという極右派もにいてそうw
標準を強化しろってのも、標準は要らないってのも宗教だから無宗教の日本人らしく遠目に眺めてる

745:デフォルトの名無しさん
17/04/02 10:12:44.61 PP0pKPr+.net
>>730
TOKIOの名を騙った恨み

746:デフォルトの名無しさん
17/04/02 10:23:41.85 wHW/bvWX.net
> cargoで一番センス悪いのがcrates.io前提
自前のcrate作る時は名前の競合とか考えるの面倒だから
[dependencies]
hoge = { git = "URLリンク(github.com) }
で済ましてるわ
今時、crates.io前提だけで組み上げる輩もおるまい

747:デフォルトの名無しさん
17/04/02 23:14:29.59 SJJzQWRj.net
>>733
マルチプロジェクトで依存crateの数が多いとか、
他言語にも依存するとか、ローカルにしか無いcrateとオンライン上に
あるcrateの両方に依存するとか、
他エコシステムとの協調苦手(他エコシステムと連携するadhocで泥臭いcrate書いて
cargoでラップする構造にして隠蔽する必要がある)とかあるからそれだけじゃ上手くいかんよ。
実際にServoが色々壁にぶつかってissue投げまくってそっち優先で対処してるからServoはなんとか出来てる感じ。
言語は良いのに他がダメだから自分で対処できる人以外置いてきぼりで学習コスト高いと言われるんだと思う。
言語仕様もextnt,region,effect,zone(arena)とか一切説明なしに全部の文脈でlifetimeとかいう謎の語を使ってるしね。

748:デフォルトの名無しさん
17/04/03 01:00:40.90 JUppntkg.net
他エコシステムとうまく連携できる言語見たことない

749:デフォルトの名無しさん
17/04/03 01:23:46.19 UPf59owC.net
言語ごとのエコシステムなんて、OSのパッケージマネージャの邪魔しかしてねーだろ
ユーザーから見たら迷惑千万

750:デフォルトの名無しさん
17/04/03 05:55:


751:44.20 ID:u5wlFHfm.net



752:デフォルトの名無しさん
17/04/03 10:11:16.31 8UfIZmop.net
>>735
build.rsに他エコシステムと連携するプラグイン書けるrustはマシな方よな
Javaのgradleも頑張ってる方だけど言語公式じゃないし、gradleの本質はJavaじゃなくgroovyだし

753:デフォルトの名無しさん
17/04/06 22:50:56.99 optS43ym.net
Libs teamが何かissueを投げまくってる
URLリンク(github.com)

754:デフォルトの名無しさん
17/04/08 11:31:26.42 mTwYWLsL.net
Rustはライブラリ戦略で失敗、2.0を迎えずにUbuntuのUnityと同じ運命を辿ると断言しよう。

755:デフォルトの名無しさん
17/04/08 11:40:03.17 GbqpuLIm.net
そうですか

756:デフォルトの名無しさん
17/04/08 12:53:41.18 R3xK1J5N.net
mozillaってのが心配すぎる

757:デフォルトの名無しさん
17/04/08 12:59:38.91 8ssaps+e.net
クソモジラはブランドにならないと思ったら容赦なく捨てるからな。

758:デフォルトの名無しさん
17/04/08 13:40:25.63 ZW/CIt37.net
FirefoxOSは命名の時点で失敗が見えていた
かといってよりマシな名前も思いつかない

759:デフォルトの名無しさん
17/04/08 14:37:09.60 59elDVKi.net
GoogleだとMITやApacheに譲渡するし、Appleだと何事もなかったように切り捨てるけどな
Mozilla Thunderbirdみたいに迷走した後にまた統合するんじゃないのw
個人的にはコミュニティベースのOSSで生き残ればどうでもいいわ
Apacheは斜陽だからあそこへの譲渡はちょっとなぁと思う

760:デフォルトの名無しさん
17/04/08 14:42:54.10 GbqpuLIm.net
クソ言語くん最近見かけなかったから心配してたけど、健在なようでなんか安心したわ

761:デフォルトの名無しさん
17/04/08 15:18:48.99 59elDVKi.net
そうですか

762:デフォルトの名無しさん
17/04/08 16:24:57.82 1hxGv39C.net
低級言語として発展してくれる事を願う

763:デフォルトの名無しさん
17/04/08 16:35:35.04 GbqpuLIm.net
WebAssembly向け言語としても推しているみたいだしその辺も期待できそう
既にCに慣れ親しんだシステムプログラマと比べて、Webのフロントエンジニアの方が訴求しやすそうだし

764:デフォルトの名無しさん
17/04/08 16:35:48.93 Ay5kOBNO.net
ぶっちゃけシステムプログラミングでも組込でもなく
wasm向け言語として定着しそうな感ある>Rust

765:デフォルトの名無しさん
17/04/08 17:04:37.50 mTwYWLsL.net
Rust以外の"新興言語"でwasmをまともにサポートできてる言語ってあるの?

766:デフォルトの名無しさん
17/04/08 17:06:01.24 mTwYWLsL.net
げ、ID被った
アウアウカーなのかよお前!!!

767:デフォルトの名無しさん
17/04/08 19:23:15.91 R3xK1J5N.net
ここまで出来てればコミュニティーベースでもいけるのかなぁ。
お金ないとオープンソースなんて無力なイメージなんだが

768:デフォルトの名無しさん
17/04/09 00:35:44.07 C+4/Iu4N.net
趣味で使ってる人はRustで何作ってるの

769:デフォルトの名無しさん
17/04/09 01:13:01.86 yAkJU/wS.net
>>754
トランプ52枚を4人に配るってのを作りたかった
乱数生成で挫折した

770:デフォルトの名無しさん
17/04/09 01:34:48.16 +eXxcQKg.net
メルセンヌツイスタが有名

771:デフォルトの名無しさん
17/04/09 01:49:57.91 +k4JWPSD.net
えっそっから作るの

772:デフォルトの名無しさん
17/04/09 09:24:07.59 Q8Fz6A4a.net
>>754
某Web APIを叩いてる

773:デフォルトの名無しさん
17/04/09 09:43:37.83 T4S+/aed.net
mscgenをrustで作り直し、、、たかった
画像扱うライブラリで良い感じのものがなくて停滞なう

774:デフォルトの名無しさん
17/04/09 18:08:30.92 DtNkLoh6.net
結局でかい口叩いといて誰もRustでまともなもの書けてねえんだろ?
欠陥言語であることの証明だな

775:デフォルトの名無しさん
17/04/09 19:05:47.56 4Oj8Cnsa.net
iOS, Androidの共通ライブラリに使ってるわ
Cはイマイチだし、C++じゃ機能不十分で、他新興言語は動きます程度で使えん

776:デフォルトの名無しさん
17/04/10 08:59:38.76 GDyCY+n8.net
#[doc(hidden)]をprotectedの代用とする因習

777:デフォルトの名無しさん
17/04/10 16:20:24.40 RqOHyrbz.net
pub(restricted)で代用できないのか

778:デフォルトの名無しさん
17/04/11 02:06:18.61 hFdmRMY+.net
Rustの萌えマスコットキャラはまだかい?

779:デフォルトの名無しさん
17/04/11 05:26:24.28 YGNFjvB7.net
Ferrisがいるじゃない
URLリンク(www.rustacean.net)

780:デフォルトの名無しさん
17/04/11 18:18:05.18 XPIrDgkS.net
カニなのには意味あるの?

781:デフォルトの名無しさん
17/04/11 18:21:50.61 XPIrDgkS.net
crustacianか

782:デフォルトの名無しさん
17/04/11 21:57:25.49 yg0Uq9Gu.net
tree構造作るのがほんと厄介なんだけど、どうにかやりようあるの?
URLリンク(github.com)
URLリンク(github.com)

783:デフォルトの名無しさん
17/04/12 06:31:23.82 zsOpQD26.net
厄介なりにできてるんならやりようは存在してるんでないの
個人的にはDOM(Tree Object)は所有権を複数者に要求するRustに合わない構造だと思ってるから使わないけど

784:デフォルトの名無しさん
17/04/12 16:58:14.00 JkQ01euR.net
物理的にツリーなものでもデータ構造はツリーにしなきゃいいのかなぁ

785:デフォルトの名無しさん
17/04/12 20:11:46.82 UgFGccH2.net
Servoの中の人みたいにDOMでないと色々困るならDOMを作るけど、JSON, XMLをパースして操作するだけならツリーは辛い
ツリー操作に適した他言語を使う方が幸せじゃないかな、DOM操作は苦行だけど他のメリットを鑑みてRustを使うのも良いよね

786:デフォルトの名無しさん
17/04/13 13:41:01.33 eTJjP5LI.net
先生、rustが使いたいです、、

787:デフォルトの名無しさん
17/04/13 23:00:29.13 DmaD3ZLh.net
>>768
ツリーさわるのに直接、arenaとancestor意識しないといけないのか。
まあ、俺もこんなんだけど。
最近、tracing gc使ったら簡単なんじゃないかと思ってる。

stntax treeみたいに事前に全部の構造わからないとrustはつらいね。

788:デフォルトの名無しさん
17/04/14 18:06:23.00 4vbREvue.net
一応日本のコミュニティーらしきものあるんだね

789:デフォルトの名無しさん
17/04/14 23:18:47.00 l3/xlJJH.net
英語話せない原人特有文化

790:デフォルトの名無しさん
17/04/15 11:23:25.59 7FkW2H/i.net
あなたも原人なんでしょ?

791:デフォルトの名無しさん
17/04/17 10:19:07.90 Vk3u//l+.net
Rustなんてクソステマ言語使ってる時点でみんな等しく原人だから安心しろ

792:デフォルトの名無しさん
17/04/17 12:47:03.78 2mekMRo4.net
>>777
それはおかしい。
>>775>>776は英語を話せない人という文脈で原人という語を用いている。
したがって、rust使用者であることと原人であることの間に関連はない。

793:デフォルトの名無しさん
17/04/17 13:27:03.58 Vk3u//l+.net
俺から見ればクソステマ言語Rust使ってる時点で原人なの。
原人同士が英語喋れるかどうかで原人認定(原人視点)してるのが滑稽なの。
おーけー?

794:デフォルトの名無しさん
17/04/17 13:45:45.69 kHe1qBP+.net
完全に基地外でワロタ

795:デフォルトの名無しさん
17/04/17 14:00:48.95 NJsGU


796:HFQ.net



797:デフォルトの名無しさん
17/04/17 21:43:12.25 5RBrgFiu.net
昔pc原人てゲームあったよな?

798:デフォルトの名無しさん
17/04/18 14:25:16.72 avtppHhA.net
RLS now available on nightly
URLリンク(www.jonathanturner.org)

799:デフォルトの名無しさん
17/04/18 23:28:49.61 isZ+RH85.net
リリースニュースをコピペする奴がずっといるけど、それをどうしたいのか・・・
わざわざ過疎スレに貼らなくても、知りたい奴は普通に一次情報を追ってると思うよ

800:デフォルトの名無しさん
17/04/19 06:39:40.15 iVXI/rsk.net
>>784
お前のコメントよりは役に立つ

801:デフォルトの名無しさん
17/04/19 17:45:36.14 T5JpYnfb.net
一次情報追ってるやつからすると単純にマルチポストなんだよな
使った感想があるわけでもなし、タイトルとURLじゃなんの役にも立たん

802:デフォルトの名無しさん
17/04/19 18:55:17.11 6t85zhKK.net
Twitterの@rustlangとか雑多な情報が多いから、めぼしい情報を並べてくれるだけども十分

803:デフォルトの名無しさん
17/04/19 23:28:25.20 QKWiY+xs.net
1次情報追ってる奴よりそうじゃない奴の方が多いんだからいいんじゃね
何も書き込み無いスレだとユーザ居ない様に見えるし

ここ2chだよ?

804:デフォルトの名無しさん
17/04/20 00:46:43.55 Vb04xDKl.net
ここtwitterじゃないよ?

805:デフォルトの名無しさん
17/04/20 08:56:40.43 Cjpsv+ZG.net
>>784
しね

806:デフォルトの名無しさん
17/04/20 09:02:46.45 5tsEknBd.net
>>782
高橋せんせい、20年遅れのステマですか?

807:デフォルトの名無しさん
17/04/20 16:14:47.79 zhxiAG0o.net
>>768-773
ツリーとグラフを作る記事があった。

グラフとアリーナ型メモリアロケータ
URLリンク(hazama1616.blogspot.jp)
Rust でグラフ構造や木構造を作る
URLリンク(agtn.hatenablog.com)

808:デフォルトの名無しさん
17/04/21 08:10:49.54 OiVWjQVQ.net
いつの間にかSerdeが1.0になっててビビる
Lifetimeを用いたzero-copy deserializingとか胸が熱いな
URLリンク(github.com)

809:デフォルトの名無しさん
17/04/23 17:11:05.67 H4akHqoq.net
この言語, 普及すると思いますか?
自分は Scala と C++ やってたんですが、そういうバックグラウンドがない人がすぐ理解できるとは思えないのですが。

810:デフォルトの名無しさん
17/04/24 00:17:32.58 7O6+7hGx.net
>>792
arena使うとarena解放するまでnode残るから無駄にメモリ使うのよ。

811:デフォルトの名無しさん
17/04/24 00:32:48.88 6h5JoTUe.net
>>794
キラーアプリが出ればねぇ。
ちなみに俺は力不足・勉強不足でrustは使えない。
それこそ広まってからもっと真面目に勉強しようかなぁってところ。
でもほんと期待はしてる。

812:デフォルトの名無しさん
17/04/24 01:17:18.29 iqgOzto7.net
Firefoxがキラーアプリなんじゃないの?

813:デフォルトの名無しさん
17/04/24 02:32:17.00 Uhs7fpwP.net
ripgrepって高速grepがあるぞ
なお、早い理由のrust正規表現の中の人はGoogle製C++ Libの模様

dockerがgoで出来てても別段当時流行なかったし、rust適所を求めたい所存

814:デフォルトの名無しさん
17/04/24 10:05:04.89 Ce/YXV/H.net
grepがキラーアプリ…

815:デフォルトの名無しさん
17/04/24 10:45:03.83 wWNCwbd3.net
必要なのはキラーアプリではなくキラーフレームワークでしょ、Rubyにお


816:けるRuby on railsみたいな。例えば色んな意味で扱いやすく高パフォーマンスなRust製ゲームエンジンとか出たら流行るかも?



817:デフォルトの名無しさん
17/04/24 11:21:49.38 jmbJ/xCv.net
Web関連ではDieselがなかなか良さげなんだけど、MVCのMだけ優秀でも仕方ないしなあ……

818:デフォルトの名無しさん
17/04/24 12:54:52.94 7aHDyTtY.net
ブラウザはメモリバグらせるとすぐexploitされる魔境だからRustになったけど他にそんなところってないだろうし

819:デフォルトの名無しさん
17/04/24 13:51:36.49 37xJWuQr.net
rustで速く書くのってむずいよね

820:デフォルトの名無しさん
17/04/24 14:41:05.37 H47kwRKj.net
>>802
ブラウザに限らず不特定多数と通信するソフトウェアは攻撃される。
サーバソフトウェアやP2PソフトウェアもRustの安全性が役立つと思う。

821:デフォルトの名無しさん
17/04/24 14:44:54.65 YsR3dDij.net
てとはいえ大抵は「GCで良くね?」ってなるしなあ……
ブラウザはまさにそのGCと相性の悪い分野だからRustになるわけだけど

822:デフォルトの名無しさん
17/04/24 16:32:01.09 tbvSkh68.net
言語の特性は組み込みに最適ではあるんだけど、動きが鈍い業界だからねぇ
IoT絡みでスタートアップ企業が開発言語として採用とかあればもしかしたら一部ではやるかも。

823:デフォルトの名無しさん
17/04/24 17:56:13.42 RtQoS8U2.net
そういや、ライブラリとしてGCを提供する話はどうなったの?

824:デフォルトの名無しさん
17/04/24 18:20:04.27 A5CADFQV.net
機械学習で流行んないかな?
と思ったら leaf はもう開発停止してた。残念…

825:デフォルトの名無しさん
17/04/24 23:01:27.18 Af0Uvivz.net
regionによるメモリ管理自体が「tracing gcと併用しましょう」で結論出てるけど、
real-time javaくらいでしか実用化されてない代物だから
rust特有のメリットというと低レベルでも抽象度の高く書ける事と、
data raceをコンパイラが防いでくれることじゃない?

ただ、interior mutabilityは自分で面倒見るのと、
実際にはsemaphoreとRWLockだけじゃ使い物にならなくて
non-blockingやconcurent collectionやfuture・fork/join、
SIMDを利用しないといけないけどrustはライブラリ弱いのが弱点。

datetimeみたいな何やっても揉めるようなライブラリはいらないけど、
io streamやtext encode/decodeの様な汎用のもないから他人のgithubみてると再開発しまくってる。
こういう標準ライブラリにあるようなものすらなくていいとなるとやっぱり組み込みだよ。

bare metalやろうぜ!

826:デフォルトの名無しさん
17/04/25 00:11:02.98 Pw354+ah.net
>>754
ファミコンエミュ

827:デフォルトの名無しさん
17/04/25 01:15:27.81 82uAhcwa.net
>>801
Rocket良さそうじゃん
まだまだ発展途上だけど

828:デフォルトの名無しさん
17/04/26 05:04:32.67 o3HY2tae.net
何も作らず競技プログラミング

829:デフォルトの名無しさん
17/04/26 07:52:50.89 kOLZL9DX.net
ツリーで悩み続け、アリーナでツリーしてたけど、Rc<RefCell>にしたらかなり楽になった。(ボローチェッカー的に)
でも下手したら実行時に死ぬなんて、全然安全な言語じゃなくなってるのつらい

830:デフォルトの名無しさん
17/04/26 09:58:03.56 vpLTFLqL.net
>>813
コンパイルは目的じゃなくて手段だぞ
取り違えないように注意だ

831:デフォルトの名無しさん
17/04/26 14:03:28.41 JVsqiSk/.net
実行時に不具合起こすくらいならコンパイルで止められた方がマシ

832:デフォルトの名無しさん
17/04/27 13:02:01.11 UU6zBZQ+.net
Rust向きのデータ構造を学べそうな本


833:が発売される。 ただしコードがSMLなのでSMLを読める必要がある。 純粋関数型データ構造 https://www.amazon.co.jp/dp/4048930567 "Purely Functional Data Structures" の邦訳『純粋関数型データ構造』が発売されます http://d.hatena.ne.jp/ku-ma-me/20170316/p1 関数型言語での最適を考える:純粋関数型データ構造、Chris Okasaki http://www.injpok.tokyo/4048930567-functional-data-structure



834:デフォルトの名無しさん
17/04/27 14:46:59.61 1aP1zib4.net
Rustで面倒なのは所有権が曖昧だったり循環参照の可能性があるようなデータ構造でしょう

その本は、破壊的変更が無いorマイナーな関数型言語で効率の良いデータ構造をどう実現するかっていうのが主題のはず
Rustは破壊的更新もできるしinterior mutabilityもCellやRefCellで実現できるし、逆にGCが無いから対象領域からずれてる
面白い本だけど、Rustに直接役立つかは微妙

835:デフォルトの名無しさん
17/04/27 17:37:30.60xrM2MxeD.net
なるほどー
気になってたけど買わんでいいかな

836:デフォルトの名無しさん
17/04/28 02:50:31.12mEZ3JB/W.net
Announcing Rust 1.17
URLリンク(blog.rust-lang.org)

837:デフォルトの名無しさん
17/04/28 07:59:12.67Z9SVt9YO.net
>>819
くじけないなww
邪魔だからそろそろコテハン名乗れよ

838:デフォルトの名無しさん
17/04/28 08:13:14.38zzlMZhy4.net
↑なんなのこの変な人?

839:デフォルトの名無しさん
17/04/28 09:13:20.43HrVNNKWr.net
マルチポストがうざい

840:デフォルトの名無しさん
17/04/28 16:35:55.80QjsjY1pw.net
わざわざ出張してくるアンチって必ずいるよね

841:デフォルトの名無しさん
17/04/28 18:50:38.30VS+BUfpC.net
>>820
しね

842:デフォルトの名無しさん
17/04/28 19:44:43.43wIDo3kGW.net
何でお前らはわざわざ構ってちゃんに構っちゃうんだろうね

843:デフォルトの名無しさん
17/04/28 23:26:08.537tdFyaEw.net
Rustの作り手っつーかServoチームがどうやって木構造を実現してるか気になるな。

木が作れない言語とかCの置き換えになる訳がないから、どっかにカラクリがありそう。

844:デフォルトの名無しさん
17/04/28 23:29:09.90EB1hHvLp.net
pfdsはモナドとかそっちの話
ML系はtracing gc載ってるもんだと
考えていいからrustで苦労する部分は関係ない。

845:デフォルトの名無しさん
17/04/28 23:54:26.387tdFyaEw.net
つーかRustの中の人が「Data Structure in Rust」みたいな記事書けば解決する気がした。

846:デフォルトの名無しさん
17/04/29 01:08:36.27JJtwNZEl.net
Haskellみたいなイミュータブルなツリーを作ればいいんじゃないの?

847:デフォルトの名無しさん
17/04/29 02:09:39.72rB0Fvmgg.net
>>828
データ構造に関わるRust言語仕様については詳しい記事がある。
でも>>203によるとRustのデータ構造は発展途上だから
「Data Structure in Rust」は記事よりWikiの方が良いと思う。

Interior mutability in Rust: what, why, how?
URLリンク(ricardomartins.cc)

848:デフォルトの名無しさん
17/04/29 06:52:18.73gpBNKKlw.net
話題ないからって荒れてないで誰か>>819に構えよ
ずっとコピペしてんだぞ...

849:デフォルトの名無しさん
17/04/29 06:54:38.46itnDcJNc.net
時報みたいなもんだと思ってるし、特に必要ないけど別段いらないと騒ぐほどのものでもないし

850:デフォルトの名無しさん
17/04/29 07:23:49.26ml8UsgdM.net
SPAMとしても頻度的にたかが知れてるし

851:デフォルトの名無しさん
17/04/29 08:21:53.98rB0Fvmgg.net
>>831
Rust blogは巡回してないから新バージョンを知らせてくれるのはありがたい。
でも新バージョンに関するコメントを読みたければredditも読もう。
Cargoの新機能をコントリビュートした人が来ている。

The Rust Programming Language
URLリンク(www.reddit.com)
Announcing Rust 1.17!!
URLリンク(www.reddit.com)
Announcing Rust 1.17
URLリンク(www.reddit.com)

852:デフォルトの名無しさん
17/04/29 08:59:42.66odlCpz4e.net
>>831
メンヘラ臭い拒否反応だな。

853:デフォルトの名無しさん
17/04/29 09:25:50.464GuMMMYu.net
"foo" + "bar"
はOKな糖衣構文にしちゃえばいいのに

854:デフォルトの名無しさん
17/04/29 14:34:05.02TTyY7fIa.net
時報とは言い得て妙だな。6週間のリリースサイクルだし。

855:デフォルトの名無しさん
17/04/29 16:57:12.44S/2IADGO.net
>>836
それは意見がわかれるところじゃね?
暗黙の型変換は、知っている人には便利だけど、知らない人には解析困難な不具合の元になるじゃん?

856:デフォルトの名無しさん
17/04/29 16:59:38.96G5FLqmyn.net
型変換じゃなくて、リテラルに限ってはconcat!で置き換えるという意味じゃない?
どちらにせよ混乱の元には違いないが

857:デフォルトの名無しさん
17/04/29 17:20:18.00wKCke3eM.net
>>838
Scalaとかまさにその辺(implicit)で死に体だな。
rustもderefで似たようなことになるけど。

858:デフォルトの名無しさん
17/04/29 17:51:01.81KCJQ+KNC.net
前はderef先のメソッドがドキュメントになかったから結構阿鼻叫喚だった
Vecのiterってどこに定義されているのか分からなくて悩んだ記憶がある

859:デフォルトの名無しさん
17/04/29 22:41:34.26XAi4G4Te.net
rustdoc使いもんにならんから。だいぶマシになったけど。

860:デフォルトの名無しさん
17/04/29 22:48:33.12kikbE+mq.net
ドキュメントに嘘書いてる言語って早晩滅びる印象があるから
言語に機能足すより重要だと思うんでなんとかして欲しいところではある。

861:デフォルトの名無しさん
17/04/30 14:13:59.03dMKT6vJn.net
今のCargoの仕様だと、serdeとserde_deriveに依存する"serde" featureを作る、みたいなことが出来なくてクソ
Issue rust-lang/cargo#1286は放置されているし

862:デフォルトの名無しさん
17/04/30 15:06:58.47zu6P/YtU.net
自分でPR作っていいのよ?

863:デフォルトの名無しさん
17/04/30 15:10:11.47dMKT6vJn.net
Pre-RFCレベルで議論が止まってるのにPRを出しても、ほら、アレじゃん?

864:デフォルトの名無しさん
17/04/30 15:25:28.02yC307k3w.net
Rustという存在がそもそもクソなのにたかが1feature取り上げてクソっていうの滑稽だと思いません?

865:デフォルトの名無しさん
17/04/30 15:30:18.21dMKT6vJn.net
げ、召喚しちゃった

866:デフォルトの名無しさん
17/04/30 15:36:13.13yC307k3w.net
>>848
あんたも本当はRustなんて使い物にならないって分かってるんだろ?

867:デフォルトの名無しさん
17/04/30 16:10:58.91zu6P/YtU.net
議論進んでないけどissueではalexもいいじゃんって言ってるし、コードPR出したら話進むんでね
実装難易度を計ってないから実装大変なら議論をせっつくしかないけども

868:デフォルトの名無しさん
17/04/30 21:51:06.29cg8WUYRD.net
2017年のロードマップ見る感じ、
今はどっちかっていうと敷居下げるための開発がメインになってて、
細かい融通の効かないところを直す作業に回してるリソースは少なそうな印象。

869:デフォルトの名無しさん
17/05/01 11:29:01.79hzoMRY/L.net
裾野広げようとしたり敷居下げたりするとろくなことにならない

870:デフォルトの名無しさん
17/05/01 13:37:42.52DeKBxqzS.net
一昔前は閉鎖的、独善的にOSS作って製大


871:にやらかしたPJが多かったし、裾野を広げてくれた方が良いよ GNU周りなんて焼け野原ってレベルじゃねーぞ



872:デフォルトの名無しさん
17/05/01 14:12:45.45KtAp36Sz.net
Guileはmakeやgdbに組み込まれたしRは大成功じゃん__

873:デフォルトの名無しさん
17/05/01 14:53:36.49Hs34Q6fD.net
裾野広げると大火傷するのはその通りだが、敷居下げるのは必要じゃないのか?元が高すぎるって意味で。
そのためのLanguage Server Protocolだったり、コンパイルメッセージの改善だったりだと思ってるが。

874:デフォルトの名無しさん
17/05/01 23:46:06.84ZiZ/DZmA.net
rustcのエラーメッセージは親切すぎてjsonフォーマットで取得したときの短い説明くらいでもいいと思う。
javacの仕様に忠実で簡潔なメッセージみたいなのが仕様覚えた時最強よ

875:デフォルトの名無しさん
17/05/02 00:05:58.80Wqf9gHHS.net
プログラミング業務に従事する人の全てがプログラミング得意ではないってことだから最大の安全策(ヘボが1人でもいたら死ぬので)

876:デフォルトの名無しさん
17/05/02 01:06:19.38C2K+k/F2.net
今のメッセージはだらだらと出力垂れ流し過ぎで
注目してほしい所がどこか分かりづらいから
コード書けない人は元から解読不能じゃないの?

877:デフォルトの名無しさん
17/05/02 06:32:24.31hjAzwlgs.net
rustc --verbose-error
みたいなオプション付与するFR出そう(迷走感

878:デフォルトの名無しさん
17/05/02 18:52:28.66ul1GfwIs.net
error:の行だけgrepすれば

879:デフォルトの名無しさん
17/05/03 18:44:17.67joqUnMHM.net
リリースノートにある Stabilized APIs ってどういう意味?安定化?

API仕様は固定化されて、今後変更ありませんってこと?
それとも実装が改善されて、より安定しましたよってこと?

880:デフォルトの名無しさん
17/05/03 18:47:35.13joqUnMHM.net
あ、失礼
どうも単に「そのバージョンから追加されましたよ」って感じぽいね

881:デフォルトの名無しさん
17/05/03 19:08:10.33SEHmhXUn.net
nightlyで実装しててstableに入った感じ?
破壊更新ないとは言え、変わる/代替するAPIはあるんだろうねぇ

882:デフォルトの名無しさん
17/05/03 19:44:38.59joqUnMHM.net
> nightlyで実装しててstableに入った感じ?

[This is a nightly-only experimental API.]からのパターンもあるのかな?
[Unstable]が外れたとき Stabilized API ではあるみたい

例:
1.14から[Unstable]として存在してて
1.16からStabilized APIとされたstr::repeat

URLリンク(doc.rust-lang.org)
fn repeat(&self, n: usize) -> String
Unstable (repeat_str #37079)
Create a String by repeating a string n times.



URLリンク(doc.rust-lang.org)
fn repeat(&self, n: usize) -> String
1.16.0
Create a String by repeating a string n times.

883:デフォルトの名無しさん
17/05/03 22:57:01.88K7D8UWDQ.net
unstableだとAPIが変更される可能性があって、nightlyのrustcで明示的にfeature宣言しないと使えない、つまり、unstableなの覚悟して使うことしかできない
stableになるとnightly以外でも何もしなくても使える、かつ、rust 1.xの間は互換性が保たれることが保証されてる

884:デフォルトの名無しさん
17/05/03 22:58:45.11K7D8UWDQ.net
新しいAPIはunstableで入れていろいろな使い方を試し すことでAPIの問題を洗い出す
問題がなさそうならstableにする、と言う流れでAPIは追加されていく

885:デフォルトの名無しさん
17/05/03 23:39:38.56pt3eTQQ5.net
変更されうるのだとしたらもはや"stable"じゃないわな

886:デフォルトの名無しさん
17/05/03 23:53:59.46+mfvcDBb.net
>>862 > 「そのバージョンから追加されましたよ」 追加されるタイミングはnightlyだからそれはない。 unstable feature-gateいらなくなったって意味だと思う。



888:デフォルトの名無しさん
17/05/04 06:16:36.53RKPYINUc.net
破壊的変更に興奮するのはD言語erだけだしな。

889:デフォルトの名無しさん
17/05/04 15:59:11.46pmL645Ea.net
言語仕様を破壊的に変更します

890:デフォルトの名無しさん
17/05/05 20:57:36.19evgWhU4H.net
OpenGLまわり調べたんだけど、gliumという有力なやつが死んでて悲惨な感じ。

891:デフォルトの名無しさん
17/05/05 23:50:31.44YwW9QOYO.net
お前らもちゃんと回答しとけよな
Launching the 2017 State of Rust Survey - The Rust Programming Language Blog
URLリンク(blog.rust-lang.org)

892:デフォルトの名無しさん
17/05/06 00:09:45.35ia8ugx7T.net
>>871
古い。glとglutin使え

893:デフォルトの名無しさん
17/05/06 10:48:00.25RxOQwEqu.net
>>865-866
などと油断しているとマナーの悪いライブラリが現れて既成事実化パンチを食らわす

894:デフォルトの名無しさん
17/05/06 10:56:40.09KOSYyPxU.net
>>873
glutinも同じ作者だからしんでんじゃないの?

895:デフォルトの名無しさん
17/05/06 20:14:14.952tqhhaHc.net
[u8](ただの数値の配列)とバイナリデータ(画像とか動画とか)で別の処理をしたいのですが、バイナリ型みたいなものってないのでしょうか?

896:デフォルトの名無しさん
17/05/06 22:37:18.12MU54dFC0.net
>>876
rustは直接Read実装する設計だからStreamの概念そのものがないからない。
当然、その設計ではダメだからそこら辺やってるのはあちこちで車輪量産の重複祭りの無駄まみれ。

897:デフォルトの名無しさん
17/05/06 23:44:29.00btijA/Fa.net
これひとつとってもいかにRustが使えないかわかってくれるかな

898:876
17/05/07 00:00:41.878fnm7svP.net
>>877
えぇ…ないんですか…

899:デフォルトの名無しさん
17/05/07 00:53:05.68/2PQHse0.net
[u8]とバイナリって何が違うの?(無知)

900:デフォルトの名無しさん
17/05/07 01:39:18.20Qw7Hyr2c.net
>>876
struct Binary(Vec<u8>) みたいに強いtypedefするのが良いと思う

901:876
17/05/07 01:39:29.338fnm7svP.net
MessagePackみたいなやつを作ろうと思っているのですが、例えばMessagePackの場合こんなふうになると思うのですが
[1u8].to_msgpack() -> 0x91|0xcc|0x01
binary.to_msgpack() -> 0xc4|0xcc|0x01
こんな感じで出力するデータ(型情報の部分)を変えたいんです。
[u8]をラップする型を作るしかないのでしょうか?

902:876
17/05/07 01:43:28.968fnm7svP.net
>>881
やっぱりそうなってしまいますか…
標準ライブラリとかで代わりになる型とかがあれば良かったのですが…

903:876
17/05/07 01:46:59.728fnm7svP.net
あ、>>882の0xc4|0xcc|0x01は0xc4|0x0f|0xcc|0x01の間違いです

904:876
17/05/07 01:48:17.838fnm7svP.net
また間違えた…
0xc4|0x01|0xcc|0x01です…

905:デフォルトの名無しさん
17/05/07 02:03:35.41/2PQHse0.net
>>881の言う通り、newtype patternの典型的な適用対象だな

906:876
17/05/07 02:55:21.528fnm7svP.net
>>881の方法でやってみます!皆さんありがとうございました!

907:876
17/05/07 03:06:56.118fnm7svP.net
何度もすみません、struct Binary(Vec<u8>)をVec<u8>に戻すにはどうやればよいのでしょうか?

908:876
17/05/07 03:14:36.888fnm7svP.net
std::mem::transmuteを使ったら変換できたのですが、unsafeを使わずに変換できる別の方法はあるのでしょうか?

909:デフォルトの名無しさん
17/05/07 03:22:21.66/2PQHse0.net
l


910:et bin = Binary(vec); から戻すには、 let Binary(vec) = bin; または let vec = bin.0; 後者のletはなくても良い https://doc.rust-lang.org/book/structs.html#tuple-structs



911:876
17/05/07 03:52:33.928fnm7svP.net
>>890
ありがとうございます!タプルだったのですね!

912:デフォルトの名無しさん
17/05/07 11:17:30.56VPDa5WUk.net
URLリンク(blog.rust-lang.org)
「電池同梱はめんどくさいから代わりにAPIガイドライン作るぜ!お前らの書いたもの公式に認めて欲しいならこの通りに書けよ!」だってよ。
ほんとモジカスは傲慢の極みだな

913:デフォルトの名無しさん
17/05/07 11:22:13.8214wasV+G.net
普通だろ。

914:デフォルトの名無しさん
17/05/07 11:34:54.97VPDa5WUk.net
>>893
え、どこが?
最近の言語では当たり前になった電池同梱放り投げて自分でライブラリ書かず、
あまつさえ人に丸投げしておいて、その人の書いたものに文句つけるって最高に傲慢だろ。
Google(Go)だってそこまで傲慢なことしてねえよ。

そんで成果はSerdeみたく背乗りするんだろ?
ただのショバ代やみかじめ料で懐肥やすヤクザじゃねえか。

915:デフォルトの名無しさん
17/05/07 11:45:28.65VPDa5WUk.net
あーでもこれ元々のモジカスの商売のやり方だし、いつも通りっていえばいつも通りか。

916:デフォルトの名無しさん
17/05/07 12:04:33.68ddnrmDhK.net
Google社員はお帰りください

917:デフォルトの名無しさん
17/05/07 12:29:03.870mnoYXCa.net
電池てなに

918:デフォルトの名無しさん
17/05/07 12:39:58.75/2PQHse0.net
Serdeといえば、dtolnayがlibs teamに入るってよ
URLリンク(internals.rust-lang.org)

以前からlibs teamっぽいことしてるなとは思っていたが。これとか
URLリンク(github.com)

919:デフォルトの名無しさん
17/05/07 13:41:03.47yFu/STaX.net
人様の言語にただ乗りしてる奴がなんか言ってら

920:デフォルトの名無しさん
17/05/07 13:41:52.62Ca8+Q/ub.net
>>897
Rustを持て囃してるバカって電池同梱すらしらないで言語語ってんのか

921:デフォルトの名無しさん
17/05/07 13:47:52.30zdh+Rbcj.net
え、Rustって電池同梱じゃないの?ゴミじゃん

922:デフォルトの名無しさん
17/05/07 14:04:46.63T2T4uK8j.net
まさかRustがLLだとでも言うつもりか?

923:デフォルトの名無しさん
17/05/07 14:10:00.160LwsXYr3.net
Goはコンパイル言語だけど電池同梱に近いよね。

924:デフォルトの名無しさん
17/05/07 14:31:33.96sD8ZUjOP.net
(電池ください)

925:デフォルトの名無しさん
17/05/07 14:38:38.334a4zif1L.net
>>904
Rust team「自分で作れ」

926:デフォルトの名無しさん
17/05/07 15:35:02.86VGI2seLS.net
最近はなんでも充電池内蔵が主流になったから、買ってきたはいいけど乾電池切らしてて今すぐ使いたいのに使えねえええええええ、っていうアレは今どきの若者には例え話として通じにくいのかもしれない

927:デフォルトの名無しさん
17/05/07 15:42:01.72f0nSghKy.net
それが語源なのか
古いな

928:デフォルトの名無しさん
17/05/07 16:13:07.60sZJnoCfs.net
「電池付属してなかったから星1つ」なんてレビューはAmazonでたまに見る。

929:デフォルトの名無しさん
17/05/07 17:26:47.524ZC1qsBr.net
今時電池ついて言語使うのなんて言語マニアか通常では考えられない程の最適化が必要かつ、自分で出来る人だけ
本当にCの


930:代替なんだな



931:デフォルトの名無しさん
17/05/07 19:00:23.386aDVTTpe.net
>>892
つーかこのリンク先読んだら「電池同梱はめんどくさいから代わりにAPIガイドライン作るぜ!」なんて言ってない件。

- 使いやすい&見つけやすいライブラリは必要だが、それを標準ライブラリにしてしまうと言語が硬直化するよ(Scalaが昔はバージョンが上がるたびに標準ライブラリの破壊的変更でコードが壊れるとか言われてたなそういえば)
- なのでRustチーム内でライブラリチーム立ち上げて、それ系のライブラリをcargoのcrateとして提供するプロジェクトやるよ(crateなら言語のバージョンとライブラリのバージョンを独立に運用できる)
- 同時にAPIのガイドライン作って、標準crate内のライブラリとサードパーティのライブラリの使い勝手を揃えられるようにするよ
- crate cookbookとしてユースケースに対応したドキュメントまとめるよ

「電池同梱はめんどくさいから」なんてどこにも書いてないんですけど?それどころかめっちゃ至れり尽くせりなんですけど?

932:デフォルトの名無しさん
17/05/07 19:30:33.62/vTxYTBW.net
意外と大事な話だと思うんだよなこれって

素晴らしい言語だと書きやすくて保守もしやすいやろ?
プログラマの負担が下がってるはずやろ?
標準ライブラリなんてその気になれば
どんどん充実させるくらいわけないはずやろ?

933:デフォルトの名無しさん
17/05/07 19:31:06.86OLmdvIig.net
cargoって、依存ライブラリ(の依存ライブラリ)のバージョン指定が衝突したときはどうなるの?

934:デフォルトの名無しさん
17/05/07 22:54:21.84n+lNXLOL.net
>>912
同一のバイナリに別々のバージョンが混在することになる
ただしCargo.tomlで同一のlinksキーを持つパッケージ同士は混在させられないという制約があるから、foobar-sysみたいなcrateは別バージョンを混在させることができない
また同一crateの別々のバージョンの型同士の互換性はない(例えばserde 0.9でDeserializeをimplしてもserde 1.0からdeserializeできない)

935:デフォルトの名無しさん
17/05/08 00:17:48.86j5FwBoSL.net
>>913
へー、参考になるわ。ありがとう。
C用のリンカが絡んで来ない限りは混在できるって理解でいいのかな?
staticな変数を書き換えてると想定外なことが起きそう

936:デフォルトの名無しさん
17/05/09 01:43:09.71jo26XFAE.net
ラスト製看板ソフト is 何?

937:デフォルトの名無しさん
17/05/10 10:56:13.540hFJ5UkD.net
>>915
Servo
Dropboxの内側

この二年間判子でも押してんのかってくらい
これしか出てきてないやで。

938:デフォルトの名無しさん
17/05/10 11:13:52.88mMhExRU7.net
まじかよripgrepアンインストールするわ

939:デフォルトの名無しさん
17/05/10 11:15:57.020QYEWDu4.net
rustが出たのってもっと前だろ...
1.0から始めたにわか知識でモノを言うのはどうかと

940:デフォルトの名無しさん
17/05/10 12:47:54.37nbHcOJ7d.net
>>917
それって中身c++?

941:デフォルトの名無しさん
17/05/10 14:46:02.555JQ8qpGt.net
>>918
それ1系になってからまともなキラーアプリ出てないことの擁護になってねえぞ。

0系から脈々と続いてるキラーアプリって例えば何だよ

942:デフォルトの名無しさん
17/05/10 17:37:23.36rVDKC26c.net
ripgrepの速さの秘密はrust部分に無いって、誰か書いてなかったっけ?

943:デフォルトの名無しさん
17/05/10 19:19:59.40XATnWRVq.net
ripgrepの基盤であるregex crateはRE2から一部設計を借りているが実装そのものはpure Rust
そしてそのRE2との比較ベンチマークでは概ね優位な結果を出している
URLリンク(github.com)
まあこれだって、速さの秘密は設計であってRustではないと言えなくもないが、それを言い始めたらどんなものだってそうなるわけで……

944:デフォルトの名無しさん
17/05/10 20:29:48.23qFSf2ut1.net
ripgrepまじはやいな

945:デフォルトの名無しさん
17/05/10 22:15:45.77vC5mCQJ8.net
とはいえ導入の手間考えたらag使うわけでな?

946:デフォルトの名無しさん
17/05/11 00:31:42.381trPjqZb.net
配布してるバイナリ使えばよいのでは

947:デフォルトの名無しさん
17/05/12 22:13:56.60/qNs0s39.net
ビルドが成功せず困っています。
トレイトをVecに入れることはできないのでしょうか?
よろしくお願い致します。
URLリンク(play.rust-lang.org)

948:デフォルトの名無しさん
17/05/12 22:24:41.25ePjXpOIy.net
>>926
ほい
URLリンク(play.rust-lang.org)
TRPLのtrait boundのあたりを再読することを勧める
URLリンク(doc.rust-lang.org)

949:926
17/05/12 22:41:29.54/qNs0s39.net
>>927
ありがとうございます!
できるんですね!安心しました!
もう一度読み直してみます!

950:デフォルトの名無しさん
17/05/13 08:06:40.42xsq9/VMj.net
>>927
3.19. Traits
URLリンク(doc.rust-lang.org)
4.19. トレイト
URLリンク(rust-lang-ja.github.io)

章番号が違うと思ったら翻訳の方は1章がIntroductionだった。

951:デフォルトの名無しさん
17/05/14 08:52:33.34fadi1QDK.net
impl From<_> for XXXを実装した型をimpl From<ここ>に入れたいのですが、どのようにやれば実現できるのでしょうか?
昨日の夜からずっとやっているのですが解決方法が見つからずにいます。
よろしくお願い致します。
URLリンク(play.rust-lang.org)

952:930
17/05/14 12:26:08.29fadi1QDK.net
よく考えてみたら>>930でFromを実装しているのはXXXなんだからFrom<ここ>にいれることはできないですよね…

953:デフォルトの名無しさん
17/05/14 13:36:42.22pJQIemEX.net
>>930
やりたいのはこんなこと?
URLリンク(play.rust-lang.org)

954:デフォルトの名無しさん
17/05/14 13:37:18.02Md4a44U8.net
>>931
fromの中身をJSON::Array(v)にすれば???=JSONで通るよ
俺も初心者だからよく分かんないけど
enumをコピーしたいんだったら#[derive(Clone)]を使えばいいのかな?

955:デフォルトの名無しさん
17/05/14 14:39:39.74zrHRjUcE.net
>>932
T: Cloneは不要
URLリンク(play.rust-lang.org)
どうせならFromIterator<T>も実装しておくべきかかもな

956:930
17/05/14 14:42:29.11fadi1QDK.net
>>932
ありがとうございます!これです!これがやりたかったんです!
多分できないんだろうなと思って完全に諦めていました!
ありがとうございます!

957:930
17/05/14 14:45:46.69fadi1QDK.net
>>934
Clone無しにできるんですね!ありがとうございます!勉強になります!

958:デフォルトの名無しさん
17/05/14 14:46:26.59ZMLrc75/.net
てかserde_jsonで良くね?

959:930
17/05/14 15:05:42.81fadi1QDK.net
>>937
新しいシリアライズフォーマットを作っていたのですがどう実装していいかわからないところがあり、質問する際に回答しやすいかなと思ってJSONにして質問してみました!
serde_jsonは型情報が事前にわかってないとシリアライズ/デシリアライズできないと思い込んでいましたがそんなことないんですね!serde_jsonのソース見てみます!

960:デフォルトの名無しさん
17/05/17 19:26:14.20Tf+uq8In.net
cargo-cake - Cargo: packages for Rust
URLリンク(crates.io)
>A cake for celebrating Rust's birthday

961:デフォルトの名無しさん
17/05/17 21:11:51.51bY/Wnlnx.net
そろそろRustの誕生日なんだっけ?

962:デフォルトの名無しさん
17/05/18 09:57:29.68pE9H07RL.net
>>939
一番好きなOSSライセンスで配布されてて、入れねばと思った次第
このライセンス、もっと流行ってほしい

963:デフォルトの名無しさん
17/05/18 10:06:00.24f88CfZw6.net
こんなライセンスあるんだ
GPL股間でケツみたいなロゴ

964:デフォルトの名無しさん
17/05/18 19:45:14.251qJaUFOe.net
WTFって what the fuck かよって笑ったらホントにそうだった。

965:デフォルトの名無しさん
17/05/18 19:52:14.49KhU24P3y.net
NYSL(煮るなり焼くなり好きにしろライセンス)てのもあったなー

966:デフォルトの名無しさん
17/05/18 19:53:40.57/+P5IoOC.net
夏かC

967:デフォルトの名無しさん
17/05/18 20:36:37.7038KyjAHn.net
crate見てると、MITとApache-2.0のデュアルライセンスが多いね
なんか理由あるのかな? 単に他の人がそうしてるから?

ほかの言語のライブラリと比べると、BSDライセンスやGPLがもっと多くても良さそうな気がするんだけど

968:デフォルトの名無しさん
17/05/18 20:53:08.58fOFaQvk5.net
BSDって厳密には「BSD風」でないと権利元が違う所に行くんじゃないのけ
最新のBSDライセンスは変わってるのかもしれんけど
BSD風 = MIT な条項になるはずだからBSD風にするならMITで済ます方が楽だと思う

APLは広告表示を伝播させるウィルスライセンスだからGPL並みに嫌いだ...
だから、BSD風やMIT、しいては好き勝手を許すWTFPLを愛してる

969:デフォルトの名無しさん
17/05/18 21:56:20.62kFoUD79v.net
さすがにBSDっていったらnew BSDだよw
いつの時代からきたの

970:デフォルトの名無しさん
17/05/18 22:08:12.07H9PBwwNn.net
rustのオフィシャルcrateがMIT/Apache2.0にre-licenseしたときに core teamの人がいろんなcrateにrelicenseしないかとissueたててたからきっとその影響

971:デフォルトの名無しさん
17/05/18 22:09:14.25ohXqIolz.net
これだな
URLリンク(github.com)

972:デフォルトの名無しさん
17/05/18 22:17:01.6838KyjAHn.net
へー、ただの偶然や、なんとなくじゃないんだな

973:デフォルトの名無しさん
17/05/18 22:32:31.3738KyjAHn.net
もっと読んだら、こういう事か

Rustの主要ライセンスはApacheライセンスだけど、GPLv2互換にする為におまけとしてMITライセンスも付けてる
だからRustエコシステムの一環として、このcrateもデュアルライセンスにしてね

俺の中では、Apacheライセンスの方がマイナー感あるけど、こっちがメインらしい

974:デフォルトの名無しさん
17/05/18 22:43:24.79fOFaQvk5.net
>>948
new BSDという存在がなかった時代から来たよw
今はそんなライセンスになってんのな、流石に「BSD風」の面倒さはいつまでも保たなかったか

Apacheがまだ元気だった頃、Apache製のJava LibがAndroidなんかで大量に使われて一気に流行ったよな > APL
GPLv2だと商用で使えないけどBSD風/MITだと売名できないからって00年代にはよく使ってたわ

975:デフォルトの名無しさん
17/05/19 09:05:07.26r5Vu9+iD.net
Apacheはpull reqの著作権が譲渡されるのが便利だから使われてる

976:デフォルトの名無しさん
17/05/19 12:16:11.47Cc5/b8RU.net
Apacheの方が企業で使いやすいと聞いたことある
広告表示の伝播って何?

977:デフォルトの名無しさん
17/05/19 14:23:28.337dSH5YZb.net
GPLと違ってソースコード開示義務がないから、クローズドソース企業でもAPLソースを利用できる
MITと違って権利元の紹介/参照表示義務があるから、APLソースを作った企業は広告塔として利用できる
利用側、提供側の両方の企業にとってWin-Winだねぇ

PRの著作権が譲渡されるのが便利ってのは意味わからんけど
PR受領側がAPLにしてても意味ないし、PR発行側がAPLにしたら権利譲渡されないでしょ

978:デフォルトの名無しさん
17/05/19 16:01:37.09YSFiOlnd.net
URLリンク(www.viva64.com)
古い記事だが俺がずっとRustはクソ言語未満って言ってるのは正しかったと確信できた。

ここにいるクソモジラの工作員は百万回読んで反省しろ。

979:デフォルトの名無しさん
17/05/19 16:17:53.0300885lZ8.net
工作員とか言い出す辺り電波ちゃんか。

980:デフォルトの名無しさん
17/05/19 16:19:17.30YSFiOlnd.net
>>958
クソ言語を流行ってるように見せかけて害悪を撒き散らしてるのが工作員じゃなくて何なんだ?
実際に雇われてなくても工作員には変わらない。

981:デフォルトの名無しさん
17/05/19 17:19:26.35uFlt+gQT.net
>>957
確信出来たけどまたここに来ちゃうんでしょ~?

982:デフォルトの名無しさん
17/05/19 17:37:02.20YSFiOlnd.net
>>960
うっかりステマに騙されてこのスレに来た奴に本当の情報を教えて救う仕事があるからな。

983:デフォルトの名無しさん
17/05/19 20:18:17.49ICcQ+KKA.net
>>957
半分くらいで読む気なくしたけど序盤からグリーンスレッド云々とか言ってて「は?」って感じだし
途中でD言語の衰退とかに触れてるのはあまり関係ない話だし、
引き合いに出されてるベンチマークの結果は最新版では順調にC/C++に近づいてて色々笑える

984:デフォルトの名無しさん
17/05/19 21:05:47.66rqeuDXpP.net
二年も前の記事なんて引用するもんじゃないなww

985:デフォルトの名無しさん
17/05/19 22:56:06.99myVq12PI.net
>グリーンスレッド云々
C++の後継狙ってないなら絶対切ってない機能だから、これ切った時点でC++の置き換え狙ってないとか口が割けても言えないよな???
でこの体たらくかwwwwwww
ってことな。

>D言語の衰退
かつてCやC++の後継を狙った言語がことごとく結局技術的負債になってるが、Rustがそうならない理由どこにもないけどそれでも使うの???
ってことな。

>引き合いに出されてるベンチマークの結果
ソースなし擁護乙。

986:デフォルトの名無しさん
17/05/19 22:58:39.55ICcQ+KKA.net
>>964
箱ひげ図くらい読めるよな?
URLリンク(benchmarksgame.alioth.debian.org)

987:デフォルトの名無しさん
17/05/19 23:42:10.72R52jpALp.net
>>957
Vec<Rc<RefCell<Box<Trait>>>> に爆笑したわ
別名つけるなり構造体に押し込むなり色々やりかたがあるって自分の示したソース(しかもRedditて)で書かれてるし
そんなんC++でもやるだろ
つか個人的にはC++のテンプレートの方が記述ひどいわ

あと記事の最後の
「C++erは(中略)必要とあればRustを習得するのはすぐできるが、逆はほとんどありそうもない」
っていうのは全力でダウトぶつけたいわ。簡単なのは闇の軍団くらいだろ
逆に言えば「闇の軍団くらいになればRustなんていらない」っていうことなのかもしれんが

988:デフォルトの名無しさん
17/05/20 00:27:26.97Ff6K3/VM.net
>>965
Cの箱が潰れてただの線になってるのほんと笑う
C++にはかなり追いついている(というか中央値はほぼ同率か)が、Cだけは越えがたき壁だな

989:デフォルトの名無しさん
17/05/20 01:16:59.18FvSbl/DO.net
>>964
「ない」ばっかり、君日常会話も否定から入るタイプ?

990:デフォルトの名無しさん
17/05/20 07:19:30.94ByT4iV18.net
>>964
グリーンスレッドにあたるものってC++にはないよ。だからよりC++に近付いたんだよ。
もっとRustとプログラミング言語勉強しないとくそ言語かどうか判らないね~。
またRust勉強したら帰ってきてね

991:デフォルトの名無しさん
17/05/20 10:08:32.95POYpVYoy.net
goスレの俺のレスを工作員だと思って来たんだろうから、あっちでrustをディスっておいた

「ずっとRustはクソ言語未満って言ってる」のに確信持ってなかったとか驚いたゾ
根拠なくクソ言語未満って言ってたとかお前は原人かよぉ

992:デフォルトの名無しさん
17/05/20 17:57:16.26QYvr2rA8.net
>>969
そもそもの>>957の文が「グリーンスレッドを切ったんならC++の置き換えを狙ってるってことだよな?」という内容だからその点に限っては>>964は間違っていない

993:デフォルトの名無しさん
17/05/20 18:18:03.04FvSbl/DO.net
そもそもグリーンスレッドなんていらん

994:デフォルトの名無しさん
17/05/20 19:47:44.68FUP6GO5Q.net
グリーンスレッドのいる理由もいらん理由もわからなくて辛い

995:デフォルトの名無しさん
17/05/20 20:02:52.38yXBDkmxu.net
グリーンスレッドある=へーrustやるじゃん
ない=まぁ無くても…別にねぇ?

996:デフォルトの名無しさん
17/05/20 20:31:44.28HYrvvmg5.net
そりゃ要らんだろ。
擬似スレッドなんて。

997:デフォルトの名無しさん
17/05/20 21:08:20.63NqXZxUdZ.net
> グリーンスレッドある=へーrustやるじゃん
この頃はどういう背景だったんだろうねぇ、goroutineを真似てみたかった感じなのかね
同じものを実現することは不可能なわけで、それでグリーンスレッドイラネになったのなら必然だわな

998:デフォルトの名無しさん
17/05/20 21:29:09.331hsFVVTl.net
グリーンスレッドがあればGoと勝負する位置の言語としての存在価値ができた。
グリーンスレッドを捨てた結果、愚かにもC++に弓引くドンキホーテになった。

999:デフォルトの名無しさん
17/05/20 23:31:32.24FvSbl/DO.net
どんどんcpuコアが増えていくのにグリーンスレッドとか、、、

1000:デフォルトの名無しさん
17/05/20 23:38:34.66QYvr2rA8.net
よく分からんのだけど、グリーンスレッドが解決しようとしている問題ってコア数を増やせば解決できるような問題なの?

1001:デフォルトの名無しさん
17/05/20 23:57:14.86FvSbl/DO.net
>>979
あーそんなことは言ってない。cpuを有効活用してかないといけないのに今更グリーンスレッド持ち上げてもアレだよと。

1002:デフォルトの名無しさん
17/05/21 01:41:54.52DDrTaXD8.net
if let Some(a) = x && let Some(b) = yみたいに書きたい

1003:デフォルトの名無しさん
17/05/21 04:11:14.25cLRuMlqp.net
if let (Some(a), Some(b)) = (x, y)

1004:デフォルトの名無しさん
17/05/21 06:52:28.409L9dm7b/.net
>>977
このドンキホーテも真っ青な的外れな指摘よ
グリーンスレッド載せてもGo(goroutine)との勝負の土俵に上がれないってばよ

>>982
ぱっと見、()が多くてタイプ面倒そうでもっとシンプルにならんかなと思ったけど
letや&&なんかを何度もタイプするより短いんだな

1005:デフォルトの名無しさん
17/05/21 11:03:41.44HTknFc4w.net
システムプログラミング言語としてネイティブスレッドのサポートは必須なんだけど
標準ライブラリのIO系関数をネイティブスレッド、グリーンスレッドのどちらでも使えるようにすると
ネイティブスレッドで使ったときのオーバーヘッドが大きすぎると問題になった

グリーンスレッドとネイティブスレッドにそれぞれ別のIO関数用意するのだったら
標準ライブラリでやらなくても良いよねということになって
グリーンスレッドサポートはドロップされた

1006:デフォルトの名無しさん
17/05/21 11:21:50.34rlx7fyr1.net
URLリンク(crates.io)
trip finds 2channel-style tripcodes

2ch用ツールがcrates.ioに上がってるね。

1007:デフォルトの名無しさん
17/05/21 12:22:45.36HwsOwdy1.net
Rustには可愛いマスコットキャラいないの?

1008:デフォルトの名無しさん
17/05/21 12:47:53.53cLRuMlqp.net
>>985
もうメンテナンスされてないっぽいけどこっちの方が多機能そう
URLリンク(github.com)

1009:デフォルトの名無しさん
17/05/21 12:50:18.66cLRuMlqp.net
……と思ったけどよく見たら>>985は探索ツールか

1010:デフォルトの名無しさん
17/05/21 12:51:09.59hU2RwKDa.net
>>986
おれもユニティーちゃんみたいなのほしいんだが

1011:デフォルトの名無しさん
17/05/21 12:51:29.25hU2RwKDa.net
カニの擬人化

1012:デフォルトの名無しさん
17/05/21 13:07:17.24rlx7fyr1.net
>>986
カニのフレンズがいるって、このスレで見た

1013:デフォルトの名無しさん
17/05/21 13:09:35.76cLRuMlqp.net
Ferris the Crabは今のままでも十分可愛いよ

1014:デフォルトの名無しさん
17/05/21 13:30:02.02hU2RwKDa.net
フェリスたんがかわいく見えないのはまだラスタシアンになりきれてないからなのか

1015:デフォルトの名無しさん
17/05/21 13:32:15.48HwsOwdy1.net
いるのかと思ったらそのカニ非公式じゃねーか

1016:デフォルトの名無しさん
17/05/21 13:47:49.18rlx7fyr1.net
borrow checkerのマスコット
URLリンク(blog-imgs-10.fc2.com)

1017:デフォルトの名無しさん
17/05/21 14:04:48.149L9dm7b/.net
次スレ
URLリンク(echo.2ch.net)

1018:デフォルトの名無しさん
17/05/21 14:08:51.46hU2RwKDa.net
誰か絵心あるやついないのか

1019:デフォルトの名無しさん
17/05/21 15:13:30.592E7Z41P0.net
へ____ミ
へ..........ミ
へ____ミ

1020:デフォルトの名無しさん
17/05/21 15:13:59.692E7Z41P0.net
失敗

1021:デフォルトの名無しさん
17/05/21 15:14:22.402E7Z41P0.net
穴があったら埋めたい

1022:1001
Over 1000Thread.net
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 200日 12時間 1分 43秒

1023:1002
Over 1000Thread.net
2ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


──────────
《プレミアム会員の主な特典》
★ 2ちゃんねる専用ブラウザからの広告除去
★ 2ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
──────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
URLリンク(premium.2ch.net)

▼ 浪人ログインはこちら ▼
URLリンク(login.2ch.net)

1024:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています


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