]> Git — Sourcephile - haskell/symantic.git/blob - Language/LOL/Symantic/Repr/Dup.hs
init
[haskell/symantic.git] / Language / LOL / Symantic / Repr / Dup.hs
1 module Language.LOL.Symantic.Repr.Dup where
2
3 -- | Data type to duplicate an expression
4 -- in order to evaluate it with different interpreters.
5 --
6 -- NOTE: this is a more verbose and somehow less clear alternative
7 -- to maintaining the universal polymorphism of @repr@ at parsing time.
8 data Dup repr1 repr2 a
9 = Dup
10 { dup1 :: repr1 a
11 , dup2 :: repr2 a
12 }