タグ

HaskellとCommonLispに関するyouzのブックマーク (1)

  • CommonLispでlist comprehension - 関数型日記(仮)

    しょぼい組み込みHW屋の私が現実逃避のため関数型言語の勉強を始めました.それはそうと,VdGG観てきました.peter hammillが神すぎて困りました.次も観るぞ! Haskellのlist comprehensionっぽい何かをCommonLisp(xyzzy上)で実現してみました.hugsで深追いしていった結果,なんとなーくその裏の実装の見当がついたので,まぁモノはためしにやってみようかと. まず,こんなのを, [x | x <- [1,2,3,4,5], x < 3] CommonLispで実装すると,こんな感じ. (let ((x '(1 2 3 4 5))) (mapcar #'(lambda (x) x) (remove-if-not #'(lambda (x) (< x 3)) x))) Haskellのgeneratorはまずletに置き換えました.letはこの場合別に

    CommonLispでlist comprehension - 関数型日記(仮)
  • 1