関数型プログラミング言語Haskell Part34 (667レス)
関数型プログラミング言語Haskell Part34 http://mevius.5ch.net/test/read.cgi/tech/1639713446/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
91: デフォルトの名無しさん [sage] 2022/03/28(月) 00:29:30.89 ID:dN2icdd7 Haskell昔は日本でも人気あったのにどうしてこうなった http://mevius.5ch.net/test/read.cgi/tech/1639713446/91
108: デフォルトの名無しさん [sage] 2022/08/09(火) 10:46:53.89 ID:VUIfOlq+ >>107 あ、ホントだ コピペミスかなんかか thx http://mevius.5ch.net/test/read.cgi/tech/1639713446/108
219: デフォルトの名無しさん [sage] 2023/06/20(火) 00:30:03.89 ID:qm9+2t5E do 記法でのメモ化について質問です 例えば do let x <- someComplexExpression print $ f x print $ g x のようなコードがあったとしてxの値はf xの評価の時点とg xの評価の時点で2回別々にされますか? 少なくともHaskell2010 Lang. Rep. (以下HLR2010)ではこのような場合メモ化されて2回展開されることはないという記述を見つけることはできませんでした なので公式にはこのような記述だと2回展開されると思わなければいけないのだと思います ではsomeComplexExpressionを先に展開してから、展開したものをxにbindするにはどうすれば良いのでしょうか? HLR2010ではswqを使えば良いとあるのですがこの場合 x <- seq someComplexExpression someComplexExpression とかでうまく行くんでしょうか? またそれでうまくいってるのかどうか確かめる方法はありますか? つまり実際何回 someComplexExpressionが展開されてる回数を確かめる方法はありますか? よろしくお願い致します http://mevius.5ch.net/test/read.cgi/tech/1639713446/219
276: デフォルトの名無しさん [] 2024/03/03(日) 23:47:35.89 ID:9XAeTkis モナドについて、床下配線に例えられたり、世界を受け取って副作用後の世界を返すと(IOモナドについて)語られたりするのが当時は分からなくて、考えた結果 何かから値を取り出し、関数適用して(その関数が)何かに値を戻す「動き」をモナドという。 って結論になっていたのだが、IOモナドも含めてもっと良い例えはないかと考えた結果、 モナドとは、アウトソーシング(外部依頼)を数学的に表現したもの。 という結論に至った。 アウトソーシング先が(数学の)外の世界だとIOモナドで、同じ数学の世界だとその他のモナド。 それならHaskell自身は「この関数実行しておいて~」って依頼出して結果を受け取るだけだから、 副作用はないと言う主張に矛盾はない(のか?) (もしくは、IOモナドはHaskellが受け取れる形の値を返すような入出力の「マシン語」を返してる?) そう考えると、数学が「数学の外とのやり取り」という概念を獲得したと思うと凄い。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/276
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
1.300s*