[過去ログ] 関数型プログラミング言語Haskell Part16 (978レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
192(1): デフォルトの名無しさん [sage] 2011/10/21(金) 00:05:06.91 AAS
よーしパパFizzモナドとBuzzモナドを合成しちゃうぞー
250: デフォルトの名無しさん [sage] 2011/10/23(日) 01:26:52.91 AAS
>>248248(1): デフォルトの名無しさん [sage] 2011/10/23(日) 00:32:44.35 AAS
どっちでもいいけど
>>186のどこが関数的?
じゃないけど、おれも >>186186(10): デフォルトの名無しさん [sage] 2011/10/20(木) 22:49:20.89 AAS
FizzBuzzを剰余使って書くのはすぐ思いつくけど、以下のは新鮮だった。
どうやったらこんな発想が出来る様になるんだろ。
fizz = cycle ["","","Fizz"]
buzz = cycle ["","","","","Buzz"]
f s n
| s == "" = show n
| otherwise = s
main = print $ zipWith f (zipWith (++) fizz buzz) [1..100]
のどこが関数的か分からん
関数的とも手続き的手も言えん、なんとも分からん代物
254(2): デフォルトの名無しさん [sage] 2011/10/23(日) 07:27:28.91 AAS
>>251251(1): デフォルトの名無しさん [sage] 2011/10/23(日) 01:42:08.77 AAS
こんなの関数的な要素は全く無いだろ
mainの最後を[2..100]と変えたらおかしくなることからして関数的でないことが分かる
それに関数的かどうかとは別に、プログラムとしても洗練されてない
fizzとbuzzの空文字列や関数fに数値を渡す設計はどうにかならなかったのかと思うし
fの中で文字列の比較をしてるのも酷い
Bird先生?難しい本を薦める前に添削してやれよと…
洗練されたコード早く
467(1): デフォルトの名無しさん [sage] 2011/11/11(金) 03:36:49.91 AAS
c言語でのint (*)[4]型っぽいものをhaskell的に表現する場合、
* = Pointer, [] = Array4, int = Intと置き換えて、
Pointer (Array4 Int Int Int Int)とでも書けるんだろうけれど、
int (*)[100]型とかになってくるととても書いていられない。
何か上手い方法はないだろうか。
用途ねーだろって突込みは無しで。
905(2): 896 [sage] 2011/12/28(水) 19:09:32.91 AAS
>>902902(2): デフォルトの名無しさん [sage] 2011/12/28(水) 07:47:55.90 AAS
適当に推測すると、cppの出力が非UTF-8の何かを含んでるんじゃないの?
cpp -traditional Test.hs
の出力を見てみるとか
cpp -traditional Test.hs の結果が以下のように出力されました
-------------------------------
# 1 "Test.hs"
# 1 "<built-in>"
# 1 "<command-line>"
# 1 "Test.hs"
{-# LANGUAGE CPP #-}
-------------------------------
何か問題あるでしょうか
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.035s