Mozilla発のRust言語のスレ
公式
https://www.rust-lang.org/
https://blog.rust-lang.org/
https://github.com/rust-lang/rust
Web上の実行環境
https://play.rust-lang.org
前スレ
Rust part8
https://mevius.5ch.net/test/read.cgi/tech/1579834072/
探検
Rust part9
レス数が900を超えています。1000を超えると表示できなくなるよ。
2020/08/23(日) 01:07:35.52ID:MgEpWwVh
805デフォルトの名無しさん
2021/03/12(金) 01:23:52.52ID:U+iRPjP4 staticはクラス変数とは違うような
806はちみつ餃子 ◆8X2XSCHEME
2021/03/12(金) 03:18:16.54ID:ByeOJ4Y7 Rust は色んなものをモジュール単位にしているような印象がある。
構造体のフィールドへのアクセスもモジュール内では制限がなくて、
モジュールの外に対して可視性を制御する仕組みになってるわけだし。
型の単位ではプライベートとパブリックを分ける気がない。
考え方次第ではあるけどスコープ管理の「雰囲気」からすると
C++ のクラスが Rust で言うところのモジュールに近いと言えなくもないんじゃね?
まあ前提が違うものについて無理やり共通点を見つけることにどれほど意味があるかわからんけど。
構造体のフィールドへのアクセスもモジュール内では制限がなくて、
モジュールの外に対して可視性を制御する仕組みになってるわけだし。
型の単位ではプライベートとパブリックを分ける気がない。
考え方次第ではあるけどスコープ管理の「雰囲気」からすると
C++ のクラスが Rust で言うところのモジュールに近いと言えなくもないんじゃね?
まあ前提が違うものについて無理やり共通点を見つけることにどれほど意味があるかわからんけど。
807デフォルトの名無しさん
2021/03/12(金) 10:21:25.50ID:3fdjVE8p808デフォルトの名無しさん
2021/03/12(金) 12:26:55.76ID:J+ar7EHR Dropboxは何のGUIライブラリで作られているのかわかりますか?
809デフォルトの名無しさん
2021/03/12(金) 16:33:37.37ID:qQge26zC >>808
rustで書き直したのはサービス側と同期エンジンじゃないかな?
rustで書き直したのはサービス側と同期エンジンじゃないかな?
810デフォルトの名無しさん
2021/03/12(金) 18:45:06.86ID:kTC1PKHO Rustって何で構造体のメモリーレイアウトをデフォルトでは勝手に並び替えるんだ?まじやめて欲しい
サイズを小さくする為?それとの他の理由があんのか?明示的だと言いながら余計な事ばかりすんなや
サイズを小さくする為?それとの他の理由があんのか?明示的だと言いながら余計な事ばかりすんなや
811デフォルトの名無しさん
2021/03/12(金) 20:33:09.00ID:jgkfYeWQ 老害乙
812デフォルトの名無しさん
2021/03/12(金) 20:59:59.44ID:Y+hYjm0T 構造体の並び順はメモリーアライメントで苦労したこと無い人の意見だな。
813デフォルトの名無しさん
2021/03/12(金) 21:41:21.91ID:1OUd5zSC >>810
#[repr(C)]付けないで文句言ってるならお前のせいやで?
#[repr(C)]付けないで文句言ってるならお前のせいやで?
814デフォルトの名無しさん
2021/03/12(金) 22:08:58.65ID:TCjnSuLT815デフォルトの名無しさん
2021/03/12(金) 23:34:08.62ID:9XEGWpCC 今時プラットフォームに依存する構造体のメモリーレイアウトを前提としたコードは書いちゃダメよ
816デフォルトの名無しさん
2021/03/13(土) 00:40:30.95ID:PGOVIZdP >>814
クラス変数って要はグローバル変数だから濫用すべきではないよ
クラス変数って要はグローバル変数だから濫用すべきではないよ
817デフォルトの名無しさん
2021/03/13(土) 15:49:02.94ID:GoEo1qHE818デフォルトの名無しさん
2021/03/13(土) 16:03:49.74ID:DC1SOqVQ819デフォルトの名無しさん
2021/03/13(土) 17:29:01.78ID:eNr110Cx820デフォルトの名無しさん
2021/03/13(土) 18:01:56.32ID:JM8M9JoF 選択可能なんだからどうでもいい
https://doc.rust-lang.org/nomicon/repr-rust.html
https://doc.rust-lang.org/nomicon/repr-rust.html
821デフォルトの名無しさん
2021/03/13(土) 20:55:02.47ID:yJisos8z >>817
コンパイラが十分賢くなったときに様々な最適化を自動で出来るようにする余地を残すため
デフォルトでメモリレイアウトを保証しないって設計になってるんだけど
自分で最適化する場合はコンパイラの最適化を抑止するってのはrustに限らずよくある話だしなにが不満なのかよくわからない
コンパイラが十分賢くなったときに様々な最適化を自動で出来るようにする余地を残すため
デフォルトでメモリレイアウトを保証しないって設計になってるんだけど
自分で最適化する場合はコンパイラの最適化を抑止するってのはrustに限らずよくある話だしなにが不満なのかよくわからない
822はちみつ餃子 ◆8X2XSCHEME
2021/03/13(土) 22:01:36.30ID:aUdFS8U8 >>810
明示的じゃん。
明示的に並べ替えを禁止する指定があるじゃん。
ほとんどの場合に順序はどうでもいいんだから、
どちらがデフォルトであるべきなのかなんて自明だろ。
条件付きだが C++ もデータメンバの順序を並び替えることは (言語仕様上は) 有りうるし、
並べ替えて良いと規定されているときに並べ替えを抑止するような指定方法はない。
(処理系の拡張としては有ったりするかもしれんが。)
Rust のほうがマシ。
現在の Rust は言語仕様と処理系の仕様の区別が曖昧なので repr が
(今後現れるかもしれない) 他の処理系でも使えるポータブルな機能なのかわからんけど。
明示的じゃん。
明示的に並べ替えを禁止する指定があるじゃん。
ほとんどの場合に順序はどうでもいいんだから、
どちらがデフォルトであるべきなのかなんて自明だろ。
条件付きだが C++ もデータメンバの順序を並び替えることは (言語仕様上は) 有りうるし、
並べ替えて良いと規定されているときに並べ替えを抑止するような指定方法はない。
(処理系の拡張としては有ったりするかもしれんが。)
Rust のほうがマシ。
現在の Rust は言語仕様と処理系の仕様の区別が曖昧なので repr が
(今後現れるかもしれない) 他の処理系でも使えるポータブルな機能なのかわからんけど。
823デフォルトの名無しさん
2021/03/13(土) 23:34:45.90ID:+sWre9Lj フランスのデータセンターの火災で『Rust』はデータの大規模なロストが発生
824デフォルトの名無しさん
2021/03/13(土) 23:53:02.21ID:+sWre9Lj なんか
struct Foo {
int m_a;
bool m_b;
int m_c;
bool m_d;
};
とかあったら
struct Foo {
int m_a;
int m_c;
bool m_b;
bool m_d;
};
にしたい衝動に駆られてストレスmaxなのでどうでもいい話ではない
struct Foo {
int m_a;
bool m_b;
int m_c;
bool m_d;
};
とかあったら
struct Foo {
int m_a;
int m_c;
bool m_b;
bool m_d;
};
にしたい衝動に駆られてストレスmaxなのでどうでもいい話ではない
825デフォルトの名無しさん
2021/03/14(日) 00:49:22.71ID:Atf6A86o >>824
LP64ならどっちもサイズ同じじゃん
LP64ならどっちもサイズ同じじゃん
826デフォルトの名無しさん
2021/03/14(日) 04:01:46.70ID:n3ZlR2nQ 構造体定義するときc++だとアライメントずれないように手作業でダミーのデーター詰めたりしてたけど、途中で型変えると並び替えメンドクサイ。自動で最適化してくれる方がいいし、どっちも選択出来るのだからRustの方が正しいわ。
827デフォルトの名無しさん
2021/03/14(日) 05:38:07.85ID:oMOPVtdk828デフォルトの名無しさん
2021/03/14(日) 08:27:15.60ID:8bm6cw7M >>826
ビット単位で詰めるからな。
ビット単位で詰めるからな。
829デフォルトの名無しさん
2021/03/14(日) 09:39:13.15ID:fDAcQow7 >>823
rustはrustで書かれたの?
rustはrustで書かれたの?
830デフォルトの名無しさん
2021/03/14(日) 13:13:21.06ID:5DzsH1LF ポケモンGOはGoで書かれた
831デフォルトの名無しさん
2021/03/14(日) 13:44:08.22ID:flEVf/TW マジかよ…
rustで書かれたゲームエンジンってのもちらほらあるんだな
rustで書かれたゲームエンジンってのもちらほらあるんだな
832デフォルトの名無しさん
2021/03/14(日) 14:08:02.49ID:eta5h4cX アライメント合わせとかコンパイラに任せたら良いし
最悪でもunionを使って型を並べたら最もアライメント条件が強い方の型に合うから
アライメント合わせの目的で手作業でダミーのデーター詰めを行うというのは都市伝説、
コンパイラがアライメントを合わせた結果としてできたPADDING部分のデータを
どうしても不定値にしたくないがmemset()で構造体全体をゼロクリアするわけにもいかないという
きわめてレアなケースでしか行わない
最悪でもunionを使って型を並べたら最もアライメント条件が強い方の型に合うから
アライメント合わせの目的で手作業でダミーのデーター詰めを行うというのは都市伝説、
コンパイラがアライメントを合わせた結果としてできたPADDING部分のデータを
どうしても不定値にしたくないがmemset()で構造体全体をゼロクリアするわけにもいかないという
きわめてレアなケースでしか行わない
833デフォルトの名無しさん
2021/03/14(日) 18:04:27.92ID:pLOBnReb 非同期のランタイムはtokioとasync-stdどどっちが標準になりそう?
834デフォルトの名無しさん
2021/03/14(日) 19:05:56.64ID:8bm6cw7M >>830
ポケモンRustじゃカッコ悪いしな。
ポケモンRustじゃカッコ悪いしな。
835デフォルトの名無しさん
2021/03/14(日) 21:20:59.71ID:T+7gBLoD Rustの悪口言いたい訳じゃないけど、デフォルトで並び替えるのは正しく思えないわ
#[repr(C)]つけろってのはその通りだけど、組み込み用途でつけ忘れてリリースして
しまったら考えるだけで恐ろしい
#[repr(C)]つけろってのはその通りだけど、組み込み用途でつけ忘れてリリースして
しまったら考えるだけで恐ろしい
836デフォルトの名無しさん
2021/03/14(日) 22:04:54.76ID:JBU2DMkD >>835
その程度も出来ない馬鹿だとCでやったら大惨事じゃね?
その程度も出来ない馬鹿だとCでやったら大惨事じゃね?
837デフォルトの名無しさん
2021/03/14(日) 22:31:41.33ID:pQGk05s+ デフォルトで余計なことやる設計が好きな人にはいいんじゃないの?
結局どっちに寄せるかだし。
結局どっちに寄せるかだし。
838デフォルトの名無しさん
2021/03/14(日) 23:37:14.51ID:n3ZlR2nQ >>835
自動ったって最適化の挙動はごく単純なルールだし、結果も解る範囲なのだからやはり問題ないとおもうけど。
自動ったって最適化の挙動はごく単純なルールだし、結果も解る範囲なのだからやはり問題ないとおもうけど。
839デフォルトの名無しさん
2021/03/14(日) 23:48:28.09ID:n3ZlR2nQ メモリレイアウトのパターンを何種類か決められて、それぞれの最適化パターンに名前が付けられていくと考えれば、概念的な意思の統一がしやすくなるわけでしよ。今まで皆がバラバラにやってた方がおかしいわけで。構造体の隙間にあちこちゴミ入ってるのどれほど見たことか。
840デフォルトの名無しさん
2021/03/15(月) 01:33:05.21ID:c4Lf5m0s >>835
clippy の improper-ctypes-definition とかで検出できるのでは
clippy の improper-ctypes-definition とかで検出できるのでは
841デフォルトの名無しさん
2021/03/15(月) 01:42:14.94ID:Nwz504CC Cはコンパイラによりけりで最適化の度合いによるけど、無茶な事をしなければ基本は
書いた通りにしか動かないよ。C++のクラスは継承を使うとよう分からんレイアウトを
しくさるけど。Rustのやり方でも問題は確かにないし、結局どっちに寄せるかと言うのも
その通り。むしろゴミと言うか他人がレイアウトを整理しようとして事故るパターンの方が
多いが、まあ確かに些細な事だろう
書いた通りにしか動かないよ。C++のクラスは継承を使うとよう分からんレイアウトを
しくさるけど。Rustのやり方でも問題は確かにないし、結局どっちに寄せるかと言うのも
その通り。むしろゴミと言うか他人がレイアウトを整理しようとして事故るパターンの方が
多いが、まあ確かに些細な事だろう
842デフォルトの名無しさん
2021/03/15(月) 01:45:53.32ID:uFpZBB9k C言語でも非標準とはいえ呼び出し規約の指定とかあったなあ
843デフォルトの名無しさん
2021/03/15(月) 02:24:54.25ID:8Jf2QlAa 付け忘れでリリースってテストもせずにリリースってこと?
確かにデフォルトで安全側に振るのはRustの基本方針だとは思うけど
全ての型をFFIする前提というのはやりすぎだと思うが。
確かにデフォルトで安全側に振るのはRustの基本方針だとは思うけど
全ての型をFFIする前提というのはやりすぎだと思うが。
844デフォルトの名無しさん
2021/03/15(月) 02:38:04.29ID:c4Lf5m0s Cは書いたとおりにしか動かないってのは単にCに対する理解度が高いだけでは
例えばアセンブリしか知らない人から見たら自動変数の振る舞いなんかは暗黙的な動作ばかりだと思うが
例えばアセンブリしか知らない人から見たら自動変数の振る舞いなんかは暗黙的な動作ばかりだと思うが
845デフォルトの名無しさん
2021/03/15(月) 13:54:57.20ID:faH0kxEk まったくその通り
Cでは書いたとおりにしか動かない、と思うのはCにあまりにペッタリ入り込みすぎて
もはやC脳になってしまっている(なので考えずに自動でなされる変換が頭のなかでできてしまう)か
またはじつは思いこみで理解が足りてないかのどっちか
Cでは書いたとおりにしか動かない、と思うのはCにあまりにペッタリ入り込みすぎて
もはやC脳になってしまっている(なので考えずに自動でなされる変換が頭のなかでできてしまう)か
またはじつは思いこみで理解が足りてないかのどっちか
846はちみつ餃子 ◆8X2XSCHEME
2021/03/15(月) 14:00:05.56ID:GOWRyYdB 更に言えば最適化を有効にしたらかなりアクロバティックなコードを生成してくることもあるので人間には予測不能。
847デフォルトの名無しさん
2021/03/15(月) 19:06:12.98ID:tiOBROfx たいしてメモリ削減できない言語のくせに変な最適化かけんなよって話だわ
848デフォルトの名無しさん
2021/03/15(月) 19:34:49.20ID:13DwLIrw Rustではunsafe使わない限りは構造体のフィールドレイアウトを変更しても問題無いので、最適化の余地を残す仕様になってるのは良い事なんでは
849デフォルトの名無しさん
2021/03/15(月) 19:54:56.71ID:nJdAJo9y >>845
書いた通りに動かないのはバグでは?
書いた通りに動かないのはバグでは?
850デフォルトの名無しさん
2021/03/15(月) 20:16:17.39ID:c4Lf5m0s Cが書いたとおりにしか動かないのと同様にRustも書いたとおりにしか動かないということ
構造体メンバの順序の話はrepr(C)つけたりclippy使えというのが結論で
デフォルトの挙動に違和感を覚えるか否かという話はbikeshed
構造体メンバの順序の話はrepr(C)つけたりclippy使えというのが結論で
デフォルトの挙動に違和感を覚えるか否かという話はbikeshed
851デフォルトの名無しさん
2021/03/15(月) 23:27:42.36ID:HGmaHoUI メンバの配置が固定だと移植性も下がるよね
パフォーマンスの低下くらいだったらかわいいけど
下手すればバスエラーで落ちる
パフォーマンスの低下くらいだったらかわいいけど
下手すればバスエラーで落ちる
852デフォルトの名無しさん
2021/03/16(火) 00:53:01.99ID:GTaecVmm 勝手に最適化する方が移植性落ちるわ。
853デフォルトの名無しさん
2021/03/16(火) 00:56:51.74ID:5nPZFfnW Cの常識がどこでも通用すると思ってると別の言語でも怪我しそう
854デフォルトの名無しさん
2021/03/16(火) 00:59:01.44ID:GTaecVmm コンパイラに全て任せればいいって考えのやつのが実際は事故ってるがな。
855デフォルトの名無しさん
2021/03/16(火) 01:07:50.71ID:5nPZFfnW 何に怒ってるのかよく分からないけどコンパイラによる構造体レイアウトの最適化がデフォルトオンになってるのがそんなに気に入らないの?
856デフォルトの名無しさん
2021/03/16(火) 05:37:04.29ID:0EC0D1BB >>854
それは言語の問題なのか、コンパイラの問題なのか、何が事故ってるの?
それは言語の問題なのか、コンパイラの問題なのか、何が事故ってるの?
857デフォルトの名無しさん
2021/03/16(火) 07:17:52.07ID:oighJobp ていうかCコンパイラのアラインメントだって最適化の一種じゃ?
858デフォルトの名無しさん
2021/03/16(火) 08:01:04.42ID:pXLX1cSG そんなに気になるなら、フォークして、
デフォルトの挙動が違うrustを作れば済む話じゃないの?
デフォルトの挙動が違うrustを作れば済む話じゃないの?
859デフォルトの名無しさん
2021/03/16(火) 08:39:27.88ID:SlLiGo1E 最適化でunalignedになって落ちるならコンパイラのバグなんだから直せばいいし、
手動であらゆるアーキ向けにパディングを調整するよりよっぽどいいと思うけどな。
手動であらゆるアーキ向けにパディングを調整するよりよっぽどいいと思うけどな。
860デフォルトの名無しさん
2021/03/17(水) 04:59:36.34ID:F/MTmTZA メモリレイアウトの話まだ続いてるの?
C++でダメなところ潰して制約強めでバグ出にくくしようって言語で、コンパイラが信じられないと言われてもコンセプトが違うとしか
C++でダメなところ潰して制約強めでバグ出にくくしようって言語で、コンパイラが信じられないと言われてもコンセプトが違うとしか
861デフォルトの名無しさん
2021/03/17(水) 20:44:00.69ID:hH82Uf3P C++でダメなところ潰して制約強めでバグ出にくくしようってのと、
コンパイラが信じられないからコンパイラ設計を楽にしようってのは別に矛盾しないがな。
頭悪すぎ。
コンパイラが信じられないからコンパイラ設計を楽にしようってのは別に矛盾しないがな。
頭悪すぎ。
862デフォルトの名無しさん
2021/03/17(水) 22:43:22.09ID:8cWw5z32 コンパイラ設計を楽にするって、例えばどういうこと?
863デフォルトの名無しさん
2021/03/18(木) 03:06:39.25ID:YG5QY/Fi ここまでの流れでコンパイラがバグるほど難しい事してないと思うけど。何を心配してるの?
864デフォルトの名無しさん
2021/03/18(木) 06:33:11.45ID:teFQO94z 何が問題なのかiefoneか何かで実例出して欲しいな
865デフォルトの名無しさん
2021/03/18(木) 06:33:40.91ID:teFQO94z ideoneでした
866デフォルトの名無しさん
2021/03/18(木) 08:04:15.94ID:VY1V7baX 問題になるのは外部リンゲージな関数で構造体を渡すときだと思うが
コンパイルした後リンクするみたいな本番行為ってiefoneできるんでしたっけ
コンパイルした後リンクするみたいな本番行為ってiefoneできるんでしたっけ
867デフォルトの名無しさん
2021/03/18(木) 08:37:15.10ID:teFQO94z テストの段階でわかるじゃないか
868デフォルトの名無しさん
2021/03/18(木) 09:11:26.74ID:7Uj1c/fU 本番行為大好きです
869デフォルトの名無しさん
2021/03/18(木) 22:11:22.58ID:j2TrRshi イデオンの本番?
870デフォルトの名無しさん
2021/03/18(木) 22:46:55.62ID:4SeQ/rCs iefone って中華スマホっぽいな。
871デフォルトの名無しさん
2021/03/19(金) 01:15:52.96ID:jSzcAIKb ウィンドーズのAPIの構造体みたいにメンバの数が異なる構造体のシリーズで
先頭部分は同じレイアウトであって欲しい、みたいな要請がある場合は
いかに自動レイアウトの規則が厳格に決まっていても問題を生じるし、
テストで見つけろといっても限界がある
メンバ数3、4、5はOKだった!→56億年後に弥勒菩薩が6番目のメンバをboolにしたらすべて崩れ去った、みたいな
先頭部分は同じレイアウトであって欲しい、みたいな要請がある場合は
いかに自動レイアウトの規則が厳格に決まっていても問題を生じるし、
テストで見つけろといっても限界がある
メンバ数3、4、5はOKだった!→56億年後に弥勒菩薩が6番目のメンバをboolにしたらすべて崩れ去った、みたいな
872デフォルトの名無しさん
2021/03/19(金) 01:18:45.07ID:jSzcAIKb それとも何かねここで言うテストというのはコンパイラの
自動レイアウトするロジックを見通したホワイトボックステストで
カバレッジ100%を目指せというのかね?
自動レイアウトするロジックを見通したホワイトボックステストで
カバレッジ100%を目指せというのかね?
873デフォルトの名無しさん
2021/03/19(金) 01:32:38.19ID:ZwQV5hpU で、どれだけメモリ量減らせてるの?
874デフォルトの名無しさん
2021/03/19(金) 01:46:10.43ID:jSzcAIKb かなり減る64 bit整数m個とbool m+1個の構造体で#pragma pack(〜)とかしない場合
順序依存で8*m + 8*(m+1)バイトになるか8*m + ceil((m+1)/8)バイトで済むかの違いがある
引いたらどれだけ減ったかワカル
順序依存で8*m + 8*(m+1)バイトになるか8*m + ceil((m+1)/8)バイトで済むかの違いがある
引いたらどれだけ減ったかワカル
875デフォルトの名無しさん
2021/03/19(金) 01:48:07.52ID:QYoHC3cJ この人何と戦ってるの
876デフォルトの名無しさん
2021/03/19(金) 02:08:13.91ID:qP05xHwq 日本語不自由なの多すぎか
877デフォルトの名無しさん
2021/03/19(金) 08:05:42.69ID:elmSSYEz C++だって処理系によってABI違って互換性無いのになに寝ぼけた事言ってんだ状態
878デフォルトの名無しさん
2021/03/19(金) 08:22:46.12ID:jSzcAIKb879デフォルトの名無しさん
2021/03/19(金) 08:52:24.84ID:6TNOQqr9 メーリングリストでそれらを主張してみてはどうか?ここで言ってもrust下げとしか見られない
880デフォルトの名無しさん
2021/03/19(金) 10:06:03.26ID:S4bW7+Mw さっぱりわかんねえんだが、
>先頭部分は同じレイアウトであって欲しい、みたいな要請がある場合は
こんなクソみたいな要請がある案件の場合はrepr(c)でいいんちゃうん?
>先頭部分は同じレイアウトであって欲しい、みたいな要請がある場合は
こんなクソみたいな要請がある案件の場合はrepr(c)でいいんちゃうん?
881デフォルトの名無しさん
2021/03/19(金) 10:57:59.03ID:jSzcAIKb スマン>>878はstdcallを念頭に言ったがcdeclはC言語処理系によって決まったと言ってよいかもしれませんねーorz
stdcallの発祥がWindowsとPascalのどちらが先なのかは知りま栓、
>880
>こんなクソみたいな要請がある案件の場合はrepr(c)でいいんちゃうん?
禿げしく同意
stdcallの発祥がWindowsとPascalのどちらが先なのかは知りま栓、
>880
>こんなクソみたいな要請がある案件の場合はrepr(c)でいいんちゃうん?
禿げしく同意
882デフォルトの名無しさん
2021/03/19(金) 11:33:49.63ID:qP05xHwq なにこいつ……
883デフォルトの名無しさん
2021/03/19(金) 14:44:53.99ID:ZYq4u5st884デフォルトの名無しさん
2021/03/19(金) 15:07:57.84ID:x8qTxIkr repr(C)をつけるのでは駄目な理由は誰も言えないのか
885デフォルトの名無しさん
2021/03/19(金) 15:11:24.58ID:gR5Gr2WA おじいちゃんが今際の際に「repr(C)は使うな…ガクッ」って言ってたんよ…
886デフォルトの名無しさん
2021/03/19(金) 17:24:40.30ID:t8rUWn4Q 不満があっても使い続ける必要があるなら、
フォークしちゃえばいいじゃん。
もやもやしつつ使い続けるのは、良くないよ。
フォークしちゃえばいいじゃん。
もやもやしつつ使い続けるのは、良くないよ。
887デフォルトの名無しさん
2021/03/19(金) 17:49:26.38ID:6tRZIbsl C/C++をいまさらフォークしたところで誰も見向きもせず
個人で使うだけで消えていくだけだろうが
rustなら「おっ、おれもこういうのが欲しかった!」
ってやつがむらがってきてワンチャン有名なれる・・かも?
個人で使うだけで消えていくだけだろうが
rustなら「おっ、おれもこういうのが欲しかった!」
ってやつがむらがってきてワンチャン有名なれる・・かも?
888デフォルトの名無しさん
2021/03/19(金) 18:09:28.62ID:UA/QoJ1s ナイナイ(ヾノ・∀・`)
889デフォルトの名無しさん
2021/03/19(金) 18:46:02.05ID:3FXWvrKo >>887
一貫性のあるc--ができたら可能性あるよ。
一貫性のあるc--ができたら可能性あるよ。
890デフォルトの名無しさん
2021/03/19(金) 19:57:51.38ID:gCuAqma+ >>885
同じおじいちゃんが原理主義者になるなってのも言ってただろうに。
同じおじいちゃんが原理主義者になるなってのも言ってただろうに。
891デフォルトの名無しさん
2021/03/19(金) 22:01:04.37ID:CjYMRRBz Cargo.tomlかなんかでデフォルトのreprを設定できればいいんすか?
俺は要らんけど
俺は要らんけど
892デフォルトの名無しさん
2021/03/19(金) 23:27:54.25ID:u/twtFDQ repr(C)がついてないデータ型に警告出すようなlint書いてclippyにpullreq出せば良いのでは
893デフォルトの名無しさん
2021/03/20(土) 05:48:46.20ID:7iIk7Cl9 別に
構造体XのメモリレイアウトをRustのデフォルトとすべきなのかrepr(C)で扱ってほしいのか(あるいはその他か)は
構造体Xを定義したときに定義した人の意向で決まるから何の問題も無い
別の人が構造体Xを間違ったメモリレイアウトで解釈するプログラムを書く危険性は
(わざとそうするのでもない限り)無い
構造体XのメモリレイアウトをRustのデフォルトとすべきなのかrepr(C)で扱ってほしいのか(あるいはその他か)は
構造体Xを定義したときに定義した人の意向で決まるから何の問題も無い
別の人が構造体Xを間違ったメモリレイアウトで解釈するプログラムを書く危険性は
(わざとそうするのでもない限り)無い
894デフォルトの名無しさん
2021/03/20(土) 05:53:57.90ID:7iIk7Cl9 、と思うんだけどrepr指定が異なる構造体はちゃんと別の型とみなされるの?
つまりrepr(C)のメモリレイアウトな構造体を、(例えば)repr(PACKED)なメモリレイアウトな構造体を引数にとる関数に
渡せてしまうとかあると悲劇なわけだが
Rust使ったことないからよくわからないので教えてくだちい、
つまりrepr(C)のメモリレイアウトな構造体を、(例えば)repr(PACKED)なメモリレイアウトな構造体を引数にとる関数に
渡せてしまうとかあると悲劇なわけだが
Rust使ったことないからよくわからないので教えてくだちい、
895デフォルトの名無しさん
2021/03/20(土) 11:19:17.36ID:ZBpm47pR896デフォルトの名無しさん
2021/03/20(土) 11:59:39.96ID:ARQDcx4T897デフォルトの名無しさん
2021/03/20(土) 12:09:06.74ID:JFutrdJQ Rustにランタイムなどないが
898デフォルトの名無しさん
2021/03/20(土) 12:20:42.44ID:Yqrg6wwp 実行ファイルの大きさの事かな?
899デフォルトの名無しさん
2021/03/20(土) 12:34:10.54ID:N5mfveDq stdがでかいって話かな?
なんかそれも問題になって対応策はあった気がするけど
なんかそれも問題になって対応策はあった気がするけど
900デフォルトの名無しさん
2021/03/20(土) 12:46:24.31ID:ZBpm47pR デフォルトでは利便性やリンクの高速化のために大きくなってるけど
組み込み用途ならちゃんと最小化する方法はあるし
Cと同程度まで縮むよ
組み込み用途ならちゃんと最小化する方法はあるし
Cと同程度まで縮むよ
901デフォルトの名無しさん
2021/03/20(土) 13:08:56.08ID:OmO/62/g >>896
下記の記事の Executable sizes の節で実行ファイルのサイズについてCとの比較を考察してた
サイズ削減する方法も書いてあったよ
https://kornel.ski/rust-c-speed
下記の記事の Executable sizes の節で実行ファイルのサイズについてCとの比較を考察してた
サイズ削減する方法も書いてあったよ
https://kornel.ski/rust-c-speed
902デフォルトの名無しさん
2021/03/20(土) 13:44:30.39ID:0Kyl0nNZ ちょびっとだけどついにlinux-nextにrustで書かれたコードが入ったか
903デフォルトの名無しさん
2021/03/20(土) 15:24:30.80ID:mHStnoHo >>896
組み込みデバイスでrustを使いやすくしようとしてるワーキンググループあるから
どういうところで不便に思っているのかコメント寄せてあげたら良いのでは
https://github.com/rust-embedded/wg
issueでコメント募集してるよ
組み込みデバイスでrustを使いやすくしようとしてるワーキンググループあるから
どういうところで不便に思っているのかコメント寄せてあげたら良いのでは
https://github.com/rust-embedded/wg
issueでコメント募集してるよ
904デフォルトの名無しさん
2021/03/21(日) 22:19:00.80ID:k7ifup1R 依存しているクレートが多いとビルドが長い、いい加減にしろ。なんじゃこりゃ
レス数が900を超えています。1000を超えると表示できなくなるよ。
ニュース
- 国民 居住目的でない住宅所有者に「空室税」課せる法案を提出 ★2 [少考さん★]
- 「働いて働いて」の流行語大賞に懸念 「言葉が独り歩き」 過労自殺遺族 [尺アジ★]
- アメリカ、入国時に「日本人を含む外国人観光客の最大5年分のSNS履歴の提出」義務化へ 過去10年間に使用のメールアドレスや電話番号等も★3 [Hitzeschleier★]
- 【山形】クマ駆除で誤射した猟友会隊員に町が1663万円請求へ...弾当たり男性大けが2023年 小国町 [nita★]
- 【画像】消えた美人女優 上原多香子さん(42)、沖縄で目撃される [牛丼★]
- 「暖房が使えない」「食費が高くて子どもの栄養が…」 物価高に苦しむ子育て世帯、政府に期待する支援は ★2 [蚤の市★]
- 【悲報】高市早苗、被災民に対し「自分の命くらいは自分で守ってくださいね」と切り捨てし大炎上 [339712612]
- 【実況】博衣こよりのえちえちダンガンロンパ2🧪★1
- 【実況】博衣こよりのえちえちダンガンロンパ2🧪★2
- 【高市悲報】JA、発狂www「臨時に経費率を下げるので、どうかお米券を使ってください」 [246620176]
- 【実況】博衣こよりのえちえちダンガンロンパ2🧪★2
- 高市早苗、森元総理の愛人だった [347751896]
