| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Traq.Compiler.Quantum
Contents
Synopsis
- lowerProgram :: forall ext size prec. (TypingReqs size, Floating prec, HasFreeVars ext, CompileQ ext, TypeInferrable ext size, PrecType ext ~ prec, SizeType ext ~ size) => Program ext -> Either String (Program size)
- class CompileU ext => CompileQ ext where
Documentation
lowerProgram :: forall ext size prec. (TypingReqs size, Floating prec, HasFreeVars ext, CompileQ ext, TypeInferrable ext size, PrecType ext ~ prec, SizeType ext ~ size) => Program ext -> Either String (Program size) #
Lower a full program into a CQPL program.
Class
class CompileU ext => CompileQ ext where #
Methods
compileQ :: forall ext' m. (m ~ CompilerT ext', SizeType ext ~ SizeType ext', PrecType ext ~ PrecType ext', CompileQ ext') => ext -> [Ident] -> m (Stmt (SizeType ext)) #
Instances
| (TypeCheckPrim prim (SizeType prim), TypingReqs (SizeType prim), UnitaryCompilePrim prim (SizeType prim) (PrecType prim), QuantumCompilePrim prim (SizeType prim) (PrecType prim)) => CompileQ (AnnFailProb (Primitive prim)) # | |
Defined in Traq.Primitives.Class | |
| TypingReqs size => CompileQ (Core size prec) # | |