YoshikuniJujo on Nostr: template ...
template haskellではName型の値を使って「型」とか「値」とか「パターン」とかを作るのだけど、Name型の値の作りかたに
mkName "foo"
とするやりかたと
'foo
とするやりかたとある。前者のやりかただと、templateが「使われるスコープ」で定義されているfooを指すようになるのに対して、後者のやりかただとtemplateが「定義されたスコープ」で定義されているfooを指すようになる。前者が「動的スコープ」で後者が「静的スコープ」と言えると思う。
問題は後者のやりかただと、たとえばfoo1とかfoo2とかの'1'とか'2'とかを引数で変化させることができないということ。
しかたないので僕はreifyで「importしているモジュールを含むpackageを探して云々」みたいなやりかたをしている。もっと簡潔なやりかたがあればいいのだけど。
mkName "foo"
とするやりかたと
'foo
とするやりかたとある。前者のやりかただと、templateが「使われるスコープ」で定義されているfooを指すようになるのに対して、後者のやりかただとtemplateが「定義されたスコープ」で定義されているfooを指すようになる。前者が「動的スコープ」で後者が「静的スコープ」と言えると思う。
問題は後者のやりかただと、たとえばfoo1とかfoo2とかの'1'とか'2'とかを引数で変化させることができないということ。
しかたないので僕はreifyで「importしているモジュールを含むpackageを探して云々」みたいなやりかたをしている。もっと簡潔なやりかたがあればいいのだけど。