5

重複の可能性:
テンプレート Haskell 宣言のローカル変数

「Foo」のような文字列を指定すると、の構文ツリーを構築する単純な Template Haskell 関数を構築しようとしていますdata Foo = Foo

今、私はのようなことをしようとしていますがmkDecl name = [d|data $(conT name) = Foo|]、それは私にエラーを与えています:「型またはクラス宣言の不正なヘッド: $(conT name)」. 何が起こっているのか分かりますか?

dataD などを使用して書き出すこともできますが、何が起こっているのかがより明確になるため、この方法を好みます。

4

0 に答える 0