]> Git — Sourcephile - haskell/symantic.git/blob - Language/LOL/Symantic/Repr/Dup.hs
init
[haskell/symantic.git] / Language / LOL / Symantic / Repr / Dup.hs
1 -- | Interpreter to duplicate the representation of an expression
2 -- in order to evaluate it with different interpreters.
3 --
4 -- NOTE: this is a more verbose, less clear,
5 -- and maybe less efficient alternative
6 -- to maintaining the universal polymorphism of @repr@ at parsing time
7 -- as done with 'Forall_Repr_with_Context';
8 -- it is mainly here for the sake of curiosity.
9 module Language.LOL.Symantic.Repr.Dup where
10
11 -- | Interpreter's data.
12 data Dup repr1 repr2 a
13 = Dup
14 { dup1 :: repr1 a
15 , dup2 :: repr2 a
16 }