Mozillaがリリースした、プログラミング言語「Rust」について語るスレです。
http://www.rust-lang.org/
https://github.com/rust-lang/rust
Servo
https://servo.org/
https://github.com/servo/servo
◆前スレ
プログラミング言語 Rust 2
http://echo.2ch.net/test/read.cgi/tech/1478023960
プログラミング言語 Rust 3 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2017/05/21(日) 14:04:29.55ID:9L9dm7b/442デフォルトの名無しさん
2017/08/03(木) 08:29:31.88ID:hrCRy9t8 組み込みスレ?
443デフォルトの名無しさん
2017/08/03(木) 08:39:41.14ID:563u4f2I444デフォルトの名無しさん
2017/08/03(木) 10:32:34.73ID:TRkbUvPZ rust 1.21.0使ってますが英語苦手なので日本語ページ見てます
https://rust-lang-ja.github.io/the-rust-programming-language-ja/1.6/book/if.html
このページの一番最後
「else のない if では、その値は常に () となります」とあるので
let x = 0;
let y = if x == 1 { 1 };
println!("{}", y);
って書いたんですけどbuildしてもエラーになります
error[E0317]: if may be missing an else clause
()になりませんどうしてですか?
https://rust-lang-ja.github.io/the-rust-programming-language-ja/1.6/book/if.html
このページの一番最後
「else のない if では、その値は常に () となります」とあるので
let x = 0;
let y = if x == 1 { 1 };
println!("{}", y);
って書いたんですけどbuildしてもエラーになります
error[E0317]: if may be missing an else clause
()になりませんどうしてですか?
445デフォルトの名無しさん
2017/08/03(木) 10:33:20.99ID:WxFDmNeE >>440
ちなみにkotlin/native 開発中だからそれでrustと同じ土俵に立てるよ。
llvmの中間コード吐けるようになる。
rustより学習コストは低くて関数型チックな言語構文使ってるから
kotlin vs rustが勃発するな。
問題はandroid開発者を取り込めるからユーザー数は圧倒的
IDEも標準が存在する。
という点で色々rustは不利。
rustはwebAssenbryあたりで本領発揮できればいいんだけど。
ちなみにkotlin/native 開発中だからそれでrustと同じ土俵に立てるよ。
llvmの中間コード吐けるようになる。
rustより学習コストは低くて関数型チックな言語構文使ってるから
kotlin vs rustが勃発するな。
問題はandroid開発者を取り込めるからユーザー数は圧倒的
IDEも標準が存在する。
という点で色々rustは不利。
rustはwebAssenbryあたりで本領発揮できればいいんだけど。
446デフォルトの名無しさん
2017/08/03(木) 10:35:36.32ID:WxFDmNeE447デフォルトの名無しさん
2017/08/03(木) 10:39:45.44ID:WxFDmNeE >>444
ごめんちゃんと読んでなかった
fn main() {
let x = 5;
let y = if x == 5 { () };
println!("{:?}",y)
}
これだと動くよね。型を() に統一しないとダメなんじゃない
ごめんちゃんと読んでなかった
fn main() {
let x = 5;
let y = if x == 5 { () };
println!("{:?}",y)
}
これだと動くよね。型を() に統一しないとダメなんじゃない
448デフォルトの名無しさん
2017/08/03(木) 10:52:53.58ID:TRkbUvPZ449デフォルトの名無しさん
2017/08/03(木) 16:58:16.30ID:cu622efE IntelliJ Rustプラグインが、(IDEの)公式プラグイン化した
ついでにちょっとおせっかいな表示も始めた
関数呼び出し部分に仮引数名を補完表示とか、省略された型宣言を補完表示とか
ついでにちょっとおせっかいな表示も始めた
関数呼び出し部分に仮引数名を補完表示とか、省略された型宣言を補完表示とか
450デフォルトの名無しさん
2017/08/03(木) 22:02:43.27ID:l/KHeBEE 有料化しなきゃどうでもいいかな
451デフォルトの名無しさん
2017/08/03(木) 22:11:43.17ID:ztpCIQ/J JetBrainsが開発に参加しているというだけでもそれなりに心強い
452デフォルトの名無しさん
2017/08/04(金) 09:17:26.55ID:plGTqVJg あのプラグインの作者、前にPR出したらクッソ丁寧なダメ出ししてくれた
PRコメントの数倍のレスが返ってきてビビったわ
引き続きコミュニティベースで発展するといいのう、MozillaもJetBrainsもあんま要らんことするでないぞ
PRコメントの数倍のレスが返ってきてビビったわ
引き続きコミュニティベースで発展するといいのう、MozillaもJetBrainsもあんま要らんことするでないぞ
453デフォルトの名無しさん
2017/08/04(金) 11:05:40.90ID:ZGf6UrbU >>452
個人的には language server protocolをちゃんと用意してくれたほうが幸せ。
vscodeで使いたいんで。
http://qiita.com/atsushieno/items/ce31df9bd88e98eec5c4
https://github.com/rust-lang-nursery/rls
個人的には language server protocolをちゃんと用意してくれたほうが幸せ。
vscodeで使いたいんで。
http://qiita.com/atsushieno/items/ce31df9bd88e98eec5c4
https://github.com/rust-lang-nursery/rls
454デフォルトの名無しさん
2017/08/04(金) 22:55:37.21ID:KlM1Xeqg >>444,446,447,448
型が一致してないからや。
if式のelse句省略して戻り値の型にunitが推論されるのに
thenの方の戻り値の型がunit以外になるからエラーになる。
たぶん、rustc --explain 0317すればクソ丁寧に教えてくれる
型が一致してないからや。
if式のelse句省略して戻り値の型にunitが推論されるのに
thenの方の戻り値の型がunit以外になるからエラーになる。
たぶん、rustc --explain 0317すればクソ丁寧に教えてくれる
455デフォルトの名無しさん
2017/08/05(土) 02:43:30.26ID:WbpcX2VW Windows用のtar.gzを落としてきて適当に解凍
.\rust\binへパスを張って
>rustc hello.rs
error[E0463]: can't find crate for `std`
error: aborting due to previous error(s)
>
えぇぇー・・・・w
.\rustcの中を見てもライブラリらしき物が見あたらないのでどこにいるのかと探したら
.\rust-std-i686-pc-windows-msvcの下にいた。.\rustc\libの下に移動したらコンパイルは
通ったがリンカがないと怒り出す
面倒なのでVC++のコマンドプロンプトからパスを張ってようやくコンパイル&リンクに成功
無事に実行出来た
というか実行ファイルがかなりでかいな。100KBくらいある。全部込みじゃしゃーないか
あと-vや-C link-args=が無視されているように見える
.\rust\binへパスを張って
>rustc hello.rs
error[E0463]: can't find crate for `std`
error: aborting due to previous error(s)
>
えぇぇー・・・・w
.\rustcの中を見てもライブラリらしき物が見あたらないのでどこにいるのかと探したら
.\rust-std-i686-pc-windows-msvcの下にいた。.\rustc\libの下に移動したらコンパイルは
通ったがリンカがないと怒り出す
面倒なのでVC++のコマンドプロンプトからパスを張ってようやくコンパイル&リンクに成功
無事に実行出来た
というか実行ファイルがかなりでかいな。100KBくらいある。全部込みじゃしゃーないか
あと-vや-C link-args=が無視されているように見える
456デフォルトの名無しさん
2017/08/05(土) 02:47:41.52ID:Q+GU1zzP そもそも今日日tar.gzなんてどこから落としてきたんだっていう
457デフォルトの名無しさん
2017/08/05(土) 03:11:33.75ID:WbpcX2VW 他のインストール方法ー→スタンドアロンなインストーラーにビルド済みを固めたtar.gzがある
458デフォルトの名無しさん
2017/08/05(土) 07:15:49.71ID:49wfyY1x 何らかの信念があって、rustupを避けてるわけ?
459デフォルトの名無しさん
2017/08/05(土) 16:01:00.22ID:WbpcX2VW オンラインによるインストールは可能な限り避けるようにしている。あとで環境の再現が必要になった時に詰む可能性がある
460デフォルトの名無しさん
2017/08/05(土) 16:18:44.06ID:CGuOYehU メモリ安全が重視されるのって、ハッキングとかに使われるから?
461デフォルトの名無しさん
2017/08/05(土) 16:22:20.12ID:uZdWE4Go 脆弱性になるからってのもそうだけど、単純にSEGVでプログラムが落ちるのを防ぐためというのもある
462デフォルトの名無しさん
2017/08/05(土) 16:31:03.26ID:CGuOYehU 代わりにunwrapで落ちまくり
いや、うそ
それ以外のバグだと落ちはしない?
いや、うそ
それ以外のバグだと落ちはしない?
463デフォルトの名無しさん
2017/08/05(土) 17:34:15.87ID:49wfyY1x メモリ安全とミドリ安全って似てるよな
464デフォルトの名無しさん
2017/08/06(日) 00:23:03.22ID:8w1+5d3W >全部込みじゃしゃーないか
msvc toolchainでstaticリンクになったっけ?
msvc toolchainでstaticリンクになったっけ?
465デフォルトの名無しさん
2017/08/06(日) 03:55:05.27ID:fFJNwhsI >>464
リンカにどんなコマンドが渡されているのか確認できないので詳細は判らない
リンカにどんなコマンドが渡されているのか確認できないので詳細は判らない
466デフォルトの名無しさん
2017/08/06(日) 03:55:59.27ID:fFJNwhsI あ、なんか変だ。訂正
× コマンド
○ オプション
× コマンド
○ オプション
467デフォルトの名無しさん
2017/08/06(日) 10:24:33.59ID:gzkOLnwH Rustの日本語書籍出る予定ないのかな?
468デフォルトの名無しさん
2017/08/06(日) 17:24:42.71ID:hteV9R0w469デフォルトの名無しさん
2017/08/06(日) 23:17:23.51ID:5q4qU5gd 書籍は情報が古すぎて当てにならんぞ。
文書化自体あんま力入れてないからソースコード読むのが一番早いよ。
文書化自体あんま力入れてないからソースコード読むのが一番早いよ。
470デフォルトの名無しさん
2017/08/06(日) 23:38:02.09ID:Q0UOjaQj 訳のレベルに関係なく出せば売れるからかな
需要が少なすぎて競争にならないから訳の質がいい物が出ない?
需要が少なすぎて競争にならないから訳の質がいい物が出ない?
471デフォルトの名無しさん
2017/08/07(月) 04:31:33.89ID:+587VfNE >>469
どのサイトのソースコード読むのがいいですか?
どのサイトのソースコード読むのがいいですか?
472デフォルトの名無しさん
2017/08/07(月) 04:33:15.84ID:lxGlucTV >>470
> 需要が少なすぎて競争にならないから訳の質がいい物が出ない?
そうじゃない
英語の理工学書の翻訳の質はここ20年ほどの間に明らかに著しく低下した
その原因として考えられるのは、訳者が使命感を持たなくなり単に副収入とかの経済的で利己的な目的で翻訳をするようになったことと
それ以上に訳者が大衆化したことも大きい(かつてだと理工学書の翻訳は、ほぼ完全にいわゆる一流大学の教授の専権事項だったが今は全く違う)
またそういう一流大学教官による訳書であっても、近年は、ゼミで原書を読ませて学生(院生?)たちに素訳を出させて適当につなぎ合わせて
訳書として出版したのでは?と疑われるレベルの訳すら出現しているのは、明らかに近年の訳者のモラルの低下(使命感の欠如)の例だろう
近年の訳の質の低下に関してもう一つ重要なファクターとしては、最近の訳者が英語(特に会話面で)は達者になったのかも知れないが
明らかに昭和後期の訳者たちよりも日本語の文章力が低下していることだ(その結果として訳の日本語文が読むに耐えないレベルに堕している訳書が少なくない)
> 需要が少なすぎて競争にならないから訳の質がいい物が出ない?
そうじゃない
英語の理工学書の翻訳の質はここ20年ほどの間に明らかに著しく低下した
その原因として考えられるのは、訳者が使命感を持たなくなり単に副収入とかの経済的で利己的な目的で翻訳をするようになったことと
それ以上に訳者が大衆化したことも大きい(かつてだと理工学書の翻訳は、ほぼ完全にいわゆる一流大学の教授の専権事項だったが今は全く違う)
またそういう一流大学教官による訳書であっても、近年は、ゼミで原書を読ませて学生(院生?)たちに素訳を出させて適当につなぎ合わせて
訳書として出版したのでは?と疑われるレベルの訳すら出現しているのは、明らかに近年の訳者のモラルの低下(使命感の欠如)の例だろう
近年の訳の質の低下に関してもう一つ重要なファクターとしては、最近の訳者が英語(特に会話面で)は達者になったのかも知れないが
明らかに昭和後期の訳者たちよりも日本語の文章力が低下していることだ(その結果として訳の日本語文が読むに耐えないレベルに堕している訳書が少なくない)
473デフォルトの名無しさん
2017/08/07(月) 07:28:08.80ID:PGcD2DjA というかそもそも書籍を出す以上利益を見込むわけだけどRustの書籍が出たところで到底コストに見合う利益をあげられるとは思えん
474デフォルトの名無しさん
2017/08/07(月) 08:02:25.73ID:ElcK6Dg+ 唐突に小論文もどきが発生していて笑う
steveklabnikやcarols10centsは大学の教官ですらないだろうけれどそれは良いのか
steveklabnikやcarols10centsは大学の教官ですらないだろうけれどそれは良いのか
475デフォルトの名無しさん
2017/08/07(月) 08:15:17.32ID:rE42Biik 「監訳者」がいるが「訳者」が書いてない本って、やっぱそんなもんだろうね
あるいは機械翻訳をちょこっと手直ししただけとか
名前を表に出すって内容に責任を持つってことだから、名前重要よ
あるいは機械翻訳をちょこっと手直ししただけとか
名前を表に出すって内容に責任を持つってことだから、名前重要よ
476デフォルトの名無しさん
2017/08/07(月) 08:29:28.94ID:+587VfNE Rustの入門書サイトなどおすすめありますか?
>>472
なにも今にはじまったことじゃない
>ゼミで原書を読ませて学生(院生?)たちに素訳を出させて
>適当につなぎ合わせて訳書として出版したのでは?
プログラミング言語C とてそうやって作られた、といわれている
なにも今にはじまったことじゃない
>ゼミで原書を読ませて学生(院生?)たちに素訳を出させて
>適当につなぎ合わせて訳書として出版したのでは?
プログラミング言語C とてそうやって作られた、といわれている
478デフォルトの名無しさん
2017/08/07(月) 08:32:44.78ID:ONon98mg 典型的な老害で笑える
ピアソンの技術書とか今出したら炎上間違いなしってレベルの翻訳もあっただろ
Googleのエンジニアですらやばい翻訳とかするのにたかが大学教授如きが完璧に翻訳できる訳がない
ピアソンの技術書とか今出したら炎上間違いなしってレベルの翻訳もあっただろ
Googleのエンジニアですらやばい翻訳とかするのにたかが大学教授如きが完璧に翻訳できる訳がない
479デフォルトの名無しさん
2017/08/07(月) 12:03:28.98ID:NP3377Zu >>476
公式
公式
480デフォルトの名無しさん
2017/08/07(月) 16:12:50.80ID:lxGlucTV >>478
> 典型的な老害で笑える
> ピアソンの技術書とか今出したら炎上間違いなしってレベルの翻訳もあっただろ
外資系や新興の出版社が出す本は訳書に限らず酷いのは昔から
編集担当者が日本語文のチェックを碌にしないしそういう新興出版社は人脈を持っていないゼロからのスタートだから良い訳者が無かったからね
問題は、近年は、老舗と言える理工系出版社から出されている訳書でも翻訳の質が急激に堕ちて来たことだ
その原因は翻訳の大衆化と訳者のモラルや使命感の低下にあると言ってるのだよ
> Googleのエンジニアですらやばい翻訳とかするのにたかが大学教授如きが完璧に翻訳できる訳がない
馬鹿ですか?
そんな高度で難解な技術書など存在しても極く一握りで、そんな極めて特殊な例を取り挙げて反論するなどナンセンス
そんなナンセンスで反論だと思ってる君の知性を疑うね
そもそもそんな難解な技術書を読んで理解できる人間も一握りだ
そんなレベルの人間ならば原書で読めるから翻訳する必要性も希薄
問題は、かつてならば普通の質で翻訳されていた難易度が平凡なレベルの教科書・技術書・学術書ですらまともな日本語訳でないのが量産されるようになったという点
> 典型的な老害で笑える
> ピアソンの技術書とか今出したら炎上間違いなしってレベルの翻訳もあっただろ
外資系や新興の出版社が出す本は訳書に限らず酷いのは昔から
編集担当者が日本語文のチェックを碌にしないしそういう新興出版社は人脈を持っていないゼロからのスタートだから良い訳者が無かったからね
問題は、近年は、老舗と言える理工系出版社から出されている訳書でも翻訳の質が急激に堕ちて来たことだ
その原因は翻訳の大衆化と訳者のモラルや使命感の低下にあると言ってるのだよ
> Googleのエンジニアですらやばい翻訳とかするのにたかが大学教授如きが完璧に翻訳できる訳がない
馬鹿ですか?
そんな高度で難解な技術書など存在しても極く一握りで、そんな極めて特殊な例を取り挙げて反論するなどナンセンス
そんなナンセンスで反論だと思ってる君の知性を疑うね
そもそもそんな難解な技術書を読んで理解できる人間も一握りだ
そんなレベルの人間ならば原書で読めるから翻訳する必要性も希薄
問題は、かつてならば普通の質で翻訳されていた難易度が平凡なレベルの教科書・技術書・学術書ですらまともな日本語訳でないのが量産されるようになったという点
481デフォルトの名無しさん
2017/08/07(月) 17:27:07.42ID:PfKZEtLc アカデミアを知ってる気取りの学生の臭いがプンプンするけど、そんなことを書き込んでいる暇があったら期末試験の勉強しとけよな
482デフォルトの名無しさん
2017/08/07(月) 17:35:11.15ID:n0QtNiqf483デフォルトの名無しさん
2017/08/07(月) 17:35:27.75ID:8DeyRC3s 計算機学の正式な教育を受けたことがないからわからないけど,たとえば数学では大学2年までに学ぶべき科目の教科書は翻訳でも日本語教科書でも定番と呼べる本が出揃ってるんだよね
そんな中で使命感を持って初学者向けの本を訳したがる人はそうそういないでしょ
技術書界隈でもそんな現象が起こってるじゃないの
そんな中で使命感を持って初学者向けの本を訳したがる人はそうそういないでしょ
技術書界隈でもそんな現象が起こってるじゃないの
484デフォルトの名無しさん
2017/08/07(月) 18:08:53.23ID:Y4YBisBB485デフォルトの名無しさん
2017/08/07(月) 18:36:14.26ID:8DeyRC3s 杉浦本と斉藤本じゃあかんの(多変数の議論に飛躍が入るのはしょうがない)
486デフォルトの名無しさん
2017/08/07(月) 18:36:16.49ID:n9zFQLuH >>484
うちの親父の形見が解析概論なんだが
うちの親父の形見が解析概論なんだが
487デフォルトの名無しさん
2017/08/07(月) 18:39:57.17ID:ElcK6Dg+ スレチ
488デフォルトの名無しさん
2017/08/07(月) 19:45:52.18ID:8DeyRC3s ごめん
489デフォルトの名無しさん
2017/08/07(月) 20:05:48.41ID:8DHQ/UcZ でもここ20年でネット利用者の情報リテラシーと日本の国際的な技術的地位はかなり落ちたよな
490デフォルトの名無しさん
2017/08/07(月) 21:05:17.72ID:q/Po/zS7 近年は、技術書の日本語翻訳版が出るころには、次のメジャーバージョンがリリースされて買う気を失う傾向
491デフォルトの名無しさん
2017/08/07(月) 21:56:28.43ID:JP8gCgB5 ITは元々レベル低かったんじゃない?ハードは強かったけどソフトはそんなに
492デフォルトの名無しさん
2017/08/07(月) 23:32:35.06ID:tGwRq2k1 おまえらexa紹介されてる
ttps://www.cyberciti.biz/open-source/command-line-hacks/exa-a-modern-replacement-for-ls-written-in-rust-for-linuxunix/
ttps://www.cyberciti.biz/open-source/command-line-hacks/exa-a-modern-replacement-for-ls-written-in-rust-for-linuxunix/
493デフォルトの名無しさん
2017/08/07(月) 23:34:52.24ID:R3k5HOGA lsコマンドに替わるコマンド「exa」とは
http://news.mynavi.jp/news/2017/08/07/203/
exaはRustで開発されたls系コマンド。
サイズが小さく高速に動作し移植性も高いという特徴がある。
http://news.mynavi.jp/news/2017/08/07/203/
exaはRustで開発されたls系コマンド。
サイズが小さく高速に動作し移植性も高いという特徴がある。
494デフォルトの名無しさん
2017/08/07(月) 23:58:47.36ID:LiwmU2BL Rust関係なくてスマネ
>>491
全てとは言わないけど分野によっては世界トップクラスだったよ
1.コンピュータアーキテクチャ&オペレーティングシステム
Windowsが走るコンピュータアーキテクチャを開発、販売していた数少ない国の一つ
そのためにWindowsのカスタマイズも行っていた
2.日本語ワードプロセッサ
3.日本語入力変換システム
この二つは語るまでもないよね。ユーザーは積極的に捨てたけど
4.低レベルの実装、解析
かつては日本製のBIOSパッチとか野良BIOSとかがあった。このへんの技術は1とも絡むね
>>491
全てとは言わないけど分野によっては世界トップクラスだったよ
1.コンピュータアーキテクチャ&オペレーティングシステム
Windowsが走るコンピュータアーキテクチャを開発、販売していた数少ない国の一つ
そのためにWindowsのカスタマイズも行っていた
2.日本語ワードプロセッサ
3.日本語入力変換システム
この二つは語るまでもないよね。ユーザーは積極的に捨てたけど
4.低レベルの実装、解析
かつては日本製のBIOSパッチとか野良BIOSとかがあった。このへんの技術は1とも絡むね
495デフォルトの名無しさん
2017/08/08(火) 00:52:12.66ID:b/ztEhQD どうでもいいけどexaって打ちづらいから普通にlsでええわってなる
496デフォルトの名無しさん
2017/08/08(火) 01:39:41.54ID:Apkyawzp >>495
エイリアスつかえば
エイリアスつかえば
497デフォルトの名無しさん
2017/08/08(火) 22:30:57.70ID:0Gdz9Dwg >>482
それ以前から理工学書を読んでいる人間ならば多くが同様の感想を持っているわけだが
読んでない人間は知らんがね
他人の投稿が気に入らず読みたくないならば、お前がこのスレを読まずに消えれば済むこと
それ以前から理工学書を読んでいる人間ならば多くが同様の感想を持っているわけだが
読んでない人間は知らんがね
他人の投稿が気に入らず読みたくないならば、お前がこのスレを読まずに消えれば済むこと
498デフォルトの名無しさん
2017/08/08(火) 22:33:19.04ID:tK7llXaf 幅広い理工学書の全てを知り尽くした>>497
499デフォルトの名無しさん
2017/08/08(火) 22:39:16.48ID:B6tVSdcm アカデミックこじらせおじさんかイキリ大学生か
500デフォルトの名無しさん
2017/08/08(火) 22:54:17.33ID:XDy6h+kL A. 20年前と今の理工学書を比べられる、2chのドマイナーな言語スレにいる
->アカデミック関係者の可能性
B. 自分の意見の論拠が薄い、的確なソースを出せない印象論
->実体験であるなら妥当
C. スレ違いの話を得々と語る、煽りに慣れていない
->コミュニケーションに難あり
>>497が本当に一流大学の教官である可能性は微粒子レベルで存在する
が、話の中身は与太話だし、何を言ったかだけを判断するなら塵芥と同じ扱いでよろし
->アカデミック関係者の可能性
B. 自分の意見の論拠が薄い、的確なソースを出せない印象論
->実体験であるなら妥当
C. スレ違いの話を得々と語る、煽りに慣れていない
->コミュニケーションに難あり
>>497が本当に一流大学の教官である可能性は微粒子レベルで存在する
が、話の中身は与太話だし、何を言ったかだけを判断するなら塵芥と同じ扱いでよろし
501デフォルトの名無しさん
2017/08/09(水) 09:35:51.16ID:mzNn5sYF >>497
結局「根拠は無い」というレスして恥ずかしくないの?
結局「根拠は無い」というレスして恥ずかしくないの?
502デフォルトの名無しさん
2017/08/09(水) 20:42:37.62ID:jJFzyGYq503デフォルトの名無しさん
2017/08/09(水) 20:56:02.48ID:yH2dFN1n >>493
FDの作者って亡くなったんだっけ
FDの作者って亡くなったんだっけ
504デフォルトの名無しさん
2017/08/09(水) 22:29:08.98ID:BGGA/pTO 1つのパッケージをインストールするだけでも時間が何十分とかかる
萎える〜
萎える〜
505デフォルトの名無しさん
2017/08/09(水) 23:44:38.45ID:oO58YE7v Rust 1.19におけるタグ無しのunionなどの追加
https://www.infoq.com/jp/news/2017/08/rust-119-released
https://www.infoq.com/jp/news/2017/08/rust-119-released
506デフォルトの名無しさん
2017/08/09(水) 23:50:55.47ID:AaV7WIeC >>504 環境変数としてCARGO_TARGET_DIRを適当なところに置くと、以前にビルドしたcrateを利用してくれるよ
まあバージョンが違ったりしたらやり直しだから気休めにしかならんかもしれんが
まあバージョンが違ったりしたらやり直しだから気休めにしかならんかもしれんが
507デフォルトの名無しさん
2017/08/10(木) 09:16:01.74ID:hSTXQfAm ライフタイムがよく分からんから、ライフタイム定義なしで動くプログラムは作れるようになったんだけど、
ここから必要に応じて参照使いまくりでライフタイムしまくりが出来るようになるにはどうしたらいいでしょうか?
ここから必要に応じて参照使いまくりでライフタイムしまくりが出来るようになるにはどうしたらいいでしょうか?
508デフォルトの名無しさん
2017/08/10(木) 11:35:07.02ID:+tFBM5sG >>507 個人的な経験談だけど、ライフタイムが複雑で分かりにくいときはデザインから見直した方が良い場合が多い
単にコピーされるのを嫌って参照にすると駄目で、元の値の完全な従属物のときだけ参照を使うと大抵はうまくいく
メンバ変数間の参照はキツいので手を出さない、グラフとか所有権が複雑なのも自分じゃ作らずにライブラリにしておく、とか
単にコピーされるのを嫌って参照にすると駄目で、元の値の完全な従属物のときだけ参照を使うと大抵はうまくいく
メンバ変数間の参照はキツいので手を出さない、グラフとか所有権が複雑なのも自分じゃ作らずにライブラリにしておく、とか
509デフォルトの名無しさん
2017/08/10(木) 13:04:49.06ID:qDPlaybB rustで検索してもほとんどゲームの話題しか検索に引っかからなくて草
rustの日本コミュニティーないの?
rustの日本コミュニティーないの?
510デフォルトの名無しさん
2017/08/10(木) 13:14:22.08ID:v3fv+3Jb ここじゃよ
511デフォルトの名無しさん
2017/08/10(木) 13:29:36.14ID:jhaqJJbw >>508
え、同じstruct内でメンバ変数間の参照は出来ないでしょ?
え、同じstruct内でメンバ変数間の参照は出来ないでしょ?
512デフォルトの名無しさん
2017/08/10(木) 14:00:03.18ID:g9gtECZC >>509
slackがある
登録済の人 -> https://rust-jp.slack.com
未登録の人 -> https://rust-jp.herokuapp.com/ 👀
Rock54: Caution(BBR-MD5:b95868ef2c0ed5e765a4d10ada4cf289)
slackがある
登録済の人 -> https://rust-jp.slack.com
未登録の人 -> https://rust-jp.herokuapp.com/ 👀
Rock54: Caution(BBR-MD5:b95868ef2c0ed5e765a4d10ada4cf289)
513デフォルトの名無しさん
2017/08/10(木) 18:33:30.12ID:DpOw+Ywo おれもslack見つけるのすごく時間かかった
514デフォルトの名無しさん
2017/08/10(木) 19:56:47.71ID:oX316LZB >>511
unsafeなコードでゴニョゴニョしないと無理だね
RocketのFairingsなんかがゴニョゴニョしているものの例
https://github.com/SergioBenitez/Rocket/blob/9c9740f/lib/src/fairing/fairings.rs#L23-L38
unsafeなコードでゴニョゴニョしないと無理だね
RocketのFairingsなんかがゴニョゴニョしているものの例
https://github.com/SergioBenitez/Rocket/blob/9c9740f/lib/src/fairing/fairings.rs#L23-L38
515デフォルトの名無しさん
2017/08/10(木) 20:06:16.94ID:5YNarUir Arcでもダメなんだっけ?使う機会がないからTutorialで読んだきり見たことないけど
516デフォルトの名無しさん
2017/08/10(木) 22:57:52.57ID:Ib9pl7ao >>507
lifetimeはextentとregionをごちゃまぜにした語だから
lifetimeに言及してる部分は実際にはextentの話かregionの話に分かれる。
だからextentとregionを理解すればいいよ。
特にscopeとextentの区別がついてないやつが非常に多いからそこ気をつける。
lifetimeはextentとregionをごちゃまぜにした語だから
lifetimeに言及してる部分は実際にはextentの話かregionの話に分かれる。
だからextentとregionを理解すればいいよ。
特にscopeとextentの区別がついてないやつが非常に多いからそこ気をつける。
517デフォルトの名無しさん
2017/08/10(木) 23:40:15.73ID:+tFBM5sG 何かextentとregionを説明したものってある?
518デフォルトの名無しさん
2017/08/11(金) 00:54:12.71ID:XZrwY8EL >>517
extentはscopeとよく一緒に説明されるからそこら辺で検索。
言語によってはextentの事をlifetimeと呼ぶから
そういう言語のlifetimeを詳しく解説してる本とか当たってもいい。
ただし、rustのextentとregionを混同したlifetimeの事と
extentをlifetimeと呼ぶ文化におけるlifetimeの区別は
事前にちゃんと付けておいたほうがいいね。
rustのlifetimeは無駄にややこしくしてるから頑張って。
regionの説明はほとんど見かけないから近道は論文読む。
実装ならRTSJとCycloneくらいしかない。
region理解するならzone/arena(両方同じもの)とリージョン多相とリージョン推論も理解した方がいい。
あとrust固有の話だとrustのリージョン多相は部分多相も備えてる。
extentはscopeとよく一緒に説明されるからそこら辺で検索。
言語によってはextentの事をlifetimeと呼ぶから
そういう言語のlifetimeを詳しく解説してる本とか当たってもいい。
ただし、rustのextentとregionを混同したlifetimeの事と
extentをlifetimeと呼ぶ文化におけるlifetimeの区別は
事前にちゃんと付けておいたほうがいいね。
rustのlifetimeは無駄にややこしくしてるから頑張って。
regionの説明はほとんど見かけないから近道は論文読む。
実装ならRTSJとCycloneくらいしかない。
region理解するならzone/arena(両方同じもの)とリージョン多相とリージョン推論も理解した方がいい。
あとrust固有の話だとrustのリージョン多相は部分多相も備えてる。
519デフォルトの名無しさん
2017/08/11(金) 01:38:14.07ID:KiXisjXW 無駄に話を複雑にした挙句論文を読めときたか、少し前にいたイキリ大学生かよ
普通に公式のThe Rust Programming Languageを読んで現行Stringを使ってるなら&strにして組み直して見たら?
structのメンバに参照があると否応でも意識/理解せざるを得ないと思うぞ
普通に公式のThe Rust Programming Languageを読んで現行Stringを使ってるなら&strにして組み直して見たら?
structのメンバに参照があると否応でも意識/理解せざるを得ないと思うぞ
520デフォルトの名無しさん
2017/08/11(金) 05:26:24.27ID:oTwda99v >>519
いざ言われてみるとstructで参照を持つのってどんなときか思いつかんのだけど
いざ言われてみるとstructで参照を持つのってどんなときか思いつかんのだけど
521デフォルトの名無しさん
2017/08/11(金) 07:59:32.16ID:KiXisjXW じゃあまずlifetimeについて考える前に、参照のメリット/デメリットについて考えような
公式サイトのドキュメント読んでこい
公式サイトのドキュメント読んでこい
522デフォルトの名無しさん
2017/08/11(金) 09:42:12.68ID:oTwda99v c++だと参照保持すると生存期間管理ないからあぶないからやらない
スマートポインタ使う
そのへんの感覺の違いがまだなれない
スマートポインタ使う
そのへんの感覺の違いがまだなれない
523デフォルトの名無しさん
2017/08/11(金) 13:31:10.83ID:wKLRpp+C impl Traitがstableに入ったらどうなるか分からないけど、MapとかFilterとかがstructに参照+独自データって形になってるよ
あとはCharIndicesとか。実際のソースはちょいと違うけど元のデータへの参照+と現在位置っていう形になってる
あとはCharIndicesとか。実際のソースはちょいと違うけど元のデータへの参照+と現在位置っていう形になってる
524デフォルトの名無しさん
2017/08/11(金) 23:09:32.05ID:wLCu2iAZ 昨日Slackに参加した人たちはお前らって認識で合ってる?
525デフォルトの名無しさん
2017/08/11(金) 23:41:41.62ID:lyr4XUnD ようはfat pointerでしょ
526デフォルトの名無しさん
2017/08/12(土) 12:16:25.41ID:IzeoJwWv コンパイル済みのバイナリパッケージを公開してほしいけどそういうのは実現可能ではない?
527デフォルトの名無しさん
2017/08/12(土) 18:35:23.01ID:dKEWL6WP 例えばripgrepのコンパイル済みのバイナリパッケージ
ttps://github.com/BurntSushi/ripgrep/releases/tag/0.5.2
リリースビルドしたバイナリをzipなりでパッケージングすれば良いんでね
ttps://github.com/BurntSushi/ripgrep/releases/tag/0.5.2
リリースビルドしたバイナリをzipなりでパッケージングすれば良いんでね
528デフォルトの名無しさん
2017/08/12(土) 21:37:32.89ID:YDSzcZF8 Pathがすげー使いづらいんだけどなんでなの
529デフォルトの名無しさん
2017/08/12(土) 22:36:26.03ID:4PGg+vlK >>528
具体的にどのあたりが使いづらいと思っているの?
具体的にどのあたりが使いづらいと思っているの?
530デフォルトの名無しさん
2017/08/12(土) 22:57:47.92ID:Lzx+EbMy >>527
cargoにそんな感じのサブコマンドあった気がする
cargoにそんな感じのサブコマンドあった気がする
531デフォルトの名無しさん
2017/08/13(日) 04:17:55.12ID:oa7ekDLN PathはPath::new(&str)が参照を返すから使いづらい(参照を使いこなせない)
PathBuf使えば楽になったよ!
PathBuf使えば楽になったよ!
532デフォルトの名無しさん
2017/08/13(日) 08:43:10.09ID:f+gGM+v+533デフォルトの名無しさん
2017/08/13(日) 13:14:25.96ID:3acTHEGf >>532
>返り値で返せないとか
>引数の文字列のライフタイムで怒られる
fn file_stem<'a, P: AsRef<Path>+?Sized>(path: &'a P) -> Option<&'a OsStr> {
let path = path.as_ref();
path.file_stem()
}
これじゃダメ?
>PathBufすると変換いるしめんどい
to_ownedやintoするのもめんどくさけりゃ、もう死んでしまえ
>返り値で返せないとか
>引数の文字列のライフタイムで怒られる
fn file_stem<'a, P: AsRef<Path>+?Sized>(path: &'a P) -> Option<&'a OsStr> {
let path = path.as_ref();
path.file_stem()
}
これじゃダメ?
>PathBufすると変換いるしめんどい
to_ownedやintoするのもめんどくさけりゃ、もう死んでしまえ
534デフォルトの名無しさん
2017/08/13(日) 13:51:20.44ID:TkYKFb/H こんな使いづらさでしょ
fn path<'a>(name: &str, ext: &str) -> &'a Path {
Path::new(&format!("{}.{}", name, ext))
// error[E0597]: borrowed value does not live long enough
}
まぁこれも死んでしまえ事例ではあるが
別所にOsStrの所有権(ライフタイム)がある場合に参照だけで済ますためのPathなので
動的に生成したOsStrでPath(参照)だけを返せると思うなよバーカというね
fn path<'a>(name: &str, ext: &str) -> &'a Path {
Path::new(&format!("{}.{}", name, ext))
// error[E0597]: borrowed value does not live long enough
}
まぁこれも死んでしまえ事例ではあるが
別所にOsStrの所有権(ライフタイム)がある場合に参照だけで済ますためのPathなので
動的に生成したOsStrでPath(参照)だけを返せると思うなよバーカというね
535デフォルトの名無しさん
2017/08/13(日) 13:56:05.57ID:LyaOwRfj >>533
いきなりドラえもんになるのやめろ
いきなりドラえもんになるのやめろ
536デフォルトの名無しさん
2017/08/13(日) 16:54:45.71ID:4uuls5D8 impl Traitっていつstableはいるんだっけ?
537デフォルトの名無しさん
2017/08/13(日) 22:34:46.55ID:3acTHEGf538デフォルトの名無しさん
2017/08/13(日) 22:46:00.09ID:r6u293xs owned valueとborrowed valueの区別がついてないだけじゃん
539デフォルトの名無しさん
2017/08/13(日) 23:14:52.73ID:3acTHEGf まあ、Sizedと!Sized (DST)の区別がつきづらいってのもあるとは思う
strとString然り、[T]とVec<T>然り、OsStrとOsString、トレイトオブジェクト、そしてPathとPathBuf……
strとString然り、[T]とVec<T>然り、OsStrとOsString、トレイトオブジェクト、そしてPathとPathBuf……
540デフォルトの名無しさん
2017/08/14(月) 01:43:35.30ID:tyQzDLaM アマグラマの書き散らした名前空間みたいできついな
541デフォルトの名無しさん
2017/08/14(月) 07:06:13.75ID:HJwH3qkh■ このスレッドは過去ログ倉庫に格納されています
ニュース
- パワフル女性世界3位に高市首相 米誌フォーブス選出 [蚤の市★]
- 【米FRB】0.25%利下げ決定 3会合連続、雇用下支え [蚤の市★]
- テレ朝本社から社外スタッフの男性が転落し死亡 テレビ朝日がコメント [ひかり★]
- 【S.RIDE】「忘年会の幹事ずるい」 ソニー系配車アプリの広告が物議…… 運営が謝罪「配慮に欠ける不適切な表現」掲出終了に [ぐれ★]
- アイヌ民族の「戸籍簿」がヤフオクで落札 団体「人権無視」と憤り [蚤の市★]
- 「身を切る改革」どこへ? 維新「身内」への公金支出、地方でも続々 [蚤の市★]
- 高市「野党はもう債権とか為替の話はしないで!よく分からないから答えない!」 [884040186]
- 【悲報】教育ママ「ギャオオオオオン!息子が大麻吸ってるのお!!」⇨中3の息子を警察に突き出し全てを終わらせる [455031798]
- 【堂上隼人】ソフトバンク幹部「よし更生してる」→現在までに逮捕12回、レイプ被害者15人
- 【画像】東京都民「助けて!満員電車もう無理いいぃぃいいぃぃぃいいいいいぃ😭」!!!! [732289945]
- 【速報】PCメーカー「買うなら今すぐPC買ってください!」
- 【高市悲報】高市政権、詰む
