1 名前:デフォルトの名無しさん mailto:sage [2021/04/02(金) 21:38:04.11 ID:L7IeSfpL.net] Mozilla発のRust言語のスレ 公式 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 part9 https://mevius.5ch.net/test/read.cgi/tech/1598112455/
766 名前:デフォルトの名無しさん mailto:sage [2021/05/24(月) 23:17:37.88 ID:zk4LoLUU.net] Java 8とかC++ 14以降くらいなら結構似たような機能も入ってるし そこまで大変じゃない気がする
767 名前:デフォルトの名無しさん mailto:sage [2021/05/24(月) 23:36:00.17 ID:JJaZh5wC.net] c++はともかく、cくらいはやっぱ理解してた方が早道な気はする。
768 名前:デフォルトの名無しさん mailto:sage [2021/05/25(火) 01:36:21.07 ID:5vUI50kp.net] 以下のような関数を作ったんですがmatchが多くてどうしようか考えていました fn foo(x: Option<u32>, y: Option<&str>) { //実際はOptionが5個とか let x = match x { Some(x) => x, None => return, }; let y = match y { Some(y) => y, None => return, }; println!("{} {}", x, y); } 考えついたのが、次のようにする方法なのですが、 fn foo(x: Option<u32>, y: Option<&str>) -> Option<()> { let x = x?; let y = y?; println!("{} {}", x, y); Some(()) } 記載の省略のためだけに返値の型をOption<()>にして最後にSome(())つけるのがすごく気持ち悪いんですが、 返値なしのままどうにかする方法はないでしょうか
769 名前:デフォルトの名無しさん mailto:sage [2021/05/25(火) 02:11:48.11 ID:QcInQ0e9.net] if_chain使って if_chain!{ if let Some(x) = x; ... then { println!("{}", x); } }
770 名前:デフォルトの名無しさん mailto:sage [2021/05/25(火) 02:16:51.35 ID:Ygc8ZzR1.net] >>753 fooの型変えられないなら、戻り値Optionはクロージャないしローカル関数に留めるといいと思う https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=aa2bc019e7329f1b6bece2597b59ee8a
771 名前:デフォルトの名無しさん mailto:sage [2021/05/25(火) 03:00:10.05 ID:nrKC74iS.net] Ok(())はよく使うがSome(())はないな 普通にif-letでパターンマッチするのでよくない? if let (Some(x), Some(y)) = (x, y) { println!("{} {}", x, y); }
772 名前:デフォルトの名無しさん mailto:sage [2021/05/25(火) 05:18:39.47 ID:gz717nup.net] loggerを引数で渡すためには ロギングを行うクラスFooがどこかしら(コンストラクタか個々のメソッドで)loggerを受け取る引数を持たねばならない これ、ロギングみたいな裏方の仕事がFooのインターフェース仕様に影響しているということで、 抽象度が下がってるやんけ;;; 引き換えに得られるメリットは、Fooのインスタンスごとにloggerを切り替えられるというおおよそ現実的にありがたみが無い機能だけ
773 名前:デフォルトの名無しさん [2021/05/25(火) 06:08:48.35 ID:FYPKUk3M.net] >>756 それをmachでやるのがよくない?
774 名前:デフォルトの名無しさん mailto:sage [2021/05/25(火) 06:23:40.79 ID:gz717nup.net] つか機能の分離と記述の分離はトレードオフがある 1+1=2の形式的証明がどんだけの糞みたいな分量のに成り得るかを見たらワカル どっかの抽象度をつきつめれば別のところにしわ寄せが逝く それで良いジャマイカ人間の言語だもの、
775 名前:デフォルトの名無しさん mailto:sage [2021/05/25(火) 09:01:56.56 ID:5vUI50kp.net] 皆様ありがとうございます どうもSomeをある程度書くのは避けられない感じですね
776 名前:デフォルトの名無しさん mailto:sage [2021/05/25(火) 10:09:28.07 ID:4oEEOZjA.net] まさかstatic変数使ってるなんて、logクレートには失望したわ
777 名前:デフォルトの名無しさん mailto:sage [2021/05/25(火) 10:33:41.89 ID:bGIV0Xp5.net] >>757 ログを裏方と考えるのも偏ってるし、ログ切り替えはデバッグ目的で普通にあるわ。 別にグローバルにするという選択が間違いとも思わんがこういう決めつけ野郎は邪魔だな。
778 名前:デフォルトの名無しさん mailto:sage [2021/05/25(火) 10:59:01.14 ID:/nQyXsn+.net] サーバ側だとログを取るのが基本だし取り方も変えたくなるからlogger渡しは結構やるな CLIとかなら雑にstaticでいいけど
779 名前:デフォルトの名無しさん mailto:sage [2021/05/25(火) 13:12:03.88 ID:CssgwvqL.net] >>761 stdも使えないじゃん
780 名前:デフォルトの名無しさん mailto:sage [2021/05/25(火) 18:48:30.58 ID:4oEEOZjA.net] >>764 なんで?
781 名前:デフォルトの名無しさん mailto:sage [2021/05/25(火) 19:25:41.69 ID:CssgwvqL.net] >>765 https://github.com/rust-lang/rust/blob/a7890c7952bdc9445eb6c63dc671fa7a1ab0260d/library/std/src/io/stdio.rs#L553
782 名前:デフォルトの名無しさん mailto:sage [2021/05/25(火) 19:39:28.48 ID:4oEEOZjA.net] >>766 えー これからは write() システムコールでプリントするわ
783 名前:デフォルトの名無しさん [2021/05/25(火) 21:02:03.28 ID:p1A5R6d8.net] stdが嫌ならcoreを使え
784 名前:デフォルトの名無しさん mailto:sage [2021/05/25(火) 22:59:34.15 ID:gz717nup.net] >>762 近代的なログシステムならタグが使えるから 記録時に分っける理由がさらさらない だいたい並列な事象を並列なまま記録したのでは時系列の解析ができないし、 そもそも>>762 がいくら「ログは裏方じゃない」と叫んだところで基準が無い アプリケーションロジックを汚してまでか?!という議論はいつまでもつきまとう
785 名前:デフォルトの名無しさん mailto:sage [2021/05/26(水) 00:00:47.75 ID:S2nFrW0F.net] 別に仕事で使ったことないならそういえばいいと思うよ。悪いことしてるわけじゃないんだから。
786 名前:デフォルトの名無しさん mailto:sage [2021/05/26(水) 00:04:47.15 ID:PLorGv/T.net] そういやLog4JでいうMDCみたいなやつはあるのかしら?
787 名前:デフォルトの名無しさん mailto:sage [2021/05/26(水) 00:07:56.89 ID:rwxZHBm1.net] お前らslog >>760 ただのzipやん。 ttps://play.rust-lang.org/?version=nightly&mode=debug&edition=2021&gist=01c2f30ff2a49dc57c917ec16947aadb
788 名前:デフォルトの名無しさん mailto:sage [2021/05/26(水) 08:19:13.92 ID:AN5OxrIl.net] まあloggingオブジェクトを複数作る仕事なんなら仕方が無いな
789 名前:デフォルトの名無しさん mailto:sage [2021/05/26(水) 08:29:19.07 ID:vJAmL6Qi.net] slog見たけど、クソややこしいな
790 名前:デフォルトの名無しさん mailto:sage [2021/05/28(金) 09:51:25.19 ID:jQHjx/Sg.net] シンタックスで判断しづらいもので性的分析するって、そのうち破綻しそうだな。
791 名前:デフォルトの名無しさん mailto:sage [2021/05/28(金) 09:54:11.42 ID:S8Iz9SRl.net] エロい分析か
792 名前:デフォルトの名無しさん mailto:sage [2021/05/28(金) 10:45:17.68 ID:EKMYAKDR.net] やらC
793 名前:デフォルトの名無しさん mailto:sage [2021/05/29(土) 20:28:41.06 ID:sKXDX7XX.net] JPEG-XLのリファレンス実装作ってるチームがRustで再実装も始めてて驚いた https://github.com/libjxl/jxl-rs FirefoxにJPEG-XL対応を入れるかどうか議論するチケットで 今更大量のunsafeなC++コードを入れるのはちょっと……みたいな反応をされてた事と関係あるのかもしれない
794 名前:デフォルトの名無しさん [2021/05/30(日) 15:56:56.42 ID:HupJBx7X.net] https://4e6.github.io/firefox-lang-stats/ https://www.openhub.net/p/firefox/analyses/latest/languages_summary Firefox、かなりの割合でC++のコード入ってるけどこれでも減らそうとしてるのか
795 名前:デフォルトの名無しさん mailto:sage [2021/05/30(日) 16:00:13.57 ID:P46Jh5T1.net] もう9.5%も行ってるのか と言うかfirefoxからrustは始まったから当然か
796 名前:デフォルトの名無しさん mailto:sage [2021/05/30(日) 16:15:38.02 ID:ds+xAsBi.net] でも、大量の有名なWebサービスが一時的にRubyで書いていたのに、 しばらくすると他言語に書き直した歴史がある。 アメリカ人はなぜか言語を書き直すのが好きなようだ。 Rustで書いてもまた別言語に直すかも知れない。 なお、Googleドライブなどの各社のストレージサービスを統一的なAPIで制御できる ライブラリも何故かGoで書かれている。 メンドクサイ。
797 名前:デフォルトの名無しさん [2021/05/30(日) 17:11:41.17 ID:cF4puvJq.net] >>781 遅い方から速い方へ書き直すのよ 特にスクリプト言語からC++/Rustへ書き換えるとサーバー数を1/10にできるケースもあり規模によっては経費激減ね GoもGCあるから場合によっては他へ書き換えられる対象になりうるかも Rustが他へ書き換えられる可能性がもしあるとしたら今はまだ存在しない新たに出現する言語へ
798 名前:デフォルトの名無しさん [2021/05/31(月) 00:35:54.04 ID:7s+MSAY0.net] なんでClippy大先生がcargoでインストールできるクレートから外されるの?
799 名前:デフォルトの名無しさん mailto:sage [2021/05/31(月) 01:50:13.82 ID:u1BqTaEs.net] rustupでインストールできるからでは rustcとバージョン合わせないといけないから他のcrateと同じ扱いはしづらいのでは
800 名前:デフォルトの名無しさん mailto:sage [2021/05/31(月) 08:44:19.92 ID:etoumxTf.net] Ruby on Rails の時価総額は、 Shopify が15兆円、 民泊のAirbnb が、大手ホテル3社の合計以上の10兆円、 Github が8千億円 これぐらい巨大でも、Rails で出来る。 時価総額が千億円以上になったら、Go, Elixir を考えてもよい 食べチョクは売上50億円らしいけど、 若い文系女が1人で起業したような会社は、Rails で十分 売上が千億円を超えたら、考えてもよい
801 名前:はちみつ餃子 mailto:sage [2021/05/31(月) 15:24:48.93 ID:hqkxpUd6.net] ウェブシステム全体の実行コストはネットワークや IO にボトルネックが有るので システム構成やらなんやらで工夫するのがまずやることで、 言語の速度が少しばかり速いのはそんなに効いてこないよ。 という話もよく聞くんだけど、実際のところどんなもんやろね?
802 名前:デフォルトの名無しさん [2021/05/31(月) 16:31:16.04 ID:slsuSMsk.net] そりゃそうね でも実行速度だけで選ぶわけじゃないからね
803 名前:デフォルトの名無しさん mailto:sage [2021/05/31(月) 19:40:04.29 ID:mBUAbPrR.net] 今まではハードにぶん投げても大丈夫だったのが ハードの進化の鈍化でソフト側が工夫しないと駄目になりつつあるって話ってマジ?
804 名前:デフォルトの名無しさん mailto:sage [2021/05/31(月) 21:37:16.00 ID:M7WLmn8V.net] いやそこでソフトで頑張ってもほぼダメだろ。。アーキテクチャで分散化考えないとって話じゃないかね
805 名前:はちみつ餃子 mailto:sage [2021/06/01(火) 01:05:37.48 ID:69wa4c/Y.net] >>788 ハードウェアがもう伸びないってことではなくて、 CPU の速度が単純に速くなるという方向ではもう伸びにくいって話。 電子の大きさは変えられないから際限なく微細化できるわけではない。 わかりやすい例で言えば今のパソコンはマルチコアが当たり前になってて複数の CPU を載せる方向で性能を上げているが、 マルチコアを想定してないソフトをマルチコアパソコンで動かしてもひとつのコアしか使わないので性能が出ない。 高価な GPU を乗せても GPU を使うプログラムになってなきゃ意味がない。 ハードウェアの総合的な性能を上げるには色んな工夫があり得て、それらを実現すると同時に ソフトウェアは「ハードウェアに合わせて」「ハードウェアの性能を引き出すように」工夫がいる。 これは今までにも普通にやってたことで、今になって必要になったわけじゃない。 小さな変化の積み重ねなこともあれば大きな変革を迫られることもあるってだけ。
806 名前:デフォルトの名無しさん mailto:sage [2021/06/01(火) 07:44:50.11 ID:DWqq5xbS.net] 後藤弘茂のWeekly海外ニュース■ Prescott/Tejasは5GHz台、65nmのNehalemは10GHz以上に ttps://pc.watch.impress.co.jp/docs/2003/0227/kaigai01.htm 当時は景気よかったっすね。すぐ後に爆熱で日和ったけど そして今、300Wの時代・・・ てか並列化によるスループットの向上はこのあたりから検討されるようになっていた気が
807 名前:デフォルトの名無しさん [2021/06/01(火) 19:29:09.48 ID:a3oi+h5L.net] >>784 でも何故かcargoだけはcargo install cargo --forceとすれば自分でコンパイルしたもので上書きができる謎
808 名前:デフォルトの名無しさん [2021/06/04(金) 15:33:30.83 ID:kJqxa98Z.net] よくわからないんだけどこれ、C言語のポインタ渡しが諸悪の根源で、そこを断ちさえすればC言語も所有権概念を取り入れられるの?
809 名前:デフォルトの名無しさん mailto:sage [2021/06/04(金) 15:42:09.57 ID:03MQShFS.net] >>793 C言語において、ポインタは大発明で、それによってリンクリストやツリー構造 が簡単に実装に出来る様になった、大変重要なもの。 C言語からポインタを絶てば何も残らない。
810 名前:デフォルトの名無しさん mailto:sage [2021/06/04(金) 15:48:43.92 ID:1/rRer4v.net] Javaキチガイはポインタ使いこなせない 日本のMSの社員がソレだった 破棄忘れてやんのw
811 名前:デフォルトの名無しさん mailto:sage [2021/06/04(金) 15:55:06.60 ID:JfDLBnT5.net] RAIIなしで良いなら多少の拡張で所有権の概念取り込めるかも知れないけど 絶対スマートポインタ欲しくなるしCの表現力だと使いづらい物になりそうな気がする
812 名前:デフォルトの名無しさん mailto:sage [2021/06/04(金) 16:03:03.62 ID:KjgiO9jk.net] >>794 >C言語において、ポインタは大発明 笑笑
813 名前:デフォルトの名無しさん mailto:sage [2021/06/04(金) 17:24:32.39 ID:Lunsq3fv.net] Cと比較するのは流石に乱暴だろ C++と比較するべき で、C++でできなくてRustでできるものというのは現状存在しない (今後その差も埋まっていくだろうが) C++とRustの違いはひとえにスタンスの違いだよ 自由奔放なC++か良いコードにカッチリ導いてくれるRustか 意欲的に新機能取り込んで発展してるのは両者とも同じ
814 名前:デフォルトの名無しさん mailto:sage [2021/06/04(金) 17:31:18.17 ID:AGlHvwIO.net] >>798 >C++でできなくてRustでできるものというのは現状存在しない こういう比べ方はアホ チューリング完全ならなんでもできるじゃんみたいなことになる できるできないの線引きが恣意的
815 名前:デフォルトの名無しさん mailto:sage [2021/06/04(金) 17:54:18.33 ID:7u0nl5aT.net] >>799 バカアホじゃなくて、Rustでしかできないものの例を挙げてください そうすれば一単語で反論の余地なく終わるんで
816 名前:デフォルトの名無しさん [2021/06/04(金) 17:58:01.49 ID:UUHTR6cx.net] C++は奇麗に描くと言うのが出来ない
817 名前:デフォルトの名無しさん mailto:sage [2021/06/04(金) 18:03:48.84 ID:Pwqe5Yy7.net] >>800 C++でできなくてRustでできるもの から Rustでしかできないもの への華麗な転身www
818 名前:デフォルトの名無しさん mailto:sage [2021/06/04(金) 18:16:57.72 ID:hlBLv8XD.net] C++はMemory Safetyをコンパイル時に担保できない Rustを使う一番の動機
819 名前:デフォルトの名無しさん [2021/06/04(金) 18:53:59.58 ID:nHzCWsfU.net] >>802 C++とRustの比較において「C++でできなくてRustでできるもの」と「Rustでしかできないもの」は同じ意味だから転身でもなんでもない https://i.imgur.com/3svkdus.png
820 名前:デフォルトの名無しさん mailto:sage [2021/06/04(金) 19:11:16.95 ID:s8nyhwnD.net] Cloudflareの画像処理責任者を名乗る人も、これ以上C++ライブラリを増やすのはイヤでござると発言してるな
821 名前:デフォルトの名無しさん mailto:sage [2021/06/04(金) 19:23:30.63 ID:4pNcWBF2.net] >>804 C++とRust以外にも言語はたくさんある
822 名前:デフォルトの名無しさん mailto:sage [2021/06/04(金) 19:29:23.53 ID:nsxzushh.net] Rustのモジュール(ファイル分割)の仕組みはC++のヘッダー+ソース(+名前空間)より扱いやすいと思う C++は分割コンパイルが主流だった歴史的経緯があるから仕方ないけど事前の宣言が必要なのは地味に面倒くさい
823 名前:デフォルトの名無しさん [2021/06/04(金) 19:43:15.38 ID:nHzCWsfU.net] >>806 この会話の流れではC++とRustの比較をしていたから
824 名前:デフォルトの名無しさん mailto:sage [2021/06/04(金) 19:58:10.76 ID:4pNcWBF2.net] ライフタイムによるメモリ管理はRustオンリーだろ
825 名前:デフォルトの名無しさん mailto:sage [2021/06/04(金) 20:12:39.71 ID:s8nyhwnD.net] マイナーな環境だとC++プログラムは様々な理由でコンパイルが通らないことがよくある Rustは基本的にはそういう事ないし、コンパイラ実装が一つしかないというのも利点に働く
826 名前:デフォルトの名無しさん mailto:sage [2021/06/04(金) 20:40:42.82 ID:CpdoeubZ.net] C++との比較を議論したいなら専用の隔離スレでどうぞ
827 名前:デフォルトの名無しさん mailto:sage [2021/06/04(金) 22:02:04.46 ID:ivUqItUs.net] >>793 は言語レベルのサポートがほしいんだろ? substructural type systemがないと無理。 >>809 MLkit,RTSJ,cyclone,ATS/ATS2。学術的にはとっくの昔に廃れたぞ。
828 名前:デフォルトの名無しさん mailto:sage [2021/06/04(金) 22:04:58.58 ID:yXI/MC9G.net] WinUIとRustやってる人いる? 同じネイティブのMFCとかと比べて、やっぱり生産性は高いんかな
829 名前:デフォルトの名無しさん mailto:sage [2021/06/04(金) 22:26:52.09 ID:I1RVdPKQ.net] メモリ関連って原因不明のバグ引き起こしやすいしトータルな目で見れば上がるんじゃないだろうか
830 名前:デフォルトの名無しさん mailto:sage [2021/06/04(金) 23:27:29.47 ID:JfDLBnT5.net] >>810 gcc-rsとかのプロジェクト始まってるけどそれはネガティブなことなのかね
831 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 06:04:54.16 ID:uC9Joojh.net] >>810 そういえば、C++のSTLは、VSでは動くが、BSD系のLLVM用のlibc++は、 なかなか上手く動いてくれない。理由は、libc++が、その 基礎関数として滅多に使われないようなMB・WC文字変換関連や、 NAN、INFINITYなどのfloat/double調査関数など、昔ながらのC環境では 定義されて無いような(新しい)Cの関数を大量に必要としているため。 その意味で、WasmのWASIなんかは、たとえCUIだけであっても 世界共通の関数群を整備してくれるのだとしたら有りがたいかも知れない。 でもWASI自体の移植作業が必要になるから一緒か。
832 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 06:14:19.54 ID:uC9Joojh.net] >>816 昔からCには文字種判別として、isalphaやisdigitなどがあるが、 libc++は、isalpha_l()などのlocale指定タイプを必要としていたりして locale関連がやたらと複雑。また、その isalpha_lなどを基礎にしてくれているならまだしも、isalpha_lが内部で使っている 文字種テーブル unsigned short _ctype[256]; も仮定していたりする。 このテーブルは、_CONTROL、_SPACE、_DIGIT、_ALPHAなどの BIT定数とandを取ってBITが立っているかどうかで文字種を判定する。 それは環境依存なのだが、高速化のためか何故かそれを必要としている。 (C++のライブラリが欲しいのに、そのライブラリが、なぜか一般的ではない 大量のC関数や特殊なデータテーブルを必要としてしまっている。) だから移植が進まない。 plain Cは、標準ライブラリが多くの環境である程度の互換性を持って整備されているが、 結果的にC++のSTLはなかなかそうではないようだ。
833 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 06:17:47.83 ID:uC9Joojh.net] C++ライブラリがisalpha_lなどを用いてしまったら、速度面でC#やJavaなど に比べた優位性が少なくなってしまうからかも知れない。 つまり高速化のためにやたらと移植性の低い方法を使っているから、 スムーズに移植が進まない。 それか単純にC++ライブラリを作る人の技術力が低いからだろうか?
834 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 06:20:08.28 ID:uC9Joojh.net] >>801 すまんが、Rustはもっと出来ない気がする。
835 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 09:02:04.60 ID:KdS0cXcP.net] RustスレでC++の話題が出てしまうのはもはや運命なのか
836 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 09:20:03.77 ID:3ILRB2eH.net] >>820 そりゃ better C++言語として作られたんだから当たり前でしょう
837 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 09:32:35.80 ID:4o2YwJP1.net] ライフラインの書き方がとにかく見づらい
838 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 09:45:07.09 ID:3ILRB2eH.net] これヤバくない? どうやって防いだらいいんだろう? https://github.com/lucky/bad_actor_poc
839 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 09:46:58.65 ID:4o2YwJP1.net] localhostに送るだけならいくないん?
840 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 09:53:33.78 ID:3ILRB2eH.net] え、マジで言ってるの?
841 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 10:04:24.16 ID:4o2YwJP1.net] あおられてもダメな理由がわかりまそん びっくりはするけど
842 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 11:21:46.59 ID:KdS0cXcP.net] 悪意を持ったコードをビルドしない
843 名前:デフォルトの名無しさん [2021/06/05(土) 12:04:01.08 ID:bvIfRQLF.net] c++との比較はガファムが結論出してくれたからもう話すことなどない
844 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 12:08:54.56 ID:85+uBK5B.net] 何をみて結論だと思ってんだか。短絡的だな。
845 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 12:26:06.61 ID:YTe/4gPS.net] 依存するクレートの依存するクレートの依存するクレートの以下無限ループまで全部チェックしないと駄目ー?(´・ω・`)
846 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 12:58:14.11 ID:KdS0cXcP.net] チェックするツールとか誰か作っていそうだね バイナリを診断するよりは簡単だろうし
847 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 13:57:18.40 ID:IMH8ctkE.net] >>826 念のためマジレスすると公開した人がいつでもlocalhostを〇国サーバーのアドレスに書き換えられるってこと githubのオープンソースでそれやったらすぐにばれそうだけど ビルド時ならともかくエディタ起動直後のコード解析でデータが送信されるのは盲点やね
848 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 14:01:47.49 ID:f5S9H8yw.net] ビルドしなくてもファイルを開いたらコードが実行されるというのはよろしくないね ファイルやネットワークならアクセスされる側でブロック可能だけど メモリはサンドボックス内のみで展開・実行されるようにしないとブロックできない気がする サンドボックス化できなければ cargo auditやcargo crevを通して怪しいcrateだけ自分でチェックするとかかな
849 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 14:06:05.14 ID:KdS0cXcP.net] vscodeやlspヤバイな
850 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 14:13:31.58 ID:8YO6sBC6.net] 解決方: vscode を使わない
851 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 14:27:34.92 ID:4o2YwJP1.net] まったくだ
852 名前:デフォルトの名無しさん [2021/06/05(土) 14:48:29.61 ID:uV7DnhUL.net] 見た感じVSCode以外でもマクロが実行されるようなことをすると駄目っぽいが
853 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 14:52:35.33 ID:4o2YwJP1.net] MS自身がやりたい放題だからメンタルも伝播するだろうな
854 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 15:03:58.08 ID:85+uBK5B.net] >>835 それrust使わなけりゃでも良くね?
855 名前:デフォルトの名無しさん [2021/06/05(土) 15:09:20.73 ID:uV7DnhUL.net] そもそもこれ本質はライブラリの信頼性って問題だと思うんだよな Rustだけじゃなく他の言語にも言える話
856 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 15:22:11.73 ID:85+uBK5B.net] お得意の静的チェックでなんとかしたら?
857 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 15:29:47.09 ID:KdS0cXcP.net] 中国のipアドレスは
858 名前:全部ブロックしておくのが正解だな [] [ここ壊れてます]
859 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 15:51:07.65 ID:3ILRB2eH.net] IntelliJ/CLion でもproc_macro実行されちゃうの?
860 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 16:11:56.77 ID:Fi/fLauk.net] LSPはクソ vscodeありきの思想
861 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 16:32:08.49 ID:6EguRj/L.net] LSPってHSPの親戚ですか?
862 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 16:43:48.73 ID:KdS0cXcP.net] long short play モードだよ
863 名前:はちみつ餃子 mailto:sage [2021/06/05(土) 16:56:48.31 ID:G0EcoOQC.net] >>844 LSP はエディタとの連携を前提として明文化された規格にしたってだけで、 処理系にコンパイルさせた結果をエディタの表示に反映させるというのは昔から有ったんだぞ。
864 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 17:38:04.49 ID:ftrSVS/I.net] >>847 > 処理系にコンパイルさせた結果をエディタの表示に反映させるというのは昔から有ったんだぞ。 いやそりゃそうだろ その説明じゃ flycheck 等と差がない
865 名前:はちみつ餃子 mailto:sage [2021/06/05(土) 18:00:21.39 ID:G0EcoOQC.net] >>848 Rust のコードをビルドしないときでもエディタ経由で勝手にビルドする (そのときに悪意のあるコードも走らせられるかもしれない) という文脈の中で >>844 の発言があったので、 それは LSP が作られる前から同じような危険性はあっただろうという反論を私はしたつもり。 LSP のせいじゃなくてコンパイル時に出来ることが多い Rust のせいって話。
866 名前:デフォルトの名無しさん mailto:sage [2021/06/05(土) 18:09:21.84 ID:Fi/fLauk.net] はあ話になんね こいつといいQZといい「何か物申したい」という気持ちだけで生きてるから常に空回ってんだよな