λx. x K S K @はてな

このブログ内に記載された文章およびコードの著作権は,すべて Keisuke Nakano に帰属します.

2007-05-01から1ヶ月間の記事一覧

半ネタばらし(Fizzbuzz.ml)

んー bool に対する C の | みたいなのは無いのかいな。 はじめてのにき(2007-05-31) 不等号を使うと必ず両辺が実行されて,true > false の時だけ真になるとか.

List.map

この件について更に無意味に List.map の実装を覗いてみる.let rec map f = function [] -> [] | a::l -> let r = f a in r :: map f l ついでに,実験. Objective Caml version 3.09.3 # let rec upto n l = if n < 0 then l else upto (n-1) (n::l);; va…

純粋関数型言語で定義できない純粋な関数

こちらから引用.なかなか興味深いですね. ちなみに,h5 は,例外を使うことにより,let rec h5 g = try g (fun () -> raise Exit); h5 g with Exit -> () でも定義できますね. ただ,h5 g1 の計算の際に再帰の度に try が例外処理をスタックに積む所為で…