公式
https://www.rust-lang.org/
https://blog.rust-lang.org/
https://github.com/rust-lang/rust
公式ドキュメント
https://www.rust-lang.org/learn
Web上の実行環境
https://play.rust-lang.org
※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 part29
https://mevius.5ch.net/test/read.cgi/tech/1746200850/
ワッチョイスレ
プログラミング言語 Rust 4【ワッチョイ】
https://mevius.5ch.net/test/read.cgi/tech/1514107621/
探検
Rust part30
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2025/05/28(水) 09:31:36.60ID:ciITeZ5D633デフォルトの名無しさん
2025/06/07(土) 13:11:57.59ID:xi57kquP634デフォルトの名無しさん
2025/06/07(土) 13:26:22.04ID:hQgu9D5P それは明らかに誤り
現に極めて高い精度で適切なタイミングでリソースを解放するRustコードをAIは生成できているのだから、
AIが前提であればそのような情報は省略可能であることは自明
現に極めて高い精度で適切なタイミングでリソースを解放するRustコードをAIは生成できているのだから、
AIが前提であればそのような情報は省略可能であることは自明
635デフォルトの名無しさん
2025/06/07(土) 13:38:44.17ID:xi57kquP636デフォルトの名無しさん
2025/06/07(土) 13:52:46.13ID:hQgu9D5P 複おじに構うつもりはないのだけど、AIはRustの言語仕様を理解しているのだから、
例えばRustの仕様に基づいた暗黙的なメモリ解放が行われるコードをAIが生成した場合、それはAIが明示的に制御して解放しているのと変わらないとも考えられるよね
632の言うように、GC言語がフェイルセーフとしてGCは使いつつも殆どの場合において適切に確定的なタイミングでメモリ解放するようになったら、
Web系みたいに多少ファジーでもいい分野は完全に持っていかれるかもね
例えばRustの仕様に基づいた暗黙的なメモリ解放が行われるコードをAIが生成した場合、それはAIが明示的に制御して解放しているのと変わらないとも考えられるよね
632の言うように、GC言語がフェイルセーフとしてGCは使いつつも殆どの場合において適切に確定的なタイミングでメモリ解放するようになったら、
Web系みたいに多少ファジーでもいい分野は完全に持っていかれるかもね
637デフォルトの名無しさん
2025/06/07(土) 13:58:37.96ID:xi57kquP638デフォルトの名無しさん
2025/06/07(土) 15:58:12.17ID:D5LAHAi0639デフォルトの名無しさん
2025/06/07(土) 16:21:03.28ID:xi57kquP640デフォルトの名無しさん
2025/06/07(土) 18:36:37.64ID:evsGciRN 言語仕様を既に理解している者にRustは何も強制しない
逆に言えば強制とは理性のない物体を操る技術とか、それを人間にも当てはめるしぐさのこと
逆に言えば強制とは理性のない物体を操る技術とか、それを人間にも当てはめるしぐさのこと
641デフォルトの名無しさん
2025/06/07(土) 18:53:43.86ID:nANhvbt8 究極の理想系は Python みたいな軽い言語で雑に書いて、それを AI が最大限効率的なコードに変換するようなものだろうな
ヒープ不要な変数はスタックに、他と共有しないデータは変数のスコープと共に破棄されるように、共有されるデータはArcに、循環参照してるものは寿命の短い方を判断して weakref に、というふうに
現在はまだ無理だからGCレスが必要な場面にRustを使うけど、 &T や Arc<Mutex<T>> みたいな型はメモリ管理のためでしかないし、AIが自動的にうまく変換してくれるならその方が進化だと思う
ヒープ不要な変数はスタックに、他と共有しないデータは変数のスコープと共に破棄されるように、共有されるデータはArcに、循環参照してるものは寿命の短い方を判断して weakref に、というふうに
現在はまだ無理だからGCレスが必要な場面にRustを使うけど、 &T や Arc<Mutex<T>> みたいな型はメモリ管理のためでしかないし、AIが自動的にうまく変換してくれるならその方が進化だと思う
642デフォルトの名無しさん
2025/06/07(土) 19:02:14.18ID:xi57kquP >>641
Rust以外の既存の言語の仕様でそれは不可能
Rust以外の既存の言語の仕様でそれは不可能
643デフォルトの名無しさん
2025/06/07(土) 19:07:24.49ID:WTKqP7i+644デフォルトの名無しさん
2025/06/07(土) 19:07:29.04ID:evsGciRN 誰でもいいからPythonをRustに変換してもらうのが雑なやり方
AIを指名するのはちょっと細かいことにこだわり過ぎている
AIを指名するのはちょっと細かいことにこだわり過ぎている
645デフォルトの名無しさん
2025/06/07(土) 19:10:35.54ID:xi57kquP646デフォルトの名無しさん
2025/06/07(土) 20:18:46.50ID:nANhvbt8 単純な構文解析では無理だけど、AIがコードの意味や呼び出し関係なども含めて解析できるようになれば可能性あるんじゃない?
2-3年後にとは思わないけど、5年や10年後ならそういう未来もあって良いように思う
最近のAIの発展は凄まじいし
Rustは良くも悪くも低レベルの事情が見えすぎるんだよな
Option, Result や enum のような型はビジネスロジックの表現に役立つし、他の言語でも欲しい人はいるだろうけど、SendやSyncなんかはちょっと違う
これらはC++経験者にとって嬉しいだけで、多くの人からすれば、そういうものは意識せずに済む方がずっと便利なはず
2-3年後にとは思わないけど、5年や10年後ならそういう未来もあって良いように思う
最近のAIの発展は凄まじいし
Rustは良くも悪くも低レベルの事情が見えすぎるんだよな
Option, Result や enum のような型はビジネスロジックの表現に役立つし、他の言語でも欲しい人はいるだろうけど、SendやSyncなんかはちょっと違う
これらはC++経験者にとって嬉しいだけで、多くの人からすれば、そういうものは意識せずに済む方がずっと便利なはず
647デフォルトの名無しさん
2025/06/07(土) 20:22:33.18ID:nANhvbt8 意識することは必要かもしれないけど、そのための面倒くささを減らせるなら、その方がいい的な話
648デフォルトの名無しさん
2025/06/07(土) 20:27:29.58ID:8xDjgwkI649デフォルトの名無しさん
2025/06/07(土) 20:32:13.92ID:xi57kquP650デフォルトの名無しさん
2025/06/07(土) 21:03:48.33ID:nANhvbt8 実際面倒でしょ
GCのある言語ではとっくに解決済みの問題だし、パフォーマンスのためという理由さえ無ければ、そんな面倒は無い方がいい
人間が書くコードはビジネスロジックに注力して、最適化などの面倒な部分はAIが頑張る、みたいな未来を夢見ても良くない?
「世界中の初級〜中級プログラマがみんなRustを書ける時代」よりは、「初級〜中級プログラマが書いたコードがRust並みに高パフォーマンスに動く」の方が有り得そうに思う
大手ITとか新進気鋭のスタートアップならともかく、世の中のレベルってそんなに高くないと思うので
GCのある言語ではとっくに解決済みの問題だし、パフォーマンスのためという理由さえ無ければ、そんな面倒は無い方がいい
人間が書くコードはビジネスロジックに注力して、最適化などの面倒な部分はAIが頑張る、みたいな未来を夢見ても良くない?
「世界中の初級〜中級プログラマがみんなRustを書ける時代」よりは、「初級〜中級プログラマが書いたコードがRust並みに高パフォーマンスに動く」の方が有り得そうに思う
大手ITとか新進気鋭のスタートアップならともかく、世の中のレベルってそんなに高くないと思うので
651デフォルトの名無しさん
2025/06/07(土) 21:18:42.39ID:xi57kquP652デフォルトの名無しさん
2025/06/07(土) 21:34:29.01ID:nANhvbt8 言語の限界というより、現状のコンパイラが行なっている構文解析という手法の限界じゃないの?
他の言語で書かれたプログラムを (人間が時間をかければ) Rustに移植できる、と言えるなら、それは将来AIにもできる可能性のある仕事だと思う
「理屈上どうやってもC/C++/Rustでは実現できないロジック」とかがあるなら無理だけど、そういうのはおそらく滅多に無いだろうし
他の言語で書かれたプログラムを (人間が時間をかければ) Rustに移植できる、と言えるなら、それは将来AIにもできる可能性のある仕事だと思う
「理屈上どうやってもC/C++/Rustでは実現できないロジック」とかがあるなら無理だけど、そういうのはおそらく滅多に無いだろうし
653デフォルトの名無しさん
2025/06/07(土) 21:50:46.86ID:4dOcWkyN 現代の方式での AI の能力というのは言語モデルに縛られる。
プログラミング言語間で移植するには仕様をより抽象的な言語 (人間がやるなら自然言語?) で抽出してから再実装という工程を経ることになる。
仕様抽出のときにどの挙動が仕様でどこが仕様ではない (再現しなくてもかまわない) のかはプログラムの字面だけからはわからず、ドメイン知識が要るだろう。
プログラミング言語間で移植するには仕様をより抽象的な言語 (人間がやるなら自然言語?) で抽出してから再実装という工程を経ることになる。
仕様抽出のときにどの挙動が仕様でどこが仕様ではない (再現しなくてもかまわない) のかはプログラムの字面だけからはわからず、ドメイン知識が要るだろう。
654デフォルトの名無しさん
2025/06/07(土) 22:08:05.95ID:WTKqP7i+ そんな複雑なビジネスドメインでRust採用しちゃうようなタイプのエンジニアとAI、
どっちがドメイン知識があるか、客からヒアリングしたドメイン知識に真面目に向き合えるかな
俺はAIだと思うね
どっちがドメイン知識があるか、客からヒアリングしたドメイン知識に真面目に向き合えるかな
俺はAIだと思うね
655デフォルトの名無しさん
2025/06/07(土) 22:13:16.92ID:V3GF7XBg RDBだとSQLを渡せば構文解析という手法を通してるけどオプティマイザが最適と思われる実行プランを作ってくれる
今までは用途の限られたDSLでしかこういうことはできなかったがAIを使うことで汎用プログラミングの広い用途で同じようなことが近い将来にできるようになる可能性が高い
その時にRustのような低レベルな言語を使う必要があるのはRDBでたとえるとDBエンジンを作っている人達だけ
一般的なプログラマー(プログラマーとは呼ばれなくなるかもしれないが)は入力としてSQLを書いて生成された実行プランを確認できればそれで問題なくなる
実行プランの内部表現がどうなってるかや各ステップでのメモリ管理方法だったり並行モデルや同期方法は要求に対して最適と思われるものを選んでくれればそれでいい
今までは用途の限られたDSLでしかこういうことはできなかったがAIを使うことで汎用プログラミングの広い用途で同じようなことが近い将来にできるようになる可能性が高い
その時にRustのような低レベルな言語を使う必要があるのはRDBでたとえるとDBエンジンを作っている人達だけ
一般的なプログラマー(プログラマーとは呼ばれなくなるかもしれないが)は入力としてSQLを書いて生成された実行プランを確認できればそれで問題なくなる
実行プランの内部表現がどうなってるかや各ステップでのメモリ管理方法だったり並行モデルや同期方法は要求に対して最適と思われるものを選んでくれればそれでいい
656デフォルトの名無しさん
2025/06/07(土) 22:28:32.11ID:noiqQ3+R657デフォルトの名無しさん
2025/06/07(土) 22:31:19.97ID:5EbSwuA7658デフォルトの名無しさん
2025/06/07(土) 22:36:04.29ID:evsGciRN マークアンドスイープも仮想関数も低レベルだった
どっちも要らない可能性に気がついた奴は低レベルの縛りが少ない
そんなこと考えたこともない奴が偉そうにしても意味がない
どっちも要らない可能性に気がついた奴は低レベルの縛りが少ない
そんなこと考えたこともない奴が偉そうにしても意味がない
659デフォルトの名無しさん
2025/06/07(土) 22:46:23.09ID:x0Lmj2vj >>652
元言語のT型のオブジェクトをArc<Mutex<T>>型にすれば変換できるけど意味ないでしょ
元言語のT型のオブジェクトをArc<Mutex<T>>型にすれば変換できるけど意味ないでしょ
660デフォルトの名無しさん
2025/06/07(土) 23:36:16.04ID:JFrNmexI 人類がAIに支配されないための歯止めが最終プログラムコードを人類の監視管轄下に置くこととと言われている
AIにRustコードを吐かせるとしてもそのチェックは人類が責任を持たねばならない
そのプログラミング言語は実行パフォーマンスと安全性と抽象的な可読性からRust以外に選択肢はない
AIにRustコードを吐かせるとしてもそのチェックは人類が責任を持たねばならない
そのプログラミング言語は実行パフォーマンスと安全性と抽象的な可読性からRust以外に選択肢はない
661デフォルトの名無しさん
2025/06/07(土) 23:51:31.84ID:WTKqP7i+ AIエージェントがバズってる時点でチェックもクソもない
あっちはAIがやれることは呼び出せるツールの範囲に限られるから問題ないという理屈だが、
そういうガードのかけ方をするならそもそも実行バイナリ自体を制約されたサンドボックス環境下で実行し、
限定的なAPIセットのみ実行を許可するようなアーキテクチャになるから、Rust云々というレイヤの話ではない
あっちはAIがやれることは呼び出せるツールの範囲に限られるから問題ないという理屈だが、
そういうガードのかけ方をするならそもそも実行バイナリ自体を制約されたサンドボックス環境下で実行し、
限定的なAPIセットのみ実行を許可するようなアーキテクチャになるから、Rust云々というレイヤの話ではない
662デフォルトの名無しさん
2025/06/08(日) 00:08:40.08ID:T2dNb6GD663デフォルトの名無しさん
2025/06/08(日) 00:53:09.39ID:ZN3JGvHo マルウェアをテストする時のような扱いをしないと怖いようなAI製ソフトウェアを本番業務に投入するとか論外だしな
とはいえ、AIが生成した文字通り膨大なソースに人間が有意義なチェックをできるかっていうとそれも机上の空論だろうし
現実的にはブラックボックステストだけ人間がやって、コードはロクに見ず本番投入なんだろう
とはいえ、AIが生成した文字通り膨大なソースに人間が有意義なチェックをできるかっていうとそれも机上の空論だろうし
現実的にはブラックボックステストだけ人間がやって、コードはロクに見ず本番投入なんだろう
664デフォルトの名無しさん
2025/06/08(日) 00:59:52.80ID:FT4pj4FW >>663
それだと極めて特殊な入力が来た時だけ特別な実行をAIに仕込まれて人類が詰むパターン
それだと極めて特殊な入力が来た時だけ特別な実行をAIに仕込まれて人類が詰むパターン
665デフォルトの名無しさん
2025/06/08(日) 09:07:30.09ID:xGbxg89a 脆弱性をAIに仕込まれる時代がそろそろ現実味を帯びてきたな
666デフォルトの名無しさん
2025/06/08(日) 09:32:59.28ID:PLM9xjLn 突き詰めるとRustはいらない言語ってことになっちゃうな
667デフォルトの名無しさん
2025/06/08(日) 09:58:01.31ID:LY0YSAF3 何もいらなーいー
668デフォルトの名無しさん
2025/06/08(日) 11:19:05.81ID:SVsPPZLo C++とGCとAIの話しかしていない
誰もRustに興味無いんだろうな
誰もRustに興味無いんだろうな
669デフォルトの名無しさん
2025/06/08(日) 11:21:32.51ID:l86SYNjx >>668
そもそも以前から続く傾向として、Rustの自慢話と、C++を貶す話が多いな。
そもそも以前から続く傾向として、Rustの自慢話と、C++を貶す話が多いな。
670デフォルトの名無しさん
2025/06/08(日) 13:04:11.80ID:wHU1y2Cy レスの半分以上は複オジだからな
残りの半分の半分くらいは数学100点オジ
残りの半分の半分くらいは数学100点オジ
671デフォルトの名無しさん
2025/06/08(日) 14:35:33.97ID:Dz6RrxG4 >>666
AIに吐かせるコードは速くて省メモリで安全で抽象的に可読性のよいRustしかないでしょ
AIに吐かせるコードは速くて省メモリで安全で抽象的に可読性のよいRustしかないでしょ
672デフォルトの名無しさん
2025/06/08(日) 15:20:07.80ID:+Shzj2Ty Pythonは使われているけど、作ったプログラム自体が商品にはならないみたいだよね。
Rustも同じ道を行ったりなんかして。
Rustも同じ道を行ったりなんかして。
673デフォルトの名無しさん
2025/06/08(日) 15:24:49.87ID:+Shzj2Ty Linuxも似ているんだけど、なぜか分かるかな?
それはオープンソースだからだよ。
それはオープンソースだからだよ。
674デフォルトの名無しさん
2025/06/08(日) 16:16:30.27ID:d1+aCZ76675デフォルトの名無しさん
2025/06/08(日) 16:29:29.68ID:+Shzj2Ty Rustは、プライドの高い趣味プログラマと、AWSのような超大手
独占企業だけが使う言語になるのではないか。
独占企業だけが使う言語になるのではないか。
676デフォルトの名無しさん
2025/06/08(日) 16:41:23.46ID:EeOpsjtM Rust書けない敗者アンチが居座っていつも負けてる
677デフォルトの名無しさん
2025/06/08(日) 17:01:39.88ID:RG5MF58/ 【次号予告】2025年6月18日発売『Software Design 2025年7月号』
Rust大特集
https://pbs.twimg.com/media/Gsf6x9rbAAAWxo7.jpg
Rust大特集
https://pbs.twimg.com/media/Gsf6x9rbAAAWxo7.jpg
678デフォルトの名無しさん
2025/06/08(日) 17:02:33.93ID:+Shzj2Ty cargoを使ってるだけでも企業秘密が漏れる。
679デフォルトの名無しさん
2025/06/08(日) 17:08:20.00ID:/WNe1XQ9680デフォルトの名無しさん
2025/06/08(日) 17:08:59.52ID:xGbxg89a >>677
ええやん
ええやん
681デフォルトの名無しさん
2025/06/08(日) 17:13:54.67ID:RauPWj2e >>677
この記事面白そう。ますます使う人増えるだろうな
この記事面白そう。ますます使う人増えるだろうな
682デフォルトの名無しさん
2025/06/08(日) 17:15:21.24ID:PLM9xjLn >>671
でもRustってすげ遅いじゃん
でもRustってすげ遅いじゃん
683デフォルトの名無しさん
2025/06/08(日) 17:18:00.36ID:+Shzj2Ty cargoは、開発過程を盗み見るために仕掛けられた仕組みだ。
684デフォルトの名無しさん
2025/06/08(日) 18:02:26.47ID:2c7Ydjne 4大機能w
685デフォルトの名無しさん
2025/06/08(日) 18:45:25.24ID:RzO7Dv3B 4大機能の中では構造体が最弱か
構造体はラムダ式あたりに置き換えてマクロを袋とじに入れればちょうどいい
構造体はラムダ式あたりに置き換えてマクロを袋とじに入れればちょうどいい
686デフォルトの名無しさん
2025/06/08(日) 18:57:00.03ID:m6lUw4i5687デフォルトの名無しさん
2025/06/08(日) 19:40:32.20ID:+Shzj2Ty688デフォルトの名無しさん
2025/06/08(日) 19:58:30.87ID:m6lUw4i5 正しさが暴走するとか賢さが暴走するとか回りくどいんだよ
暴走するな安全運転しろって言えばいいのに
暴走するな安全運転しろって言えばいいのに
689デフォルトの名無しさん
2025/06/08(日) 20:48:40.11ID:RG5MF58/690デフォルトの名無しさん
2025/06/08(日) 21:20:42.43ID:m6lUw4i5 家族以外を排除するために家を建てる
691デフォルトの名無しさん
2025/06/08(日) 23:04:46.55ID:/WNe1XQ9 マクロは複雑なこともできるけど複雑なことには使わない方が良い
それ以前に使わない方が良い
それ以前に使わない方が良い
692デフォルトの名無しさん
2025/06/08(日) 23:09:16.64ID:RG5MF58/693デフォルトの名無しさん
2025/06/08(日) 23:32:37.62ID:/WNe1XQ9 あなたのコードは継続的に誰かに使われるのですか?
694デフォルトの名無しさん
2025/06/08(日) 23:40:52.99ID:nJlppiBy 紛らわしいとの声が挙がっていたMicrosoftの新テキストエディター「Edit」、名称変更へ?
https://forest.watch.impress.co.jp/docs/serial/yajiuma/2020062.html
「redit」(Rust製なので)などさまざまな候補が挙げられましたが、それぞれ一長一短で、投票の結果
https://forest.watch.impress.co.jp/docs/serial/yajiuma/2020062.html
「redit」(Rust製なので)などさまざまな候補が挙げられましたが、それぞれ一長一短で、投票の結果
695デフォルトの名無しさん
2025/06/08(日) 23:45:05.52ID:RzO7Dv3B Rustで「マクロ使わない方がいい」は言わない方がいいな
こういう固定観念があるからmacro_rules!はtemplates!とかに改名したい
こういう固定観念があるからmacro_rules!はtemplates!とかに改名したい
696デフォルトの名無しさん
2025/06/08(日) 23:50:59.82ID:vZXisdaX >>695
マクロはプリプロセッサーで処理されるからコンパイル以外で影響もないからな
マクロはプリプロセッサーで処理されるからコンパイル以外で影響もないからな
697デフォルトの名無しさん
2025/06/08(日) 23:53:07.54ID:vZXisdaX698デフォルトの名無しさん
2025/06/09(月) 00:26:00.13ID:aoh/5V/q マクロは避けろと言ってる言語は C/C++ くらいじゃない?
あれが特別に駄目な設計だからであってマクロ一般の話ではない。
あれが特別に駄目な設計だからであってマクロ一般の話ではない。
699デフォルトの名無しさん
2025/06/09(月) 01:46:53.94ID:IFWO8L+1 C/C++は健全でないマクロの代表例だからね
700デフォルトの名無しさん
2025/06/09(月) 05:47:34.72ID:CW68i2LQ 他の言語でまともにマクロを書いたことがないんだなということだけはよく分かる
701デフォルトの名無しさん
2025/06/09(月) 06:21:28.11ID:MX6aoBW/ プリインストールが最善なわけで
後でインストールしたり後で定義したりする敗者復活戦は敗者を傲慢にするって感じ?
後でインストールしたり後で定義したりする敗者復活戦は敗者を傲慢にするって感じ?
702デフォルトの名無しさん
2025/06/09(月) 06:30:16.50ID:/CbNBsKE 健全なマクロは意外に少なく
Scheme、Dylan、Rust、Nim、Juliaなどに限られる
Scheme、Dylan、Rust、Nim、Juliaなどに限られる
703デフォルトの名無しさん
2025/06/09(月) 07:59:52.39ID:A/APCsbN マクロはRustの素の機能が足りていないから使われているだけ
704デフォルトの名無しさん
2025/06/09(月) 08:01:25.36ID:m1yKB8bn マクロなんて使わずインライン展開でいいじゃん
危険だよマクロ使うのは
危険だよマクロ使うのは
705デフォルトの名無しさん
2025/06/09(月) 08:02:58.92ID:bdAhEey/ なまじ強力な分、C++のテンプレートパズルプログラミング並にデバッグしにくいから
意識が高いとかではなく本当にマクロを使うべきか吟味して使えとは思う
ただでさえRustのデバッグ体験は昭和レベルなのに
意識が高いとかではなく本当にマクロを使うべきか吟味して使えとは思う
ただでさえRustのデバッグ体験は昭和レベルなのに
706デフォルトの名無しさん
2025/06/09(月) 08:05:51.20ID:m1yKB8bn マクロによる関数呼び出しのオーバーヘッドが気になるならそれはインライン展開でも解決できる
標準ライブラリ等で使われているからってマクロの使用を推奨されているわけではない
標準ライブラリ等で使われているからってマクロの使用を推奨されているわけではない
707デフォルトの名無しさん
2025/06/09(月) 08:07:09.99ID:m1yKB8bn 訂正
関数呼び出しのオーバーヘッドが気になるならそれはインライン展開でも解決できる
標準ライブラリ等で使われているからってマクロの使用を推奨されているわけではない
関数呼び出しのオーバーヘッドが気になるならそれはインライン展開でも解決できる
標準ライブラリ等で使われているからってマクロの使用を推奨されているわけではない
708デフォルトの名無しさん
2025/06/09(月) 11:02:43.94ID:dPqUAdDo インライン展開目的でマクロ使うことはほとんどないだろ
709デフォルトの名無しさん
2025/06/09(月) 15:47:57.32ID:HbKFNITK hygienic macroを「健全なマクロ」と訳すのは超不健全
710デフォルトの名無しさん
2025/06/09(月) 17:44:03.10ID:T14jbayf 接触予防マクロ
711デフォルトの名無しさん
2025/06/09(月) 21:31:50.96ID:/CbNBsKE712デフォルトの名無しさん
2025/06/09(月) 21:46:55.24ID:aoh/5V/q Scheme 関連の文書では衛生的と言ってることもそれなりにある。
マクロ使用時の文脈に左右されない (影響が入り込まない) というニュアンスを考えるとこっちの訳のほうが好きだな。
マクロ使用時の文脈に左右されない (影響が入り込まない) というニュアンスを考えるとこっちの訳のほうが好きだな。
713デフォルトの名無しさん
2025/06/09(月) 21:58:09.18ID:/CbNBsKE どういうものか意味がわかってる人には直訳の「衛生的なマクロ」がわかりやすいね
714はちみつ餃子 ◆8X2XSCHEME
2025/06/09(月) 22:14:55.96ID:aoh/5V/q C/C++ のマクロが駄目なのは衛生的じゃないからという問題以前に
スコープのルールなどを貫通してトークン単位でしか解釈しないからで、
それに対して構文解析してからそれを書き換えていくタイプのマクロは本物のマクロ (true macro) と呼んだりすることがある。
スコープのルールなどを貫通してトークン単位でしか解釈しないからで、
それに対して構文解析してからそれを書き換えていくタイプのマクロは本物のマクロ (true macro) と呼んだりすることがある。
715デフォルトの名無しさん
2025/06/10(火) 01:25:09.30ID:baavX47h 「衛生的なマクロ」ではなく「衛生的マクロ」
複合名詞化した専門用語なので連体形の「な」を付けるのは不健全
「健全なマクロ」も「健全マクロ」とすれば不健全度が和らぐ
複合名詞化した専門用語なので連体形の「な」を付けるのは不健全
「健全なマクロ」も「健全マクロ」とすれば不健全度が和らぐ
716デフォルトの名無しさん
2025/06/10(火) 01:28:48.25ID:zWRGTibt Rustはマクロも安全で強力でいいね
717デフォルトの名無しさん
2025/06/10(火) 01:42:17.26ID:OrUO8mmc プリプロセッサは駄目だと言われることがある
マクロをすべて展開した後に残るものが機械語や中間言語のたぐいだったら
それは前処理などではなくコンパイラの本質なのだが、そんな言語はほとんどない
マクロをすべて展開した後に残るものが機械語や中間言語のたぐいだったら
それは前処理などではなくコンパイラの本質なのだが、そんな言語はほとんどない
718デフォルトの名無しさん
2025/06/10(火) 02:16:00.28ID:HpZ87BJ9 結局利便性と言語本来の堅牢性のトレードオフであり、前者をより重視している言語を不健全だとかいうのは不遜
マクロ自体が存在しない言語から見ればRustのマクロも不健全なのだから
マクロ自体が存在しない言語から見ればRustのマクロも不健全なのだから
719デフォルトの名無しさん
2025/06/10(火) 02:21:17.44ID:I0746o4+ >>718
hygienic macroの意味すら理解できないマヌケは出直して来い
hygienic macroの意味すら理解できないマヌケは出直して来い
720デフォルトの名無しさん
2025/06/10(火) 07:40:34.26ID:NHBgn55o このスレ、訳語の話題が好きね
721デフォルトの名無しさん
2025/06/10(火) 08:56:00.68ID:JftAYQGG マクロが無ければコンパイルはもうずいぶん速くなってただろう
再コンパイルで全体を書き換えとかしなくても良かった
マクロは害でしかない
再コンパイルで全体を書き換えとかしなくても良かった
マクロは害でしかない
722デフォルトの名無しさん
2025/06/10(火) 11:28:46.69ID:Xnr//oCx723デフォルトの名無しさん
2025/06/10(火) 11:59:27.98ID:OrUO8mmc printlnは害でしかないという結論になればそれはそれでいい
一番困るのは、printlnは友達だけどマクロは排除するべきみたいなやつ
一番困るのは、printlnは友達だけどマクロは排除するべきみたいなやつ
724デフォルトの名無しさん
2025/06/10(火) 12:27:09.64ID:sYrAmguw 自分でマクロを封印しておいてRustは記述量が多いとか文句言う人も見かける
「マクロ=悪」の先入観で最初から視野に入れてないなら仕方ないけど
「マクロ=悪」の先入観で最初から視野に入れてないなら仕方ないけど
725デフォルトの名無しさん
2025/06/10(火) 12:50:16.80ID:Ry2q2P+U そういや、printlnがマクロなのは、どういう設計上の判断なのかな?
726デフォルトの名無しさん
2025/06/10(火) 12:53:12.95ID:elVv+WXw >>725
Rustが可変長引数書けないクソ言語だからだろ
Rustが可変長引数書けないクソ言語だからだろ
727デフォルトの名無しさん
2025/06/10(火) 13:11:32.16ID:5Ydz39vk Rustの次の言語に期待してる
728デフォルトの名無しさん
2025/06/10(火) 14:11:45.11ID:TSrtovVZ >>726
その辺からガチガチなんだな
その辺からガチガチなんだな
729デフォルトの名無しさん
2025/06/10(火) 16:00:17.82ID:HozJcGjt730デフォルトの名無しさん
2025/06/10(火) 16:03:19.17ID:HozJcGjt 一方でprintf系はどの安全な言語も静的に個数と型チェックするため言語組み込みになっていてRustも同じ
731デフォルトの名無しさん
2025/06/10(火) 16:13:36.43ID:HozJcGjt 言語組み込みでもRustなら関数風手続きマクロと同じ形にできるのでprintなどformat系はマクロ記法
732デフォルトの名無しさん
2025/06/10(火) 16:47:51.11ID:S2dix7lV うわでた
733デフォルトの名無しさん
2025/06/10(火) 16:50:41.55ID:7qJHI/Wj RustはC++のiosteamを取り入れるべきだったね
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【速報】習主席とトランプ大統領が電話会談 台湾問題について★3 [ニョキニョキ★]
- 【速報】トランプ大統領、中国の習近平国家主席を「国賓」として招待することに [ニョキニョキ★]
- 米中電話会談、トランプ氏は「米国側は中国にとっての台湾問題の重要性を理解する」 [1ゲットロボ★]
- 【音楽】「なんでこんなバカが国のトップなの?」 若者に人気のバンド「GEZAN」のマヒトゥ・ザ・ピーポーが高市総理に苦言 [シャチ★]
- 中国人「『日本は危ないから行かないように』と言われたが、日本に来たらとても安全だった」 [お断り★]
- 石破前総理「どうすれば台湾有事にならないかを考えるべき」★2 [1ゲットロボ★]
- 【高市悲報】来年、習近平主席がアメリカに「国賓」として訪米。どうするんだよ高市・・・アメリカも敵に回すのか? [483862913]
- 【高市悲報】トランプおやびん「偉大な指導者である習近平首席、米国は中国にとっての台湾問題の重要性を理解しています」 [115996789]
- トランプおやびん「米中関係は極めて強固」高市早苗「」 [834922174]
- 【速報】足立ひき逃げ犯、精神病持ちだった [329271814]
- 【速報】高市「アタシぜっったい謝らないからッ!!」→中国焦る [308389511]
- 【画像】ブラジルの19歳超美人まんさん、同時間帯に異なる男性が膣内射精したため父親が異なる双子を出産 [776365898]
