Haskell

HaskellのHumorのリンク http://www.haskell.org/humor/The Evolution of a Haskell Programmer factorial関数をいろんな方法で宣言。僕はSenior Haskell programmerに該当した。 http://www.willamette.edu/~fruehr/haskell/evolution.html let fac n = fol…

遅延リスト

Haskell [0..10] ++ [20..30] Python import itertools ietrtools.chain(xrange(0,11), xrange(20,31)) xrangeは厳密には違うらしいけど、似たような動作をするものという事で。 ここでの利点は、リストの生成を遅らせる事で一時的なメモリの使用量を抑える…

exercise 1.6

平方根を求めるアルゴリズム sqrt-root. ビルトイン関数に含まれているのだけど、アルゴリズムの演習って事で、 再実装してみる。 まずは、Schemeで。 (define (sqrt n) (define (abs n) (if (improve guess n) (average guess (/ n guess))) (define (good-…

Scheme (define (fib n) (if *1 (fib (- n 2))))) Python def fib1(n): return n <= 2 and 1 or fib1(n-1) + fib1(n-2) def fib2(n): if n <= 2: return 1 else : return fib2(n-1) + fib2(n-2) Haskell でパターンマッチを利用しての関数宣言。 fib :: Inte…

main :: IO() main = putStr "Hello, world\n" - DONE C perl ruby python OCaml JAVA C++ Scheme C# Pike Brainf*ck Lua Ook! PHP Icon Haskell - TODO ada algol Akl apl arc awk B basic CHILL D nice except / tcl smalltalk whitespace javascript fort…