Safe Haskell | None |
---|---|
Language | Haskell2010 |
Quotation.
Or more precisely
Unlike LambdaPi, our Value
has Eq
instance. Therefore we
don't need quotation for type-checker. It's sometimes useful anyway.
>>>
t <- type_ emptyCtx systemfIdentity >>= errorlessValueIntro' . snd
>>>
prettyPut t
∀ a → a → a
>>>
:t t
t :: ValueIntro Void SystemF Sym
>>>
prettyPut (quote_ t)
∀ a → a → a
>>>
:t quote_ t
quote_ t :: TermChk SystemF Sym
>>>
t' <- check_ emptyCtx (quote_ t) (sort_ SysFStar) >>= errorlessValueIntro'
>>>
prettyPut t'
∀ a → a → a
Documentation
class Quote v t | v -> t, t -> v where Source #
quote_ :: Specification s => v Void s a -> t s a Source #
Instances
Quote ValueElim TermInf Source # | |
Defined in Language.PTS.Quote | |
Quote ValueIntro TermChk Source # | |
Defined in Language.PTS.Quote quote_ :: Specification s => ValueIntro Void s a -> TermChk s a Source # |