[過去ログ] 関数型プログラミング言語Haskell Part16 (978レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
244: 2011/10/23(日)00:00 AAS
>>243
>>241 はFP的ではないと感じてるわけだから、
どの辺りがFP的か簡単にでも説明してあげないと堂堂回りになるよ
245: 2011/10/23(日)00:03 AAS
外部リンク:en.wikipedia.org
の事ってのは通じてる?
Bird先生の本もこの系譜になると思うけども。
246: 2011/10/23(日)00:25 AAS
通じないだろw
普通はプログラミングパラダイムの方を思い浮かべる
247: 2011/10/23(日)00:30 AAS
FPと言えばBackus先生のFP!
Function Programmingの略!
これが関数道の正しい道!
248(1): 2011/10/23(日)00:32 AAS
どっちでもいいけど
>>186のどこが関数的?
249: 2011/10/23(日)00:41 AAS
逆にどこが違う?
250: 2011/10/23(日)01:26 AAS
>>248 じゃないけど、おれも >>186 のどこが関数的か分からん
関数的とも手続き的手も言えん、なんとも分からん代物
251(1): 2011/10/23(日)01:42 AAS
こんなの関数的な要素は全く無いだろ
mainの最後を[2..100]と変えたらおかしくなることからして関数的でないことが分かる
それに関数的かどうかとは別に、プログラムとしても洗練されてない
fizzとbuzzの空文字列や関数fに数値を渡す設計はどうにかならなかったのかと思うし
fの中で文字列の比較をしてるのも酷い
Bird先生?難しい本を薦める前に添削してやれよと…
252(3): 2011/10/23(日)04:25 AAS
BackusのFPはポイントフリースタイルのイメージだね。
Bird先生は別に要素レベルの演算までリストでやれと言ってるわけではないと思う。
lift n = (n,"")
fizz (n,s) = (n,s ++ if n `mod` 3 == 0 then "fizz" else "")
buzz (n,s) = (n,s ++ if n `mod` 5 == 0 then "buzz" else "")
fizzbuzz xs = map (buzz . fizz . lift) xs
くらいでも関数的と言っていいんじゃないか。
253: 2011/10/23(日)04:54 AAS
それ以前に、センスがあるとは思えないんだが。奇抜さはあるにしても。
254(2): 2011/10/23(日)07:27 AAS
>>251
洗練されたコード早く
255: 2011/10/23(日)07:46 AAS
>>254
>>252
256: 2011/10/23(日)08:15 AAS
>>254
それはBird先生の本を薦めていた人たちに言ってくれよ
俺は剰余を使ったつまらないのしか書けないから
しかし>>252も何がしたいのかよく分からないなw
257: 2011/10/23(日)08:32 AAS
えー、>>252はないわ
258(1): 2011/10/23(日)08:49 AAS
>>220
つListLike
259: 2011/10/23(日)11:08 AAS
>>258
うん
そういうのを使って「標準ライブラリ」を大掃除して整理してほしいんだよ
そうすれば、外部ライブラリもそれに倣う
260: 2011/10/23(日)11:19 AAS
それは結構前から言われてるけどいまだに実現して無いよな(例 外部リンク:blog.ezyang.com
そんだけ肥大化して硬直化してるんだろうな
少なくともfold/buid書き換えがstream fusion(笑)に変わるよか後で
Cabalのdependency hellが解決されるのと同じくらい(見込みが無い)ように思える
261(1): 2011/10/23(日)11:37 AAS
標準Cライブラリですら比較的に一貫しててすっきりしてるのに
今ある標準ライブラリはもう手を付けず deprecated にして、
真標準ライブラリを新たに作ればいいのにな
それか、標準ライブラリにバージョンを付けるとか
262: 2011/10/23(日)11:40 AAS
普通のライブラリは(いちおう)バージョンで管理できていて、インターフェースとかバリバリ変わっても(いちおう)整合性が保てているのに、
Preludeはそういう鈍重な憂き目にあうのは、つまり、Prelude自動読み込みというアイデアがアウトだったのでは
263: 2011/10/23(日)11:47 AAS
なるほど、Monad の return に勝るとも劣らない汚点に思えてきた
仕様が 2010 に変わる時にいっしょに整理しておくべきだったよな
264: 2011/10/23(日)11:51 AAS
ラノベ読んでたら、よくわかる現代魔法でHaskellのコード出てきた
265: 2011/10/23(日)12:12 AAS
2巻以降には出てこないけどなw
266: 2011/10/23(日)18:53 AAS
実際使うだけの場合、名前の由来がわかりづらいとは思うが、
returnは別に汚点じゃない。
267: 2011/10/23(日)20:06 AAS
failさん・・
268(1): 2011/10/23(日)23:05 AAS
>>261
Haskell版Boostをご所望か?
269(1): 2011/10/23(日)23:26 AAS
>>268
ごめん、Boost とどう繋がるのか全く分からん
270(1): 2011/10/24(月)00:21 AAS
>>269
うん。酔っぱらってた。
271: 2011/10/24(月)00:47 AAS
>>270がかわいい
272(1): 2011/10/25(火)00:39 AAS
GHCi, version 7.0.3 で
Prelude> let a = reverse
で、:t a と :t reverse が互いに同様なのに、
Prelude> import List
Prelude List> let b = group
で、:t b と :t group が互いに違うのは何でだろ?
エロイ人教えて。
273: 2011/10/25(火)03:15 AAS
>>272
たぶん、単相性制限とGHCiにおける型のデフォルト化の拡張の結果。
単相性制限
外部リンク[html]:www.sampou.org
GHCiにおける型のデフォルト化の拡張
外部リンク[html]:www.kotha.net
上下前次1-新書関写板覧索設栞歴
あと 705 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.010s