[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 02/22 14:52 / Filesize : 279 KB / Number-of Response : 1015
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Rust part16



1 名前:デフォルトの名無しさん mailto:sage [2022/06/27(月) 08:17:03.45 ID:gDlfKP6u.net]
公式
https://www.rust-lang.org/
https://blog.rust-lang.org/
https://github.com/rust-lang/rust

Web上の実行環境
https://play.rust-lang.org

日本語の情報
https://rust-jp.rs/

※Rustを学びたい人はまず最初に公式のThe Bookを読むこと
https://doc.rust-lang.org/book/

※Rustを学ぶ際に犯しがちな12の過ち
https://dystroy.org/blog/how-not-to-learn-rust

※Rustのasyncについて知りたければ「async-book」は必読
https://rust-lang.github.io/async-book/

※次スレは原則>>980が立てること

前スレ
Rust part15
https://mevius.5ch.net/test/read.cgi/tech/1652347700/

527 名前:デフォルトの名無しさん mailto:sage [2022/08/04(木) 13:50:49.10 ID:ck4xiQdl.net]
クロスプラットフォームで同一バイナリが動いてそこそこ高速で組み込み用途に向いてる
という条件だとLuaかwasm

528 名前:デフォルトの名無しさん mailto:sage [2022/08/04(木) 13:51:05.48 ID:ck4xiQdl.net]
JSでも良いが

529 名前:デフォルトの名無しさん mailto:sage [2022/08/04(木) 15:10:31.96 ID:b+TNnTjV.net]
プラグインというよりマクロの実行環境の話だな
Luaやwasmはホストアプリにランタイムを同梱する必要がある

530 名前:デフォルトの名無しさん mailto:sage [2022/08/04(木) 15:23:41.09 ID:1k9fnhsy.net]
Luaやwasmを使うようなスクリプト型(スクリプト言語のことではなくて、上位レイヤのシナリオだけをユーザーに書かせる方式)の拡張って、
よほどホスト側にプラットフォームとしての魅力がない限りは成立しないよ
ホストがスクリプトに対して提供している機能以上のことはできないわけだからな
そうじゃなくて、やりたいのはホストにない機能を追加できるプラグイン機構じゃないの?

531 名前:デフォルトの名無しさん mailto:sage [2022/08/04(木) 15:39:46.71 ID:9TNfUmNd.net]
>>520
Rustでやりたいってことは実行速度を重視してるんだろうし動的リンクしかないだろ
しかしwasmにしてもいいっていうならJavaScriptやらLuaの活用も検討しろ

532 名前:はちみつ餃子 mailto:sage [2022/08/04(木) 15:55:10.42 ID:hPtMGH66.net]
そういえば Rust の proc macro を wasm としてコンパイルしたらどないやという話はあったんじゃなかったっけ?
最終的にどういう結論になったのか追ってないんやが……。
必要な機能は Rust コンパイラの中に全部あってシステムの外とやり取りする必要もないから良い案に思える。

533 名前:デフォルトの名無しさん mailto:sage [2022/08/04(木) 17:17:23 ID:KbhCPu0a.net]
>>525
Luaやwasmからホストの用意した機能を呼び出す形だけでなく
ホストからLuaやwasm側の処理を呼び出す形も実装可能だよ
DLLに比べると相当手間がかかるけど

534 名前:デフォルトの名無しさん mailto:sage [2022/08/04(木) 17:19:43 ID:ck4xiQdl.net]
動的リンクするにしてもABIがunstableだからインターフェースはextern "C"で公開せざるを得ないし
それなりの量のグルーコードが必要になるかと
その辺良い感じにどうにかしてくれるcrateがあるかもしれないけど

535 名前:デフォルトの名無しさん mailto:sage [2022/08/04(木) 17:29:05.26 ID:1k9fnhsy.net]
>>528
そうしたとしてもホスト側に存在しない(ホストからスクリプトに対して公開されていない)機能は使えないでしょ?



536 名前:デフォルトの名無しさん mailto:sage [2022/08/04(木) 17:46:52.95 ID:CkQzFtco.net]
https://qiita.com/dalance/items/1593b56ad3744c469643

コメント欄も含めるとなかなか情報がまとまっています

537 名前:デフォルトの名無しさん mailto:sage [2022/08/04(木) 17:49:06.27 ID:8PPO9uzK.net]
良さげ記事

538 名前:はちみつ餃子 mailto:sage [2022/08/04(木) 17:58:11.58 ID:hPtMGH66.net]
>>530
ホスト側を経由せずに外にアクセスするのは禁止できたほうが嬉しいことも多いだろ?
俺が使っているソフトでプラグイン機構があるものというと画像ビューアとかメッセンジャとかだが
それほど自由に外の世界にアクセスする必要はないし、不必要ならアクセスさせないに越したことは無い。
(悪意あるプラグインを作り難くなるので。)

制限があるというのと制限を付けられるのは表裏一体なのでそんなの場合によるとしか……

539 名前:デフォルトの名無しさん mailto:sage [2022/08/04(木) 18:01:34.69 ID:9TNfUmNd.net]
>>529
> 動的リンクするにしてもABIがunstable
あー、そうだったわ
めんどくさいんだった

540 名前:デフォルトの名無しさん mailto:sage [2022/08/04(木) 18:42:08.03 ID:pLEfRi/j.net]
野良プラグイン入れて環境壊して上等!って時代でもないからねえ。
ある程度、できること制限できるようにしたプラグイン機構も大事な時代よ。

そういう点でwasmがセキュリティとパフォーマンスのバランスが取れていて魅力という層もあるでしょ。

541 名前:デフォルトの名無しさん mailto:sage [2022/08/04(木) 18:42:45.33 ID:KbhCPu0a.net]
>>530
そりゃ広い意味で言えばどんな機能だってホスト側に存在してなければ使えない

「ホストにない機能を追加できるプラグイン機構」ってどんなものイメージして言ってるの?

542 名前:デフォルトの名無しさん mailto:sage [2022/08/06(土) 12:18:12.84 ID:z/fLyAW1.net]
今の環境で正しくレンダリングされる10年前に作られたWebサイトは多くない
同様にTauriで作成されたアプリが10年後でも問題なく使用できるのだろうか

543 名前:デフォルトの名無しさん mailto:sage [2022/08/06(土) 20:40:11.73 ID:6gQA87rg.net]
Tauriはバックとフロントが明確に分離されているからOS標準ブラウザに変更があっても修繕はしやすそう
Macとかだと突然仕様変えてきそうで怖いな

544 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 00:00:20.59 ID:pGypWfdH.net]
Rustでライブラリをどうやって選定してんの?
crate.io見て人気のを選んでんの?

GETだけのためにhttpclient使おうとしたらtokio入れて使えとか全然意味わからんしコンパイルしたら
これを使うには2018使えと2022使えが出てくる…


他のに変えても変わらず
GETなんてコピペ産業で実現させてくれよ

use
初期化
GET

これで終わらせてくれ

545 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 00:05:00.47 ID:pGypWfdH.net]
別に

use
GET

の2行でもいい



546 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 00:19:22.87 ID:thO2Aez3.net]
>>539
まあ今はそういう人向けの言語じゃないからね

とりあえずreqwestのblocking clientでやってみて合わなそうならあきらめろん

547 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 00:27:13.75 ID:pGypWfdH.net]
crate.ioにwebclient一覧が並べてあるけど結局最近のダウンロード数見て判断なんだろうなと

どれもtokio使ってるしCurlコマンドみたいに一発でGETやPOSTって感じでもない
tokio必須と言うことは標準でasyncライブラリの完成度が低いんだろうけど
憶測が当たってるかどうかもよくわからない

548 名前:はちみつ餃子 mailto:sage [2022/08/07(日) 00:48:31.33 ID:yGip1YMx.net]
>>542
Rust は標準ライブラリの中に非同期ランタイムを持ってない。
言語として非同期を扱えるようにしつつ具体的な部分は外部のクレートに任せられるように
分離に成功しているという意味では十分に完成度は高いとも言える。

549 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 01:05:02.63 ID:nCVSRdWl.net]
>>539
簡単これだけ

#[async_std::main]
async fn main() {
let uri = "https://httpbin.org/base64/SGVsbG8sIFdvcmxkIQ==";
let s = surf::get(uri).recv_string().await.unwrap();
assert_eq!(s, "Hello, World!");
}

Cargo.tomlの[dependencies]に適当に
async-std = { version = "*", features = ["attributes", ] }
surf = "*"

550 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 05:20:01.36 ID:FgVTxKNL.net]
簡単に使いたいなら、非同期じゃなくて同期版のhttpクライアントライブラリ使いなよ

551 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 08:15:04.13 ID:PrNdTuny.net]
Goを素直に使っとけ
標準ライブラリでそのままできる上に非同期もGoroutineを使うだけ
テスト用のライブラリも用意されてるからクライアントサーバーもそのままテストできる

552 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 08:22:19.17 ID:nCVSRdWl.net]
>>546
Goなんていうものは不要
Rustで簡単に使える

553 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 08:29:14.86 ID:PrNdTuny.net]
標準ライブラリでHTTPクライアント・サーバー・テスト・非同期を全て統一的に扱えるってのはかなり強みではある
Rustはランタイムコストをゼロに近づけるためライブラリ化しているが、それは必ずしも利用者にとってメリットがあるわけではない
あくまでもOSやドライバなどを作る上でランタイムコストを削らないと適さないからそうなっているだけ

>>539 みたいな人にはまず用途を考えた上で高レイヤーのプログラムを作りたいのであれば素直にRust以外の言語を使うことをお勧めする

554 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 08:59:18 ID:9InYic2G.net]
>>548
あまりにも狭い視野と酷い誤解をなさっているようだが
ウェブ関係はRustのメリットが十分にある分野で実際にRustで利用が多い分野

555 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 09:24:53.04 ID:OveVhBWN.net]
複オジ相手にするのは隔離スレか実質隔離スレの次世代スレだけにしろ



556 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 09:37:06.87 ID:VV/7IoC0.net]
>>548はいつものRustアンチのキチガイかな
RustはOSやドライバ用と嘘をついてそれ以外なら他の言語を使うべきと誘導する書き込みがそっくり

557 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 10:46:09.01 ID:W6kFcilw.net]
キチガイ同士ここ以外で仲良くやっとけよ
邪魔なんだよ

558 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 12:14:32.05 ID:46MSroSz.net]
キチガイ隔離スレのココが機能していてなにより

559 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 12:50:43.08 ID:45kFT7pS.net]
次世代スレの方もワッチョイ付ければ例のバカが寄り付かないことがほぼほぼ実証されつつあるので
あとは過疎を恐れず移行すれば万事解決です

560 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 13:58:05.65 ID:ZjeWku4d.net]
まだ実証されてないってことね
じゃあバスで

561 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 14:08:40.83 ID:XsO6imG4.net]
過疎やん

【ワッチョイあり】プログラミング言語 Rust
https://mevius.5ch.net/test/read.cgi/tech/1514107621/

562 名前:デフォルトの名無しさん mailto:sage [2022/08/11(木) 07:14:02.75 ID:wbWFySKV.net]
structに不変なフィールドを持たせるにはどうしたらいいのですか?
const定数ではなく、インスタンスごとに初期化時に値を設定したら、その後は変更不可能。
他のフィールドは変更可能でも。

563 名前:はちみつ餃子 mailto:sage [2022/08/11(木) 10:33:56.78 ID:5k4DsUHs.net]
>>557
直接的にメンバに指定を付けることは出来ない。
Rust のアクセス制御はモジュールが基本単位になっていて、
「メンバに pub が付いていない」「そのモジュールの中でメンバを変更することがない」ならば変更不可能なメンバになる。

564 名前:デフォルトの名無しさん mailto:sage [2022/08/11(木) 11:32:02.59 ID:wbWFySKV.net]
>>558
ありがとうございます。

565 名前:デフォルトの名無しさん [2022/08/13(土) 13:13:02.04 ID:hNN+KHup.net]
>>45-47
https://www.youtube.com/watch?v=k8x2DiNz4iU



566 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
>>560
言語としてのRustにはピクリとも興味がわかなかったが
なんだか急にRustに興味がわいてきたぞー

567 名前:デフォルトの名無しさん [2022/08/16(火) 13:03:21.19 ID:RcKGtcJQ.net]
VSCode + CodeLLDB + LLDBでデバッグしているのですが、ポインタに関して見方がよくわかりません
Borrowed pointer typeの参照先の値ってデバッガ上でどうやったら見れるんですか?

568 名前:デフォルトの名無しさん mailto:age [2022/08/18(木) 15:17:30.09 ID:nMYke7rH.net]
参考までに、mutはドイツ語で勇気の意味です。

569 名前:デフォルトの名無しさん mailto:sage [2022/08/19(金) 15:36:33.17 ID:MNFQes9z.net]
スレチ

570 名前:デフォルトの名無しさん mailto:sage [2022/08/19(金) 15:56:19.49 ID:WZnrgrRN.net]
今の時代ってcc++rustなんて、低レイヤーをやってる人以外は不要だな
Java Script全盛のこの時代にいちいちコンパイルするなんて面倒で仕方ない

571 名前:デフォルトの名無しさん mailto:sage [2022/08/19(金) 17:51:45.38 ID:jOBplE6P.net]
釣りは隔離スレでどうぞ

572 名前:デフォルトの名無しさん [2022/08/21(日) 14:52:30.50 ID:j3ukytx2.net]
RUST大流行だな
ほんと紛らわしい

573 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
この言語開発した人、Swiftにいっちゃったみたいだけど追い出されたの?

574 名前:デフォルトの名無しさん mailto:sage [2022/08/21(日) 21:36:56.87 ID:RCuqOQsW.net]
確か燃え尽き症候群で自分から離れたんじゃなかったかな

575 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
嘘のようにボロ負けしたんだろうな



576 名前:デフォルトの名無しさん mailto:sage [2022/08/22(月) 12:22:08.49 ID:+Lu+Ewk5.net]
ジャバスクリプト全盛の時代にネイティブこんぱいらなんて
不要だろ。
jsでカーネルのラードンをつくる猛者まで出てきた

577 名前:デフォルトの名無しさん [2022/08/25(木) 01:05:28.98 ID:YZq8nn1p.net]
Arc<HashMap<T1, T2>>みたいにした場合って、どの範囲でスレッドセーフになるんですか?

578 名前:デフォルトの名無しさん mailto:sage [2022/08/25(木) 02:02:11.07 ID:sE5vq5kZ.net]
範囲はHashMap全体たが
Arc単体で提供するスレッドセーフはimmutableな共有所有のみ
その例だとHashMapは読み取り専用になる
他を要求するなら他と組み合わせる

まずArcは置いといて単独所有の時
整数やブールならAtomicXxxでスレッドセーフ
一般的な型ならMutex<T>
読み取り同時複数ならRwLock<T>
それぞれコストが異なるので使い分ける

その上で共有所有ならArc<.....>をそれらの上に被せる

579 名前:デフォルトの名無しさん mailto:sage [2022/08/25(木) 02:06:21.10 ID:mMVVZ1qM.net]
T1, T2がSend/Syncな前提だよね?

580 名前:デフォルトの名無しさん mailto:sage [2022/08/25(木) 21:50:49.35 ID:sE5vq5kZ.net]
もちろんTがSync+Sendの時のみ
Arc<T>はSync+Sendとなる

581 名前:デフォルトの名無しさん mailto:sage [2022/08/25(木) 23:42:19.60 ID:3Alfspxr.net]
条件を満たせなければコンパイラが指摘してくれるところがRustの良さ
間違えていても安全でなくてもコンパイルが通ってしまい実行時に酷い目に合う従来の言語

582 名前:デフォルトの名無しさん [2022/08/26(金) 03:34:10.56 ID:7ybirmBf.net]
Test

583 名前:デフォルトの名無しさん [2022/08/26(金) 10:06:51.61 ID:i2SIEm4o.net]
>>576
コンパイル通ったら安心と思い込む馬鹿

584 名前:デフォルトの名無しさん mailto:sage [2022/08/26(金) 10:39:24.20 ID:z3bi9+6P.net]
そいつには触れるな

585 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
>>578
思い込みで誤読しているあんたが馬鹿っぽい
>>576にはそんなこと書かれていない



586 名前:デフォルトの名無しさん mailto:sage [2022/08/27(土) 02:23:31.10 ID:4TEBlXJK.net]
>>578
日本語読めないバカ

587 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
>>578
うちの会社にもいるわ
ビルド出来たってドヤ顔のバカ
そんなものは、ある程度の言語の知識があればいいだけ。

588 名前:デフォルトの名無しさん mailto:sage [2022/08/27(土) 13:37:40.60 ID:VvCUXBS7.net]
デバッグスキル0の奴がビルドだけでOKとか思いたがるんだわ。

589 名前:デフォルトの名無しさん mailto:sage [2022/08/27(土) 14:27:59.40 ID:fe4GQDaF.net]
>>582
その会社ヤバくない?
大丈夫?

590 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
確証バイアスかな?

591 名前:デフォルトの名無しさん mailto:sage [2022/08/27(土) 20:57:03.41 ID:0qPHVCED.net]
>>585
お前ヤバくない?
大丈夫?

592 名前:デフォルトの名無しさん mailto:age [2022/08/31(水) 02:03:15.88 ID:Lk5NPDCj.net]
最強無敵言語age

593 名前:デフォルトの名無しさん mailto:sage [2022/08/31(水) 08:04:44.83 ID:+Igep1U8.net]
>>587
入門者相手には最強だよな。

594 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
急に書き込み減ったけどもう飽きられたの?
Scalaのときもそうだったけどエンジニアがこういう読みにくい言語で現場を遊び散らかして負債だけ残すの何とかして欲しいわ

595 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
?の意味とか;の違いとか、すぐに調べられないからバッドノウハウ化しているよね。FAQとかダメダメだし。
せめて検索性に配慮して記号を決めればな。?::くらいにしても問題ないだろうに。



596 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
ピークを過ぎた感はある
Scalaで遊んでたのはDDDとか高レイヤの好きな意識高い系が中心だったからまあそこまで酷い負債にはなってないけど、
その点Rustの負債はタチが悪そうだな

597 名前:デフォルトの名無しさん [[ここ壊れてます] .net]
Amazonがプログラミング言語「Rust」を使っている理由
https://japan.zdnet.com/article/35183866/

Amazon Web Services(AWS)は、同社のエンジニアたちがプログラミング言語「Rust」を
使っている大きな理由として、エネルギー効率の高さを挙げる。
AWSは早くからRustを採用し、GoogleやMicrosoftとともにRust Foundationの創設にも携わった。
現在もRustの普及に熱心に取り組んでいる。

AWSのソフトウェアエンジニアで、Rustの普及に取り組む、
Shane Miller氏と主任エンジニアのCarl Lerche氏の投稿によれば、
Rustはメモリー安全性を高め、セキュリティ関連の不具合を減らす役に立つだけでなく、
PythonやJavaよりもはるかに「エネルギー効率に優れている」という。
Amazonは、2025年までにデータセンターの100%を再生エネルギーでまかなうという目標を掲げ、
データセンターの環境負荷の軽減に取り組んでいる。
Rustの採用はその一翼を担うという。

Rustで構築されたAWSサービスの例としては、
コンテナーアプリ用のサーバーレスプラットフォーム「Lamba」を支える「Firecracker」、
「Amazon Simple Storage Service(S3)」「Amazon Elastic Compute Cloud(EC2)」、
コンテンツ配信ネットワーク「Amazon CloudFront」、
LinuxベースのコンテナーOS「Bottlerocket」がある。

「CやRustが他の言語よりもエネルギー効率に優れていることに驚きはない。
衝撃的なのは、その違いの大きさだ。CとRustを広範に採用すれば、
控えめに見積もってもコンピュートに使用されるエネルギーの量を50%削減できる可能性がある」と
Miller氏は述べ、その根拠として、C、GoogleのGo、Lua、Python、Ruby、Fortranなどをはじめとする
複数の言語のエネルギー効率を相対的に示した研究結果を紹介している。

598 名前:デフォルトの名無しさん mailto:sage [2022/08/31(水) 10:44:22.32 ID:nTGfEW2M.net]
>>590
そういう基本的なのはチュートリアルに書いてあるんだから何をあらためて検索する必要があるっていうんだ?

599 名前:デフォルトの名無しさん mailto:sage [2022/08/31(水) 12:13:30.34 ID:Fgf/9Zy6.net]
>>590
文法は場当たり的に学ばないで初学者向けドキュメント読んだ方が良いと思うけどそれは置いておいて、
rust operatorでググって出てくるこれ参照して演算子の意味調べてもう一度ググれば良いのでは
それすらめんどくさい?
https://doc.rust-lang.org/book/appendix-02-operators.html

600 名前:デフォルトの名無しさん mailto:sage [2022/08/31(水) 12:30:09.46 ID:836P0mbg.net]
question markとかsemicolonで調べればいいんだよ

601 名前:デフォルトの名無しさん mailto:sage [2022/08/31(水) 12:34:08.26 ID:J/OAC0EF.net]
例えば
question mark site:doc.rust-lang.org
で検索すれば必要な解説がすぐ見つかる

602 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
>>593
公式に「チュートリアル」てあったっけ?
THE Book読めということかしらん?

>>594
Error propagationとかStatement and item terminatorぐらいしか記載無いんだけど……

>>595
公式の解説出てこないんだけど、公式には説明無いんかね?

603 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
>>596
おお、ここまで指定すれば見つかりますな。公式トップに検索窓ぐらい欲しいところだけど。

604 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
>>597
エラーとか文に関わるものということが分かれば、関連するリファレンス探すとっかかりにはなるんじゃないかと
少なくとも記号よりは検索しやすい

605 名前:デフォルトの名無しさん mailto:sage [2022/08/31(水) 13:39:17.87 ID:lcZ+Kyy5.net]
所有権チェックはありがたいけど、lintみたいにビルドと分けた方が使い勝手よかったと思うがな。



606 名前:はちみつ餃子 mailto:sage [2022/08/31(水) 13:42:22.79 ID:nTGfEW2M.net]
>>597
> THE Book読めということかしら

せやで。
まあそれに限らなくてもいいけどどんな入門書でも ? の説明がないなんてことはないでしょ。
常識的な手順通りに学習してれば ? が大まかに何をする演算子なのかくらいは知っているはずだし、
エラー処理にかかわるものだと知ってればもっと細かいドキュメントを探すのにも苦労するってことはない。

なるべく一発で検索できたほうが便利というのはわからんでもないが、
演算子であると同時に制御構文の類でもあり、周辺の機能と連携するのできちんとした理解をしようとすれば
どうせ色々と見るはめになる。

607 名前:デフォルトの名無しさん mailto:sage [2022/08/31(水) 15:08:14.60 ID:Fgf/9Zy6.net]
>>600
所有権チェックをなくすってどういうこと?
referenceが有効な間に元データをmoveした場合に警告だけ出してコード自体はコンパイルできるようにするとかそういうこと?

608 名前:デフォルトの名無しさん [2022/08/31(水) 16:15:20.37 ID:bi3oBo/Y.net]
コンパイル(ビルド)時に所有権チェックの結果を使ってメモリの解放処理を挿入してるんだから分けるのは無理

609 名前:デフォルトの名無しさん mailto:sage [2022/08/31(水) 16:22:04.68 ID:UXqUoG+N.net]
ビルドしなくてももっと気軽にわかるようにしろってことか?
linterの領域外れてる気もするが

610 名前:はちみつ餃子 mailto:sage [2022/08/31(水) 16:50:31.19 ID:nTGfEW2M.net]
細かな所有権の整合性を後回しにしてとりあえず動く (ように見える) ところまでもっていきたいという気持ちはわからんもでない。
でもなー、そういうことすると整合性がとれてないままの未定義コードが世に溢れてしまうのは確実だろう。

611 名前:デフォルトの名無しさん mailto:sage [2022/08/31(水) 16:56:11.73 ID:LCT5ihCl.net]
所有権周りのエラーって基本的なデータ構造に起因することが多いからなぁ
後から直そうとか思うと結局全部作り直すはめになるから
一度チェックなしモードとかで作っちゃうと永遠にそのままだろうね

612 名前:デフォルトの名無しさん mailto:sage [2022/08/31(水) 17:04:46.18 ID:BdHQqSBt.net]
マンホールって卑猥な単語じゃね?

613 名前:デフォルトの名無しさん mailto:sage [2022/08/31(水) 19:07:16.13 ID:th8cAM8K.net]
>>592
そのうち、他の分野のライフサイクルみたいに、製造時、利用時といった感じで電力効率が語られるようになるんかね。

614 名前:デフォルトの名無しさん mailto:sage [2022/08/31(水) 20:09:18.42 ID:iogMBVhq.net]
>>601
the book読めというのはさすがに初心者殺しだと思うけどなぁ。

公式に絶壁の学習曲線をどうにかしようという意識はあるのかしらん?

615 名前:デフォルトの名無しさん [2022/08/31(水) 20:22:19.87 ID:3b0JioqE.net]
学習曲線をどうにかしようという気合はめちゃめちゃあるが、バカを賢くしようというつもりはないだろう



616 名前:はちみつ餃子 mailto:sage [2022/08/31(水) 20:35:16.89 ID:nTGfEW2M.net]
>>609
えっ、なじみのない所有権システムとかも含めてめっちゃわかりやすく解説した the book を
用意してくれるなんてスゲー親切だと思うが、何が不満なんだ?
(俺自身は英語あんまりわからんので日本語訳を読んだ。)

617 名前:デフォルトの名無しさん mailto:sage [2022/08/31(水) 20:38:24.92 ID:SRFkQuBk.net]
>>609
the bookは初心者のためのもの
Rustを全く知らなくてもちゃんと順を追って理解できるように書かれている

?は自分でエラー処理を書くようになり、
さらに自分の関数でResultなどを返すようになり、
そこでErr(e) => return Err(e)などを書くようになり、
そこでのショートカット表現として必要になるものだから
the bookでも同じ順で学べる

?をいきなり調べたい時や詳細を知りたい時は
the Rust referenceを開いて🔍をクリックして
question markと打てば該当ページに辿り着く

618 名前:デフォルトの名無しさん [2022/08/31(水) 20:53:00.34 ID:bW00GV9W.net]
>>605
>>606
同意。

619 名前:デフォルトの名無しさん mailto:sage [2022/08/31(水) 21:03:24.41 ID:p14sgl1j.net]
すべてがunsafeな世界になる

620 名前:デフォルトの名無しさん mailto:sage [2022/08/31(水) 21:22:41.70 ID:rT6IO02J.net]
生きている限り安全なんてない

621 名前:デフォルトの名無しさん mailto:sage [2022/08/31(水) 23:52:36.28 ID:X48LRlQ+.net]
ポエムはいいです

622 名前:デフォルトの名無しさん mailto:sage [2022/09/01(木) 00:17:11.56 ID:gQhEx8vQ.net]
そうそうポエムいいよなぁ


みつヲ

623 名前:デフォルトの名無しさん mailto:sage [2022/09/01(木) 01:28:45.35 ID:v92yFclD.net]
今時、ネイティブ吐く必要なんて全くない
tsでもvscのようなソフトが作れるんだし。


624 名前: ユーザーランドではネイティブはもはや不要だろ []
[ここ壊れてます]

625 名前:デフォルトの名無しさん mailto:sage [2022/09/01(木) 02:19:44.48 ID:UU16wx/t.net]
もしかしてelectron知らないのかしら



626 名前:デフォルトの名無しさん mailto:sage [2022/09/01(木) 08:30:45.73 ID:+imQtRK+.net]
スクリプトって知らないのかしらん?

627 名前:デフォルトの名無しさん mailto:sage [2022/09/01(木) 09:29:49.86 ID:WQm7Gv/J.net]
vscはコア部は全部C++だけど。
そのうえに薄くjs乗ってるだけやがな。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<279KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef