Haskell - Yesod - wai-handler-devel でスクリプト言語のようにデバッグする
wai-handler-develというモジュールを使うと、変更を加えると自動的にコンパイル・リロードされ(?)迅速にデバッグ・開発が出来る。
yesodとも相性は抜群だ。
wai-handler-devel - hackage
-- HelloWorld.hs {-# LANGUAGE TypeFamilies, QuasiQuotes, MultiParamTypeClasses,TemplateHaskell, OverloadedStrings #-} module HelloWorld where import Yesod -- routing data HelloWorld = HelloWorld mkYesod "HelloWorld" [parseRoutes| / HomeR GET |] instance Yesod HelloWorld where approot _ = "" getHomeR :: Handler RepHtml getHomeR = defaultLayout [whamlet|Hello World!|] withHelloWorld f = toWaiApp HelloWorld >>= f
というファイルをwai-handler-develで動かす。
wai-handler-devel
なので
wai-handler-devel 3000 HelloWorld withHelloWorld
とすると動く