関数型プログラミング言語Haskell Part34 (667レス)
関数型プログラミング言語Haskell Part34 http://mevius.5ch.net/test/read.cgi/tech/1639713446/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
必死チェッカー(本家)
(べ)
自ID
レス栞
あぼーん
リロード規制
です。10分ほどで解除するので、
他のブラウザ
へ避難してください。
640: デフォルトの名無しさん [sage] 2025/01/10(金) 18:54:00.90 ID:X+hiLHcK >>638 >アクションを実行し、副作用が起こる前なので当然だ、という解釈は誤っているでしょうか ?なんか混乱しているんじゃないか。 アクションの生成時点でのHaskellコードの参照透明性と、オブジェクトコード実行の際の参照の処理は別物だぞ。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/640
641: デフォルトの名無しさん [sage] 2025/01/10(金) 18:59:59.95 ID:X+hiLHcK 補足: Haskellコンパイルは少なくとも次の二つの段階を持つ 1.アクションの生成(入出力指示書の生成、Haskellコードの字面のコンパイル) 2.アクションの実行 1.のアクションの生成時に参照透明性がHaskellコードとして保証されている。 アクションの生成で必要な参照行為は全て終わっているので、2.では入出力だろうが破壊的操作だろうがやっても文句を言われない。 IOの機構がすごいのは1.アクションの生成計算で参照透明性が保証されているというところがうれしいところ、だという話。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/641
645: デフォルトの名無しさん [sage] 2025/01/10(金) 20:01:13.00 ID:X+hiLHcK >>643-644 そのように理解しています。って本当に理解してるか? アクションの生成において生成しているのは入出力の指示書みたいなもので入出力自体はない。 こういう入力があったらこういう計算方法でこういう出力をするみたいな手順を生成しているだけ。 なんで参照透明性が担保されているというところでそんな引っかかるんだ? http://mevius.5ch.net/test/read.cgi/tech/1639713446/645
647: デフォルトの名無しさん [sage] 2025/01/10(金) 20:42:16.47 ID:X+hiLHcK 同一のプログラムを入力とすればってどういう意味? 前も言ったようにアクションの生成とアクションの実行は別フェーズ。同一のアクションが出力される、というのはどっちのフェーズでのことを言ってんの? http://mevius.5ch.net/test/read.cgi/tech/1639713446/647
649: デフォルトの名無しさん [sage] 2025/01/10(金) 21:34:10.26 ID:X+hiLHcK なんか理解しているのかすごい怪しいなぁ。 一応回答しておくと、アクションの生成のフェーズなら参照透明性を保証された純粋関数の計算でしかないから main文が同じなら当然同じアクションが生成される。 同じプログラムなら生成されるものも同じという意味で。 理解してたらこんな話出てこないと思うんだけど。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/649
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.033s