20/09/13 21:26:20.50 te8H2Dpy.net
>>13書いたついでに宣伝。
小学生向けHaskell入門書、Amazonにて絶賛発売中です。
限られた時間でなるべく多くプログラミングに親しんでもらう為に、教える文法は最小限に抑えてますが、
それでもPythonやRubyにそれほど見劣りしない表現力を保ってます。
「パソコンが買えなくてもプログラマーを諦めない君へ ~小学生のHaskell入門~」
参考までに、高階関数もリスト内包表記も無しで、リスト結合演算子から自作してのクイックソート
myqsort [] = []
myqsort [x] = [x]
myqsort (x:xs) = myqsort (small x xs) ^++ [x] ^++ myqsort (large x xs)
(^++) [] ys = ys
(^++) xs [] = xs
(^++) (x:xs) ys = x:(^++) xs ys
small n [] = []
small n (x:xs) | x <= n = x:small n xs
small n (x:xs) = small n xs
large n [] = []
large n (x:xs) | x > n = x:large n xs
large n (x:xs) = large n xs