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
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 依存しているクレートが多いとビルドが長い、いい加減にしろ。なんじゃこりゃ
905デフォルトの名無しさん
2021/03/21(日) 22:47:11.34ID:ut0JDDIv >>901
だから考えてるスケールが全然違うっつーの
だから考えてるスケールが全然違うっつーの
906デフォルトの名無しさん
2021/03/22(月) 01:13:43.80ID:04BxTma4 具体的な話を出さないでキレられても困るよ
907デフォルトの名無しさん
2021/03/22(月) 01:39:21.20ID:g4YfSh3E Rust の実行ファイルが大きくなりがちなのは何でもかんでもスタティックリンクする文化であって、
そうしてでもうんざりするような (実行時の) 依存関係に悩まされたくないという話なので、
不要なもので肥大化しているわけじゃないよ。 本来必要なものがあるだけ。
もちろん制約の大きい組み込み環境でごく基本的なライブラリすら制約してまで
大きさを削ったら使い勝手は悪いだろうけど、
それは Rust に限った話でもない当たり前のことだし。
メモリが数キロバイトとかいうレベルだったら (少なくとも現時点では) Rust が不向きというのはそうかもしれない。
そんで特に Rust を使いたいというケースでもない。
そうしてでもうんざりするような (実行時の) 依存関係に悩まされたくないという話なので、
不要なもので肥大化しているわけじゃないよ。 本来必要なものがあるだけ。
もちろん制約の大きい組み込み環境でごく基本的なライブラリすら制約してまで
大きさを削ったら使い勝手は悪いだろうけど、
それは Rust に限った話でもない当たり前のことだし。
メモリが数キロバイトとかいうレベルだったら (少なくとも現時点では) Rust が不向きというのはそうかもしれない。
そんで特に Rust を使いたいというケースでもない。
908デフォルトの名無しさん
2021/03/22(月) 02:21:57.65ID:gSVpx604 >>906
具体的に言語化できる能力あったらこんなとこで愚痴垂れてないでしょう
具体的に言語化できる能力あったらこんなとこで愚痴垂れてないでしょう
909デフォルトの名無しさん
2021/03/22(月) 03:18:48.61ID:4PFilboR Linuxのディストロだとなるべくダイナミックリンクにするようにしてると思うんだけど
Rust製ツールとその方針の相性悪い気がする
Rust製ツールとその方針の相性悪い気がする
910デフォルトの名無しさん
2021/03/22(月) 13:19:06.90ID:TItJ887g Q. Rustの倒し方を教えて下さい
A. まずデータセンターを燃やします
フランスのデータセンターで火災…『Rust』に復元不可能なデータロストが発生するなど大規模被害に発展 | エンタメウィーク
https://ent.smt.docomo.ne.jp/article/8989583
A. まずデータセンターを燃やします
フランスのデータセンターで火災…『Rust』に復元不可能なデータロストが発生するなど大規模被害に発展 | エンタメウィーク
https://ent.smt.docomo.ne.jp/article/8989583
911デフォルトの名無しさん
2021/03/22(月) 14:05:31.64ID:b6jSgIhJ Rustってなんか日本人的にわびさびっぽい名前でいいよな
912デフォルトの名無しさん
2021/03/22(月) 14:14:36.76ID:TQ1DOP8h ググラビリティがGoより低いと思ってる元凶な
913デフォルトの名無しさん
2021/03/22(月) 14:52:55.38ID:g4YfSh3E そこんところは golang とか rustlang とか書く風習が出来てるから
たいした問題ではないんだが、 C のことを clang とか書き始めるやつが出てきてクソッタレという感じ。
よそでどんな習慣が出来てもいいけど変な汚染するなよな〜〜という。
たいした問題ではないんだが、 C のことを clang とか書き始めるやつが出てきてクソッタレという感じ。
よそでどんな習慣が出来てもいいけど変な汚染するなよな〜〜という。
914デフォルトの名無しさん
2021/03/22(月) 16:00:21.60ID:g8se3Ggw LLVM ClangはふつうClangて書かない?
915デフォルトの名無しさん
2021/03/22(月) 16:55:21.38ID:Y0cj97US Clang は Clang のことなので
C のことを Clang っていわれると困るって話
C のことを Clang っていわれると困るって話
916デフォルトの名無しさん
2021/03/22(月) 17:14:35.17ID:g8se3Ggw あ,なる.
917デフォルトの名無しさん
2021/03/22(月) 18:00:28.80ID:RaSrXyKY918デフォルトの名無しさん
2021/03/22(月) 18:02:24.77ID:PWQX5uRW GCCもClangだし
919デフォルトの名無しさん
2021/03/22(月) 20:15:31.61ID:gSVpx604920デフォルトの名無しさん
2021/03/22(月) 21:30:42.61ID:G3nK37aG >>919
そもそも最近はディストロのパッケージ管理システムに乗りたくなくなっているのでは?いろいろなディストロのいろいろなバージョンに対してバイナリを提供すること自体が大変で。
Gentooやってると依存関係ミスっててコンパイルこけるとかよくある。
(そういう意味でもGoやRustはかなりコンパイルに失敗しづらくて安心感はある)
退化している感もあるけど、GitHubで全ディストロ対応のシングルバイナリ配るのが結局楽だった、という感じなのかも。
そもそも最近はディストロのパッケージ管理システムに乗りたくなくなっているのでは?いろいろなディストロのいろいろなバージョンに対してバイナリを提供すること自体が大変で。
Gentooやってると依存関係ミスっててコンパイルこけるとかよくある。
(そういう意味でもGoやRustはかなりコンパイルに失敗しづらくて安心感はある)
退化している感もあるけど、GitHubで全ディストロ対応のシングルバイナリ配るのが結局楽だった、という感じなのかも。
921デフォルトの名無しさん
2021/03/22(月) 22:38:58.65ID:0BePobhO >>918
え?
え?
922デフォルトの名無しさん
2021/03/22(月) 22:40:19.34ID:qQVVw1tm 場合によっては違うバージョンのライブラリが共存することもあるし
ファイル名のルールでどうにかしたりはすごく面倒
近頃はコンテナにまるごと突っ込むとか言った解決法も取れるが、
それなら全部スタティックリンクしたらええやんというのは
順当な方針だよな
ファイル名のルールでどうにかしたりはすごく面倒
近頃はコンテナにまるごと突っ込むとか言った解決法も取れるが、
それなら全部スタティックリンクしたらええやんというのは
順当な方針だよな
923デフォルトの名無しさん
2021/03/22(月) 22:41:18.91ID:iFQHROzx パッケージのバージョン管理とかRustは最近のnpmばりによくできてるんじゃないの
知らんけど
知らんけど
924デフォルトの名無しさん
2021/03/22(月) 22:42:28.95ID:qQVVw1tm925デフォルトの名無しさん
2021/03/22(月) 23:22:40.71ID:4PFilboR Ruby, Python, Rとか言語独自のパッケージ管理システムもありつつ
同時にディストロのパッケージ管理システムにも有名ライブラリだけは乗ってたりして
なんか二重管理みたいな変な事になってる
同時にディストロのパッケージ管理システムにも有名ライブラリだけは乗ってたりして
なんか二重管理みたいな変な事になってる
926はちみつ餃子 ◆8X2XSCHEME
2021/03/23(火) 01:05:05.52ID:G0iN/IIq 開発環境が用意するパッケージ管理は開発環境の管理だし
ディストリビューションの管理は実行環境の管理なんだけど、
ライブラリが実行環境なのか開発環境なのかは不可分な部分もあって単純に二分できんのよ。
C/C++ のライブラリのパッケージ管理が発展してないのは伝統的に
ディストリビューションのパッケージ管理に全力で乗っかる文化があったからで、
モダンな開発環境は分けようとしてかえってややこしくしているような気もする。
元々あった問題があぶりだされただけかもしれんけど。
ディストリビューションの管理は実行環境の管理なんだけど、
ライブラリが実行環境なのか開発環境なのかは不可分な部分もあって単純に二分できんのよ。
C/C++ のライブラリのパッケージ管理が発展してないのは伝統的に
ディストリビューションのパッケージ管理に全力で乗っかる文化があったからで、
モダンな開発環境は分けようとしてかえってややこしくしているような気もする。
元々あった問題があぶりだされただけかもしれんけど。
927デフォルトの名無しさん
2021/03/23(火) 01:20:30.89ID:27d1w4K5 まあlibcのバージョン違いで困った経験あると、スタティックリンクはやむ無しって思うけど。
928デフォルトの名無しさん
2021/03/23(火) 02:36:10.01ID:yC2dAiwP929デフォルトの名無しさん
2021/03/23(火) 09:53:23.27ID:KOWk2YN0 >>926
C/C++全盛の頃はコードを書く人と使う人が一致してることが多かったから問題なかった気がする。
自分の環境さえ正しくセットアップすればそれで問題ないという。
今みたいにGitHubでコード共有するのが当然って世界だと違う環境でビルドするのが困難ってのはきつい。
OSSのC++ライブラリを使おうとしたときに、作者と違うディストリビューション使ってる場合、ほぼ確実になんらかのトラブルにはまる印象だなぁ。
C/C++全盛の頃はコードを書く人と使う人が一致してることが多かったから問題なかった気がする。
自分の環境さえ正しくセットアップすればそれで問題ないという。
今みたいにGitHubでコード共有するのが当然って世界だと違う環境でビルドするのが困難ってのはきつい。
OSSのC++ライブラリを使おうとしたときに、作者と違うディストリビューション使ってる場合、ほぼ確実になんらかのトラブルにはまる印象だなぁ。
930デフォルトの名無しさん
2021/03/23(火) 12:53:42.65ID:71b8io/J てか低レイヤー依存のパッケージは言語パッケージ管理じゃ扱いづらいだろ。
931はちみつ餃子 ◆8X2XSCHEME
2021/03/23(火) 15:23:13.29ID:G0iN/IIq932デフォルトの名無しさん
2021/03/23(火) 16:03:34.41ID:p4kRzxCA Rustと関係ない雑談はそろそろよそでやって下さいね
933デフォルトの名無しさん
2021/03/23(火) 16:25:13.28ID:rdqm0ni7 次世代言語21 Go Nim Rust Swift Kotlin TypeScript
https://mevius.5ch.net/test/read.cgi/tech/1587276362/
あっちのスレの流れの中に投下するものがこっちに誤爆して話題が続いてるだけだぞ
https://mevius.5ch.net/test/read.cgi/tech/1587276362/
あっちのスレの流れの中に投下するものがこっちに誤爆して話題が続いてるだけだぞ
>>918
???
???
935デフォルトの名無しさん
2021/03/23(火) 22:26:53.30ID:97s02znqレス数が900を超えています。1000を超えると表示できなくなるよ。
ニュース
- 自民・麻生太郎 副総裁 石破政権の1年は「どよーん」 高市政権の発足で「何となく明るくなった」「世の中のことが決まり動いている」 [Hitzeschleier★]
- JA全農が「新おこめ券」…来年9月末の有効期限を新設、必要経費のみ上乗せ [蚤の市★]
- 1人3千円の食品高騰対策、何に使える? あいまいなまま衆院通過 [蚤の市★]
- ゆたぼん 二重手術を報告「めちゃくちゃ気に入っています」 [muffin★]
- 「働いて働いて」の流行語大賞に懸念 「言葉が独り歩き」 過労自殺遺族 [尺アジ★]
- ひろゆきさん「津波の来る土地に住むのやクマの来る土地、台風の来る土地、地震の来る土地に住むのが悪い」 [牛丼★]
- 【安倍晋三】クマ駆除で誤射した猟友会隊員に町が1663万円請求【山形】 [452056903]
- 【実況】博衣こよりのえちえちダンガンロンパ2🧪★3
- 【実況】博衣こよりのえちえちダンガンロンパ2🧪★2
- 官僚「台湾有事についての質問か、『政府として逐一答えない』と…(カタカタカタ)」高市「私1人で答弁できるわよ!」 [972432215]
- 🏡
- 雑談した~い!
