Quantcast
Channel: haskell - gifnksmの雑多なメモ
Browsing all 4 articles
Browse latest View live

ParsecでJSONパーサ

自分の中で何度か目のHaskellブーム到来。パーサコンビネータ読みやすい!カッコイイ!Parsecすごい!ってなことでなんかパースする題材は無いか探し回っていた結果,JSONの仕様書が目に入ったので斜め読みしつつ実装してみました。小数の実装が怪しいけどまあいいかwmodule JSON ( jsNull, jsBool, jsNumber, jsString, jsArray, jsObject,...

View Article



Real World Haskell 3章 練習問題: GrahamScanアルゴリズムによる凸包の導出

割とHaskellっぽく書けたと思う。import Data.List data (Num a) => Point a = Point { x :: a, y :: a } deriving (Eq, Show) (.+) :: (Num a, Ord a) => Point a -> Point a -> Point a a .+ b = Point (x a + x b)...

View Article

Haskellで麻雀の待ち判定プログラムを書いた

makeplex salon:あなたのスキルで飯は食えるか? 史上最大のコーディングスキル判定 (1/2) - ITmedia エンタープライズちょっと流行に乗り遅れた感があるけど書いてみた。どうやら自分の実力ではHaskellで飯を食うのは無理らしいwソースコード前半はユーティリティ関数やデータ構築子の定義などで,本質的なのは後半のsearchPair以降です。module Main...

View Article

Haskellに欲しいScalaの機能

Scalaのワイルドカードで無名関数を書ける機能が欲しい!!例えば自然数が1から順番に入ってるリスト(配列)を2倍して1足して奇数のリストを作りたいとする。普通に書くとこんな感じ。odds0 = map (\n ->2*n +1) [0..] 一時変数導入したら負けだと思うのでポイントフリースタイルで書くとこうなる。odds0'= map ((+1) . (2*)) [0..]...

View Article
Browsing all 4 articles
Browse latest View live




Latest Images