関数型プログラミング言語Haskell Part34 (667レス)
前次1-
抽出解除 レス栞

14
(1): 2021/12/21(火)06:55:32.78 ID:t7n7AMl6(1) AAS
a :: Int -> Int
a 0 = 50^2
a n = round (sqrt (realToFrac n):: Float)
型変換なみだでてきた
ghciプロンプトだと
round (sqrt 50)
7
ちゃんと出るじゃねーか...
275: 2024/02/29(木)01:38:01.78 ID:d2gqoSk4(1) AAS
windowsにインストールできんみたいだなcabalがエラー?
まあwindowsでやるなってことだな
386: 2024/10/01(火)09:39:15.78 ID:KbL1rq/V(1/2) AAS
>なんとなく作れるから群構造作ってみました
ルービックキューブのことか
448: 2024/10/03(木)19:57:08.78 ID:B2Xmf+Xl(4/9) AAS
現実のよくあるプログラムとはこういう感じのものだけれども、実行 $(prog1) をしてその結果が返ってくるという現実的に
必要な点だけを考えると、途中の行番号020を評価したとかそういう情報はいらなくて、結局 $(prog1) して
hogehoge
fugafuga
を表示して、複雑な計算の結果 res が返ってくれさえすればいいともいえる。

だったら、数学的に取り扱いがしづらい、式の評価途中で入出力が発生するみたいな部分を取っ払って
000 procedure prog2(int n) {
001 double res
002 (なにか込み入った計算)
....
020 ## echo "hogehoge" #コメントアウト
021 (なにか込み入った計算)
....
050 ## echo "fugafuga" #コメントアウト
051 (なにか込み入った計算)
...
100 return ("hogehoge"を表示する予約1、"fugafuga"を表示する予約2、返り値 res) }

というように、返り値の部分に全部まとめるということをするということが考えられる。こうしても、プログラムのユーザー側からすると
実行すると$(prog2)
hogehoge
fugafuga
と表示されて複雑な計算した結果 res が返ってくるということは変わらない。
472
(1): 2024/10/04(金)20:18:31.78 ID:WSIC8Xt5(1/14) AAS
だから、副作用を隠してラムダ計算に変換する手続きは、世界をステートにする変換をした時点で達成されてるわけで、そんなの太古の昔から分かってたことだろ
IO aの定義読んでから出直せよ
529
(2): 2024/10/05(土)20:30:18.78 ID:aeHKoAMv(2/3) AAS
集合と写像の区別もついてないんだから、集合と位相からやらないとだめ
659
(1): 02/13(木)13:53:19.78 ID:LmH89MFs(1/2) AAS
暗記系の問題が嫌われるのは答えを隠す意味がないからだが
逆に陰謀論が大人気なのは、隠蔽する動機があるからかもしれない
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 1.252s*