関数型プログラミング言語Haskell Part27_©5ch.io
■ このスレッドは過去ログ倉庫に格納されています
0827デフォルトの名無しさん
2015/03/15(日) 14:31:07.85ID:HF4x7IBdどうするのがエレガントだと思う?
data A = A {a1 :: B, a2 :: C}
data B = B {b1 :: D, b2 :: E}
data C = C {c1 :: D, c2 :: F}
data D = D {d1 :: Int}
data E = E {e1 :: String}
data F = F {f1 :: D}
例えば x = A (B ( D 1) (E "x")) (C (D 2) (F (D 3)))
g :: A -> Int -> A
g a = 「a の ...C (D n) ... のところの n を *10 しただけのA型の値を返す」
例えば g x は A (B ( D 1) (E "x")) (C (D 20) (F (D 3))) だ。
■ このスレッドは過去ログ倉庫に格納されています