2006-06-18から1日間の記事一覧

Concurrent Clean : L.L.Ring : キミならどう書く 2.0 - ROUND 1 - 高速化編

[id:lethevert:20060616:p2] : 素直な回答 [id:lethevert:20060617:p1] : 頭部非ボックス化正格リスト [id:lethevert:20060617:p2] : gccとの速度比較 ここまで、コードの外形には触れずにいましたが、コードの外形を変えて高速化してみましょう。 Start = l…

オブジェクト指向とクロージャと私 : Scheme : Java : OCaml

[id:lethevert:20060615:p3] - 脳内Scheme [id:lethevert:20060617:p5] - OCamlのオブジェクト指向 かなりcontroversialなところにわざわざ突っ込む奴。 私が、オブジェクト指向をサポートしている言われている言語を使う際に期待することは、次のようなこと…

Concurrent Clean : CleanJ : CountChange

次のプログラムの動作を確認。 Start = cc 21 [500, 100, 50, 10, 5, 1] cc :: Int [Int] -> [[Int]] cc _ [] = [] cc amount coins=:[big_coin: other_coins] | amount < 0 = [] | amount == 0 = [[]] | otherwise = [[big_coin: a] \\ a <- cc (amount - b…

Concurrent Clean : CleanJ : 配列の選択

次のプログラムの動作を確認。 Start = arr.[3] where arr :: {#Int} arr = {a \\ a <- list} list = [1..10]実行結果 $ java test02.Select 4

Concurrent Clean : CleanJ : takeWhile

次のプログラムの動作を確認 Start = takeWhile ((>=) 10) [2..]実行結果 $ java test02.TakeWhile2 [2,3,4,5,6,7,8,9,10]