egison-quote-0.1.0: A quasi quotes for using Egison expression in Haskell code

Portabilitynon-portable (GHC-7.4.0 for GHC's extensions)
Stabilityunstable
Maintainerkuwahara111011@gmail.com
Safe HaskellNone

Language.Egison.Quote

Description

The quasi quotes for egison expression

Synopsis

Documentation

egison :: QuasiQuoterSource

QuasiQuoter for egison expression The format is:

 expr := [egison | <egison-expression> :: <type-signature> |]

Type signature is defined as follows

 <Typ> = Bool | Int | Double | Float | Char | String | [<Typ>] | (<Typ>, <Typ>, ..., <Typ>) | <Typ> -> <Typ> -> ... <Typ>

Embedded Egison expression is run-time evaluated by using eval and unsafePerformIO. For more detailed usage, please refer to https://github.com/xenophobia/Egison-Quote.

data TypeSignature Source

The type of type signature of egison expression

Instances

parseQuote :: Parser (EgisonExpr, TypeSignature)Source

Parser for egison-quote

parseType :: Parser TypeSignatureSource

Parser for TypeSignature

readQuote :: String -> ThrowsError (EgisonExpr, TypeSignature)Source

Read function for egison-quote

toHaskellExp :: EgisonExpr -> TypeSignature -> ExpQSource

construct Exp from Egison-expression and type signature