スレタイ以外の言語もok
前スレ
https://mevius.5ch.net/test/read.cgi/tech/1655771266/
次世代言語27 TypeScript Swift Go Kotlin Rust Nim
■ このスレッドは過去ログ倉庫に格納されています
2022/08/05(金) 08:26:38.87ID:TpiqaUBm
752デフォルトの名無しさん
2022/08/21(日) 23:38:38.83ID:t5TpzXQK753デフォルトの名無しさん
2022/08/21(日) 23:43:44.98ID:sqA1fyA2754デフォルトの名無しさん
2022/08/21(日) 23:46:14.60ID:G9OTg+LF >>751
関数型言語らしい観点からの拡張だね
Haskell側でもRustのborrow checkerについて言及してる点も興味深い
でもそのHaskellの拡張で今回のfinalize未呼び出し検知を静的に実現できるの?
関数型言語らしい観点からの拡張だね
Haskell側でもRustのborrow checkerについて言及してる点も興味深い
でもそのHaskellの拡張で今回のfinalize未呼び出し検知を静的に実現できるの?
755デフォルトの名無しさん
2022/08/21(日) 23:54:38.26ID:HHEr7LbV そもそものアプローチが間違ってるから
他の言語でどうこう言っても意味がない
他の言語でどうこう言っても意味がない
756デフォルトの名無しさん
2022/08/21(日) 23:59:27.31ID:NvOkjJCY >>753
そこで関数呼び出しなどがあると
panicなどで巻き戻される時にfooを解放する必要があるためdropを必要とするからかな
コンパイラが直接サポートすればそこは区別できるしリンク方式を取らなくてもよいから大丈夫じゃないかな
そこで関数呼び出しなどがあると
panicなどで巻き戻される時にfooを解放する必要があるためdropを必要とするからかな
コンパイラが直接サポートすればそこは区別できるしリンク方式を取らなくてもよいから大丈夫じゃないかな
757デフォルトの名無しさん
2022/08/22(月) 00:06:59.32ID:f/cMaiDM でもコンパイラはお前のこと嫌いって言ってたしサポートしないんじゃない?
758デフォルトの名無しさん
2022/08/22(月) 00:20:24.88ID:ckyr84/m そもそものアプローチというか
エラーが起きない時か気にしなくてよい時 → デストラクタによる自動処理任せでOK
エラーやその有無を必ず欲しい時 → flushやcloseなど自分で呼べばエラー取得できる
とはいえそれさえ書くのを忘れた時に
Rustコンパイラがコンパイルエラーとする機能も持てそうだとわかったから
さらなる機能向上に期待
GC言語はデストラクタによる自動処理すらないからそれ以前の問題だし
後始末の処理や指示を忘れてもエラーとならないし
忘れてクローズされていないファイルディスクリプタが多数溜まっていくこともよくあるw
エラーが起きない時か気にしなくてよい時 → デストラクタによる自動処理任せでOK
エラーやその有無を必ず欲しい時 → flushやcloseなど自分で呼べばエラー取得できる
とはいえそれさえ書くのを忘れた時に
Rustコンパイラがコンパイルエラーとする機能も持てそうだとわかったから
さらなる機能向上に期待
GC言語はデストラクタによる自動処理すらないからそれ以前の問題だし
後始末の処理や指示を忘れてもエラーとならないし
忘れてクローズされていないファイルディスクリプタが多数溜まっていくこともよくあるw
759デフォルトの名無しさん
2022/08/22(月) 01:49:28.39ID:8Vh1g9M5 >>758
>Rustコンパイラがコンパイルエラーとする機能も持てそうだとわかったから
持てそうじゃないって
Drop Obligationとは全く異なるフロー解析が必要になるからゼロから作る新機能だよ
>Rustコンパイラがコンパイルエラーとする機能も持てそうだとわかったから
持てそうじゃないって
Drop Obligationとは全く異なるフロー解析が必要になるからゼロから作る新機能だよ
760デフォルトの名無しさん
2022/08/22(月) 07:51:24.23ID:qagbwcru >>756
その仮説で正しそうだが念のため確認してみた
まず>>741の通りだとdrop()を呼び出さずに当然コンパイルが通るので
何でもいいから関数呼び出し(演算含む)するものを間に挟んでみた
let foo = Foo::new("Hello, World!");
println!("test"); // ←ここに挿入
foo.finalize()?;
するとこの形はdrop()を呼び出ように変化するようでリンクエラーとなる
この関数呼び出しはfooの参照を使うか否かに関係なく同じ結果
ところがfoo生成前に置くとコンパイルが通る
println!("test");
let foo = Foo::new("Hello, World!");
foo.finalize()?;
さらにfoo消滅後に置いてもコンパイルが通る
let foo = Foo::new("Hello, World!");
foo.finalize()?;
println!("test");
したがってfooが有効な期間に何か関数呼び出しがそこで起きる時のみ
drop()が呼ばれるコードが用意されてリンクエラーとなっている
これはRustがpanic時もメモリ解放をきちんと扱う話とも合致する
つまりpanic時の巻き戻し時のfoo解放をコンパイラが用意している仮説で正しいようだ
その仮説で正しそうだが念のため確認してみた
まず>>741の通りだとdrop()を呼び出さずに当然コンパイルが通るので
何でもいいから関数呼び出し(演算含む)するものを間に挟んでみた
let foo = Foo::new("Hello, World!");
println!("test"); // ←ここに挿入
foo.finalize()?;
するとこの形はdrop()を呼び出ように変化するようでリンクエラーとなる
この関数呼び出しはfooの参照を使うか否かに関係なく同じ結果
ところがfoo生成前に置くとコンパイルが通る
println!("test");
let foo = Foo::new("Hello, World!");
foo.finalize()?;
さらにfoo消滅後に置いてもコンパイルが通る
let foo = Foo::new("Hello, World!");
foo.finalize()?;
println!("test");
したがってfooが有効な期間に何か関数呼び出しがそこで起きる時のみ
drop()が呼ばれるコードが用意されてリンクエラーとなっている
これはRustがpanic時もメモリ解放をきちんと扱う話とも合致する
つまりpanic時の巻き戻し時のfoo解放をコンパイラが用意している仮説で正しいようだ
761デフォルトの名無しさん
2022/08/22(月) 08:10:55.66ID:qagbwcru >>759
そのような別のフロー解析は不要
Rustコンパイラは常に正しくメモリ解放を行うために所有権が尽きてdropを呼び出すべきところを全て把握している
それとは区別する形で>>760のようにpanic時の巻き戻し時のdrop呼び出しも正解に把握している
したがって以下のように検出できる
・finalize()をどのパスでも常に忘れずに呼び出しているコード
→ 非panic時のdropは必ずfinalize()内のみで起こる
・finalize()を呼び忘れているパスが存在するコード
→ 非panic時のdropがfinalize()以外で起こる →検出
よってRustコンパイラは新たな仕組みを必要とせずに
現在把握している情報のみでfinalize()呼び忘れを検出可能
容易に対応できることが確認された
そのような別のフロー解析は不要
Rustコンパイラは常に正しくメモリ解放を行うために所有権が尽きてdropを呼び出すべきところを全て把握している
それとは区別する形で>>760のようにpanic時の巻き戻し時のdrop呼び出しも正解に把握している
したがって以下のように検出できる
・finalize()をどのパスでも常に忘れずに呼び出しているコード
→ 非panic時のdropは必ずfinalize()内のみで起こる
・finalize()を呼び忘れているパスが存在するコード
→ 非panic時のdropがfinalize()以外で起こる →検出
よってRustコンパイラは新たな仕組みを必要とせずに
現在把握している情報のみでfinalize()呼び忘れを検出可能
容易に対応できることが確認された
762デフォルトの名無しさん
2022/08/22(月) 10:01:20.83ID:r+XKv1YE つまり現状はできないってことw
763デフォルトの名無しさん
2022/08/22(月) 17:26:44.21ID:5n0Fj/6k >>760
これってつまりリソース確保してから通常想定されるdropの位置までの間にある
すべての関数呼び出しの panic の可能性を考慮しないといけないから実用不可って事にならんか。
まだ try ... finally ... の方が実用的やないか。
これってつまりリソース確保してから通常想定されるdropの位置までの間にある
すべての関数呼び出しの panic の可能性を考慮しないといけないから実用不可って事にならんか。
まだ try ... finally ... の方が実用的やないか。
764デフォルトの名無しさん
2022/08/22(月) 19:22:34.50ID:f/cMaiDM 正解
765デフォルトの名無しさん
2022/08/22(月) 20:08:33.05ID:IT4AaIoU >>763
大きな誤解をしているようだが
C++やRustなどは関数(正解にはブロックスコープ)を抜ける時に常にデストラクタ(dropなど)を呼んでいる
これが即座のメモリ解放でありC++やRustが高速に動作するな理由
ただしC++でもRustでも所有権が移動したときにはそのデストラクタを呼ばず移動先に委ねられる
以上の基本事項の上でC++の例外やRustのpanicなどが起きたときには
関数呼び出しを自動的に多段に巻き戻して各々のメモリ解放つまりデストラクタ呼び出しをする
これは所有権が移動する場合でも移動する前に例外やpanicが起きればデストラクタが呼び出される
それが>>760のfooの生成と移動の間に挟まれたときのみデストラクタ(drop)が呼び出される仕組み
これらは全てコンパイル時点で静的に簡単に確定するため複雑さはなく実行時の余分なコストも発生しない
ここまでの話は現状のC++/Rustコンパイラがやっている普通のことである
>>761のfinalize記述忘れをコンパイルエラーとする新機能の話は
上述した現状の仕組みをそのまま活用できるため
その新機能を付加することがたやすいというだけの話だろう
大きな誤解をしているようだが
C++やRustなどは関数(正解にはブロックスコープ)を抜ける時に常にデストラクタ(dropなど)を呼んでいる
これが即座のメモリ解放でありC++やRustが高速に動作するな理由
ただしC++でもRustでも所有権が移動したときにはそのデストラクタを呼ばず移動先に委ねられる
以上の基本事項の上でC++の例外やRustのpanicなどが起きたときには
関数呼び出しを自動的に多段に巻き戻して各々のメモリ解放つまりデストラクタ呼び出しをする
これは所有権が移動する場合でも移動する前に例外やpanicが起きればデストラクタが呼び出される
それが>>760のfooの生成と移動の間に挟まれたときのみデストラクタ(drop)が呼び出される仕組み
これらは全てコンパイル時点で静的に簡単に確定するため複雑さはなく実行時の余分なコストも発生しない
ここまでの話は現状のC++/Rustコンパイラがやっている普通のことである
>>761のfinalize記述忘れをコンパイルエラーとする新機能の話は
上述した現状の仕組みをそのまま活用できるため
その新機能を付加することがたやすいというだけの話だろう
766デフォルトの名無しさん
2022/08/22(月) 21:09:18.36ID:Imj2WwGw 複製おじさんがまーた嘘ついてる
Rustが所有権(=dropする義務)をどう管理してるか知りたければ
“Drop Obligations”でググるといいよ
Rustが所有権(=dropする義務)をどう管理してるか知りたければ
“Drop Obligations”でググるといいよ
767デフォルトの名無しさん
2022/08/22(月) 21:19:17.98ID:GgQXua2G >>763
try ... finally ... を書かなきゃいけない時点で大きく負けてるやん
RAII言語は何も書かずともデストラクタで自動処理される
そのデストラクタでエラーが発生する可能性がある時にfinalize呼び出しを強制させる選択肢も用意する話が今のテーマ
try ... finally ... を書かなきゃいけない時点で大きく負けてるやん
RAII言語は何も書かずともデストラクタで自動処理される
そのデストラクタでエラーが発生する可能性がある時にfinalize呼び出しを強制させる選択肢も用意する話が今のテーマ
768デフォルトの名無しさん
2022/08/22(月) 21:21:32.89ID:PwgKhJsq769デフォルトの名無しさん
2022/08/22(月) 21:33:37.66ID:GgQXua2G >>766
Drop obligationsはその話と関係ないじゃない?
RustコンパイラDevelopment Guideを見ても "Drop obligations" は変数の構造つまりenumやstructの中身とそのフィールド連鎖などについての話
Drop obligationsはその話と関係ないじゃない?
RustコンパイラDevelopment Guideを見ても "Drop obligations" は変数の構造つまりenumやstructの中身とそのフィールド連鎖などについての話
770デフォルトの名無しさん
2022/08/22(月) 21:47:48.22ID:5n0Fj/6k >>765
いや、その付加した機能が実用にならないねという話をしたんだが。
いや、その付加した機能が実用にならないねという話をしたんだが。
771デフォルトの名無しさん
2022/08/22(月) 21:49:45.94ID:IT4AaIoU772デフォルトの名無しさん
2022/08/22(月) 21:56:10.02ID:IT4AaIoU >>770
実用的じゃないとはどういう意味だ?
現行でも実用的になっているコード(明示的に書けばエラーを捕捉できて、書き忘れてもデストラクタで自動実行される)に対して
書き忘れを防止できる選択機能を新たに用意しよう、という話だろ
実用的じゃないとはどういう意味だ?
現行でも実用的になっているコード(明示的に書けばエラーを捕捉できて、書き忘れてもデストラクタで自動実行される)に対して
書き忘れを防止できる選択機能を新たに用意しよう、という話だろ
773デフォルトの名無しさん
2022/08/22(月) 21:57:46.65ID:Wff0V8uB >>769
関係ないわけないやん複オジw
関係ないわけないやん複オジw
774デフォルトの名無しさん
2022/08/22(月) 22:01:34.61ID:GgQXua2G >>773
複オジって何
複オジって何
775デフォルトの名無しさん
2022/08/22(月) 22:32:14.28ID:kPK6Bkqr finalize強制の話は7年前から線形型として提案はされてる
具体的なユースケースとしてFinalizeトレイトなんかも出てるし
https://github.com/rust-lang/rfcs/issues/814
ただまぁ大改造だし他にやることもたくさんあるから当分検討されることはないだろうな
具体的なユースケースとしてFinalizeトレイトなんかも出てるし
https://github.com/rust-lang/rfcs/issues/814
ただまぁ大改造だし他にやることもたくさんあるから当分検討されることはないだろうな
776デフォルトの名無しさん
2022/08/22(月) 23:20:29.01ID:9Y+0qHT9 zenは急げ
777デフォルトの名無しさん
2022/08/22(月) 23:32:48.78ID:f/cMaiDM >>772
https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=f27f2dc5668cded5f61f8f23e030df61
本当はこういうことがやりたかったんだろ?
newとfinalizeの間に一切コードが書けないんじゃ使い道が皆無
もともと「スコープ終端でのdropまでに特定の関数を呼び出していない場合コンパイルエラー」にしたいだけだったのが
「newした直後に特定の関数を呼び出していない場合コンパイルエラー」という厳しすぎる条件になってるのが問題
https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=f27f2dc5668cded5f61f8f23e030df61
本当はこういうことがやりたかったんだろ?
newとfinalizeの間に一切コードが書けないんじゃ使い道が皆無
もともと「スコープ終端でのdropまでに特定の関数を呼び出していない場合コンパイルエラー」にしたいだけだったのが
「newした直後に特定の関数を呼び出していない場合コンパイルエラー」という厳しすぎる条件になってるのが問題
778デフォルトの名無しさん
2022/08/22(月) 23:35:51.97ID:hmZ4rA6/779デフォルトの名無しさん
2022/08/22(月) 23:43:22.53ID:Y3KYPZ9p >>777
間に別の処理を入れてもエラーが起きないようにしたコードかと思って試しちゃったじゃないかw
間に別の処理を入れてもエラーが起きないようにしたコードかと思って試しちゃったじゃないかw
780デフォルトの名無しさん
2022/08/22(月) 23:47:06.94ID:IdBsr831 費用の問題というのも間違い
安くすれば需要がどんどん増えると思ったら大間違いだよ
安くすれば需要がどんどん増えると思ったら大間違いだよ
781デフォルトの名無しさん
2022/08/23(火) 00:19:09.94ID:VIf97uqR782デフォルトの名無しさん
2022/08/23(火) 00:38:06.00ID:7xrG+Q0V そういえばHaskellのLinearTypesのやつ自分で試してから貼ろうと思ってたけど
実際hCloseを消したり2回呼んだりして出てきたエラーメッセージで検索したら
同じことやってた記事があったんでもうこれ貼ればいいやってなった
https://scrapbox.io/mrsekut-p/%E7%B7%9A%E5%BD%A2%E5%9E%8B%E3%81%A7%E3%83%AA%E3%82%BD%E3%83%BC%E3%82%B9%E7%AE%A1%E7%90%86%E3%82%92%E3%81%99%E3%82%8B%E4%BE%8B
実際hCloseを消したり2回呼んだりして出てきたエラーメッセージで検索したら
同じことやってた記事があったんでもうこれ貼ればいいやってなった
https://scrapbox.io/mrsekut-p/%E7%B7%9A%E5%BD%A2%E5%9E%8B%E3%81%A7%E3%83%AA%E3%82%BD%E3%83%BC%E3%82%B9%E7%AE%A1%E7%90%86%E3%82%92%E3%81%99%E3%82%8B%E4%BE%8B
783デフォルトの名無しさん
2022/08/23(火) 00:51:58.53ID:7xrG+Q0V784デフォルトの名無しさん
2022/08/23(火) 01:09:26.07ID:VIf97uqR785デフォルトの名無しさん
2022/08/23(火) 01:19:05.91ID:7xrG+Q0V786デフォルトの名無しさん
2022/08/23(火) 01:31:34.47ID:c+AZPHFJ >>783
ヒント: 781 == 741
ヒント: 781 == 741
787デフォルトの名無しさん
2022/08/23(火) 02:13:39.19ID:fCFqRRwJ 現状ではどの言語でも実現できていない話と、
新たに新機能追加/拡張を考えようという話の、
区別がついていないというよりも、
現状では出来ていないと叩いたり制限があると叩いたり、
ものごとの理解ができないキチガイか文句をつけて叩ければいいアンチのどちらか
新たに新機能追加/拡張を考えようという話の、
区別がついていないというよりも、
現状では出来ていないと叩いたり制限があると叩いたり、
ものごとの理解ができないキチガイか文句をつけて叩ければいいアンチのどちらか
788デフォルトの名無しさん
2022/08/23(火) 02:47:14.79ID:J1WyjKaU SFCエミュを2ヶ月くらいで組んでるから
Rustの生産性が低いって事はなさそうね
https://zenn.dev/tanakh/articles/nes-and-snes-emulator-in-rust
Rustの生産性が低いって事はなさそうね
https://zenn.dev/tanakh/articles/nes-and-snes-emulator-in-rust
789デフォルトの名無しさん
2022/08/23(火) 02:49:40.76ID:J1WyjKaU いや1ヶ月か
790デフォルトの名無しさん
2022/08/23(火) 07:50:29.67ID:42j/MXVV やっと出てきたのがファミコンのエミュかあ
791デフォルトの名無しさん
2022/08/23(火) 08:28:00.41ID:JlLC2CR4 つまり複オジは反省しない嘘つき常習犯
792デフォルトの名無しさん
2022/08/23(火) 11:42:15.69ID:bRky1rDt >>782
さすがHaskellさん
さすがHaskellさん
793デフォルトの名無しさん
2022/08/23(火) 12:20:50.32ID:dq4kOwAu この人何回もゲーム機エミュ書いてるからこの人の事例で言語の生産性は測れないよ。
絵師()みたいな人がよく言う
「これまでの人生+10分なんです」
と同じ。
絵師()みたいな人がよく言う
「これまでの人生+10分なんです」
と同じ。
794デフォルトの名無しさん
2022/08/23(火) 12:30:30.94ID:YWYNH3Bb795デフォルトの名無しさん
2022/08/23(火) 12:39:54.59ID:nhRs6AvL796デフォルトの名無しさん
2022/08/23(火) 12:40:44.01ID:Dkez1B4S Rustの生産性が高い原因はプログラミングの書きやすさとコンパイル時点で確定保証されることの多さ
797デフォルトの名無しさん
2022/08/23(火) 12:43:43.35ID:3UvdpEti ISUCONでGoに匹敵するぐらい入賞チーム増えてきたらどんな用途でも生産性が高いと証明されるな
798デフォルトの名無しさん
2022/08/23(火) 12:57:16.80ID:AllLmU9s >>797
限られた時間内で場当たり的な対応をどれだけこなすかを競うISUCONは現実と離れすぎていてあまり意味がない
もちろん欠陥だらけのシステムの数々の問題点を見抜いて各々に対応する能力は非常に重要
現実にはその能力は安全かつ高速なシステム設計開発に使うものであり短時間での場当たり的な対応に競うものではない
限られた時間内で場当たり的な対応をどれだけこなすかを競うISUCONは現実と離れすぎていてあまり意味がない
もちろん欠陥だらけのシステムの数々の問題点を見抜いて各々に対応する能力は非常に重要
現実にはその能力は安全かつ高速なシステム設計開発に使うものであり短時間での場当たり的な対応に競うものではない
799デフォルトの名無しさん
2022/08/23(火) 13:33:30.00ID:1ViQo793 時間は正しく計測できるという仮定の下で
「時間が短過ぎる」等の判断をすることもまた現実から乖離していることがよくある
数年前の過去問と同じ問題がテストに出れば、時間は数年間あってもそれを計測する時計はない
「時間が短過ぎる」等の判断をすることもまた現実から乖離していることがよくある
数年前の過去問と同じ問題がテストに出れば、時間は数年間あってもそれを計測する時計はない
800デフォルトの名無しさん
2022/08/23(火) 13:45:48.88ID:Ke3Ccl3f 知識を問うテストじゃないはずなのに、ある特定の知識を知ってる人だけがサクッと解けるようなテストだったら、それは問題が悪問なだけ
出題者が悪い
出題者が悪い
801デフォルトの名無しさん
2022/08/23(火) 13:55:00.75ID:1ViQo793 良問を出すべきというのは道徳か?
富裕層は貧困層に寄付するべきと言ってるのと同じ?
富裕層は貧困層に寄付するべきと言ってるのと同じ?
802デフォルトの名無しさん
2022/08/23(火) 14:07:44.30ID:tZOwf5lf ISUCONでRustチームがいっぱい参加して優勝まで取ってたら真逆のこと言いそう
803デフォルトの名無しさん
2022/08/23(火) 14:30:22.22ID:nhRs6AvL 性格や適性の問題じゃないかな
ボトルネックの調査と解消を正しく真面目にやれるタイプのエンジニアにとっては、
言語なんかシステムにおける無数のファクターの一つとして相対的に評価されるものでしかないのだろう
Rust信者だったら自分好みにリファクタリングを始めて時間切れになりそうだ
もちろん後者のタイプの人間のほうが適しているタスクもあるだろうけどね
ボトルネックの調査と解消を正しく真面目にやれるタイプのエンジニアにとっては、
言語なんかシステムにおける無数のファクターの一つとして相対的に評価されるものでしかないのだろう
Rust信者だったら自分好みにリファクタリングを始めて時間切れになりそうだ
もちろん後者のタイプの人間のほうが適しているタスクもあるだろうけどね
804デフォルトの名無しさん
2022/08/23(火) 14:39:05.74ID:IzGsbq3u ISUCONのステマかなんかなの?
参加人数少なくて困ってんのかな
賞金を最低でも1000万以上にしたり
グローバル展開してあらゆる国の開発者を集めたほうがいいんじゃないの?
今は実質日本人学生用のコンテストになってるから
参加人数少なくて困ってんのかな
賞金を最低でも1000万以上にしたり
グローバル展開してあらゆる国の開発者を集めたほうがいいんじゃないの?
今は実質日本人学生用のコンテストになってるから
805デフォルトの名無しさん
2022/08/23(火) 14:46:37.67ID:K++0I94y 俺もまずはリファクタリングから手を付ける
見やすさ追加改変のしやすさ品質に速さなどあらゆることでリファクタリングが基礎になる
あとシステムアーキテクチャに問題があるときは場当たり的な対応より根本設計からやり直した方が長期的に得と分かっている
見やすさ追加改変のしやすさ品質に速さなどあらゆることでリファクタリングが基礎になる
あとシステムアーキテクチャに問題があるときは場当たり的な対応より根本設計からやり直した方が長期的に得と分かっている
806デフォルトの名無しさん
2022/08/23(火) 14:58:48.56ID:hhf7jlH2 どこも小学生の自由研究のノリだよなw
807デフォルトの名無しさん
2022/08/23(火) 15:34:20.38ID:1ViQo793 ディズニーを超えたいと思えばまあ小学生っぽくなるわな
808デフォルトの名無しさん
2022/08/23(火) 17:09:38.21ID:cAD3vi3K youtubeの中学受験の図形関係の問題みたいなもんでパターンを覚えるみたいな感じで
競技プログラムって何かつまらないんだよねぇ
競技プログラムって何かつまらないんだよねぇ
809デフォルトの名無しさん
2022/08/23(火) 18:30:00.47ID:jZlkNHy6810デフォルトの名無しさん
2022/08/23(火) 20:26:06.49ID:1ViQo793 ギャンブルならつまらないリスクから逃げるのは常識
だがリスクがない場合、つまらないという理由だけで逃げるのは逆に難度高い
だがリスクがない場合、つまらないという理由だけで逃げるのは逆に難度高い
811デフォルトの名無しさん
2022/08/24(水) 09:30:33.86ID:8fOu5lGq 据膳でも感染リスクあるし
812デフォルトの名無しさん
2022/08/24(水) 09:31:10.38ID:8fOu5lGq >>808
めっちゃ判りますω
めっちゃ判りますω
813デフォルトの名無しさん
2022/08/24(水) 10:08:32.23ID:+3OYCnBx 根源にある感情は「だからなに?」ってことなんだよ
できてもできなくても大差ないということ
できてもできなくても大差ないということ
814デフォルトの名無しさん
2022/08/24(水) 11:01:24.29ID:fCJqwszS ManuallyDrop<T>を知る事と
それを知ってたら何になるかを知る事を区別しないと混乱が起きる
それを知ってたら何になるかを知る事を区別しないと混乱が起きる
815デフォルトの名無しさん
2022/08/24(水) 13:47:39.28ID:ymarx/03 >>808
結局そのアルゴリズムを反復練習で書けるかみたいになっちゃうんだよな
結局そのアルゴリズムを反復練習で書けるかみたいになっちゃうんだよな
816デフォルトの名無しさん
2022/08/24(水) 15:20:22.21ID:ymarx/03817デフォルトの名無しさん
2022/08/24(水) 15:32:52.45ID:rnKc3YSn818デフォルトの名無しさん
2022/08/24(水) 15:49:29.31ID:Up+C642J だから?
どうした?
どうした?
819デフォルトの名無しさん
2022/08/24(水) 16:22:02.33ID:cy/h+3Se >>818
辛辣w
辛辣w
820デフォルトの名無しさん
2022/08/24(水) 17:08:00.62ID:/EMIJnR6 実務に役立たない競プロよりは
まだISUCONのほうがマシ
なぜならISUCONはサーバーなど含めたシステム全体のアルゴリズム相当も含むため
しかしそれを限られた時間内にその場しのぎの対応を多数こなす競技ISUCONも実務とかけ離れすぎていて単なるゲーム
ちなみに競プロの人口の方が多いのはISUCONの方がより現実に近くて桁違いの知識を必要とするため
まだISUCONのほうがマシ
なぜならISUCONはサーバーなど含めたシステム全体のアルゴリズム相当も含むため
しかしそれを限られた時間内にその場しのぎの対応を多数こなす競技ISUCONも実務とかけ離れすぎていて単なるゲーム
ちなみに競プロの人口の方が多いのはISUCONの方がより現実に近くて桁違いの知識を必要とするため
821デフォルトの名無しさん
2022/08/24(水) 18:35:33.50ID:ieoEEHaa 参加者めちゃくちゃ少ないけどなw
しかも半数以上は新人研修や社内勉強会での参加者で本気で決勝目指してるような奴等ではない
しかも半数以上は新人研修や社内勉強会での参加者で本気で決勝目指してるような奴等ではない
822デフォルトの名無しさん
2022/08/24(水) 21:44:22.89ID:AMNp1Lvn ISUCONなんてもともと「いい感じにスピードアップコンテスト」みたいな雑な名前で、
そういうのが好きな運用者のガチ余興から始まったもんだろ。
ベンチマーカーの特性読んで穴見つけて異常点数取ったやつを「スゲェw」みたいに言うお祭り。
なんか箔をつけたい学生さんに目を付けられてからなんかへんな感じになってるけど。
そういうのが好きな運用者のガチ余興から始まったもんだろ。
ベンチマーカーの特性読んで穴見つけて異常点数取ったやつを「スゲェw」みたいに言うお祭り。
なんか箔をつけたい学生さんに目を付けられてからなんかへんな感じになってるけど。
823デフォルトの名無しさん
2022/08/25(木) 02:43:34.63ID:2mWcQmbM >>822
最近はそういうの無くなってるよ
そもそもお題のサンプル実装の時点ですげーよくできたものが出来上がってくる
仕事としてやってる会社も増えたからそうなるんだろう
昔はめちゃくちゃやっつけで雑だったから
やりようがいくらでもあったのにさ
最近はそういうの無くなってるよ
そもそもお題のサンプル実装の時点ですげーよくできたものが出来上がってくる
仕事としてやってる会社も増えたからそうなるんだろう
昔はめちゃくちゃやっつけで雑だったから
やりようがいくらでもあったのにさ
824デフォルトの名無しさん
2022/08/25(木) 10:35:08.58ID:gyuOx2Xm ISUCONを仕事としてやる会社って何なんだよ
825デフォルトの名無しさん
2022/08/25(木) 11:17:57.47ID:dsHaE0cL Rustより難しい疑問だが
その辺にある石ころのように誰にも気付かれない悪問
その辺にある石ころのように誰にも気付かれない悪問
826デフォルトの名無しさん
2022/08/25(木) 11:44:01.01ID:GTPpxCbw 運動会を業務時間にやる会社もある
827デフォルトの名無しさん
2022/08/25(木) 11:49:35.28ID:uCcuWcZI 夏休みの自由研究
運動会
学芸会
発表会
楽しそっすね~w
運動会
学芸会
発表会
楽しそっすね~w
828デフォルトの名無しさん
2022/08/25(木) 12:32:16.39ID:IO7/ZCzd 研修とかトレーニングとしてってことだろ?
もしかして会社の箔を付けるためなのか?
うちはISUCON決勝進出したんですw的な
もしかして会社の箔を付けるためなのか?
うちはISUCON決勝進出したんですw的な
829デフォルトの名無しさん
2022/08/25(木) 12:33:42.97ID:WEV4zSsV 業務時間扱いで技術大会の運営準備とか練習させてくれるの、わりとどんな業界でも普通だと思うが…。
従業員を工数としか扱わない会社に所属してるなら御愁傷様。
従業員を工数としか扱わない会社に所属してるなら御愁傷様。
830デフォルトの名無しさん
2022/08/25(木) 13:05:50.93ID:2mWcQmbM831デフォルトの名無しさん
2022/08/25(木) 14:32:09.78ID:Ku9BBrHT そろそろ学びやすく美しい言語が完成してもいい頃
832デフォルトの名無しさん
2022/08/25(木) 15:34:35.21ID:tT+jR3hx Pascalだな
833デフォルトの名無しさん
2022/08/25(木) 15:39:13.49ID:GTPpxCbw RustとLispであらゆる用途をカバーすべき
834デフォルトの名無しさん
2022/08/25(木) 15:47:59.73ID:Ku9BBrHT Lispはカッコばかりつけてるナルシストだからダメです
835デフォルトの名無しさん
2022/08/25(木) 18:25:49.89ID:gEeT03jW そもそもプログラミング言語って本当に必要なのか?
836デフォルトの名無しさん
2022/08/25(木) 18:38:47.49ID:cZPZ0A+R >>829
「仕事としてISUCONに参加する会社」と
「ISUCON参加を業務時間扱いしてくれる会社」は全然違うやろ
前者は半ば強制の指示命令ありき
後者は任意の研鑽を会社が支援するもの
「仕事としてやってる会社」という表現は完全に前者を念頭にしてるよね
まぁぶっちゃけどうでもいいけど
「仕事としてISUCONに参加する会社」と
「ISUCON参加を業務時間扱いしてくれる会社」は全然違うやろ
前者は半ば強制の指示命令ありき
後者は任意の研鑽を会社が支援するもの
「仕事としてやってる会社」という表現は完全に前者を念頭にしてるよね
まぁぶっちゃけどうでもいいけど
837デフォルトの名無しさん
2022/08/25(木) 19:19:03.77ID:S/wpzj9c >>835
言語がなきゃどうやってプログラミングするんだよ
言語がなきゃどうやってプログラミングするんだよ
838デフォルトの名無しさん
2022/08/26(金) 03:56:04.98ID:V0DMr4WT >>836
いや、後者を念頭にしても不自然ではないよ
いや、後者を念頭にしても不自然ではないよ
839デフォルトの名無しさん
2022/08/26(金) 09:47:57.02ID:+QfZXmYy >>835
全てをアセンブラで書くのは無理だぞ
全てをアセンブラで書くのは無理だぞ
840デフォルトの名無しさん
2022/08/26(金) 10:03:42.99ID:i2SIEm4o841デフォルトの名無しさん
2022/08/26(金) 10:05:33.66ID:i2SIEm4o >>839
アセンブラも機械語という言語で方言もある
アセンブラも機械語という言語で方言もある
842デフォルトの名無しさん
2022/08/26(金) 10:40:28.46ID:+QfZXmYy843デフォルトの名無しさん
2022/08/26(金) 11:09:48.80ID:bqHPcqBD >>842
それは機械語という言語だな
それは機械語という言語だな
844デフォルトの名無しさん
2022/08/26(金) 11:11:30.63ID:+QfZXmYy >>843
何もできなくて草
何もできなくて草
845デフォルトの名無しさん
2022/08/26(金) 11:12:24.53ID:bqHPcqBD846デフォルトの名無しさん
2022/08/26(金) 11:14:37.08ID:bqHPcqBD847デフォルトの名無しさん
2022/08/26(金) 12:29:43.43ID:GQPfjH41 一度でいいからパンチカードでFizzBuzzみたいな簡単なプログラムを作って動かしてみたいな
848デフォルトの名無しさん
2022/08/26(金) 13:56:53.79ID:3b+WTPGR >>837
言語じゃなくて"プログラミング言語"ね
コメントからコード生成する技術も出てきているし、将来的にはプログラミング専用言語が必要な場面がより少なくなるのではと思った
画像生成AIに食わせる文章に工夫が必要なように、コード生成AI向けに自然言語をうまく書くような工夫が必要で、それがプログラミング言語と呼ばれるのかもしれないけど
言語じゃなくて"プログラミング言語"ね
コメントからコード生成する技術も出てきているし、将来的にはプログラミング専用言語が必要な場面がより少なくなるのではと思った
画像生成AIに食わせる文章に工夫が必要なように、コード生成AI向けに自然言語をうまく書くような工夫が必要で、それがプログラミング言語と呼ばれるのかもしれないけど
849デフォルトの名無しさん
2022/08/26(金) 14:02:54.19ID:okIuNp+m850デフォルトの名無しさん
2022/08/26(金) 14:03:10.59ID:qa0S1e+W851デフォルトの名無しさん
2022/08/26(金) 14:57:53.05ID:3b+WTPGR■ このスレッドは過去ログ倉庫に格納されています
