Haskell Advent Calendar 2012二日目です。 一日目から飛ばしてきましたね。負けずに頑張らなければなりませんね。 QuasiQuotes書くときにdataToExpQ便利ですよね。 便利だけどこんさんが何言っているかわかんねえ!という人向けの記事です。 間違ってたらツッコミください。 (以下ではGHC7.4.1を用いています) 何故QuasiQuotesなのか 僕らエンジニアが扱うものは基本何らかのシンタックスに則って書かれています。 つまりHaskellerはConfigファイルやSQL文字列、もしくはある言語ファイルなどを目の前にして、 「このファイルパーズして"Haskellのデータ構造"として欲しいなあ」とつぶやく訳です。 文字列から値生成ならまだランタイムに出来ますが、型の生成や型クラスの生成などとなるとコンパイルタイムにやるしかありません。 というわけで