【激突】関数型言語 VS オブジェクト指向言語2at TECH【激突】関数型言語 VS オブジェクト指向言語2 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト271:デフォルトの名無しさん 12/04/13 12:50:09.96 こっちのほうが join を入れ子に出来て良いかも import Data.Either join fs n = case concat $ rights $ map (\f -> f n) fs of "" -> Left n s -> Right s fizzT f s n | f n == 0 = Right s fizzT _ _ _ | otherwise = Right "" fizz = fizzT (`mod` 3) "Fizz" buzz = fizzT (`mod` 5) "Buzz" gizz = fizzT (`mod` 7) "Gizz" main = print $ join [join [fizz, buzz], gizz] 105 272:デフォルトの名無しさん 12/04/13 13:14:50.14 join とか無しで gizz buzz fizz 105 で "FizzBuzzGizz" をさくっと返す方法はないの? 273:デフォルトの名無しさん 12/04/13 13:43:15.17 ここまでruby/python無し LLに有利っぽいのに 274:デフォルトの名無しさん 12/04/13 13:43:49.58 gizz buzz fizz 105 という式が、ちゃんと型を持っているとする。 また、fizz 105、buzz fizz 105 という式も、同様になんらかの型を持つとする。 すると、 fizz の型は Int -> a buzz の型は (Int -> a) -> Int -> b gizz の型は ((Int -> a) -> Int -> b) -> (Int -> a) -> Int -> c というような型でなければならない。無理。というか、どう頑張っても、 先頭に do か何かが要る。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch