Skip to content

Instantly share code, notes, and snippets.

@rightfold
Created April 19, 2014 09:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rightfold/9284871d5159521a8854 to your computer and use it in GitHub Desktop.
Save rightfold/9284871d5159521a8854 to your computer and use it in GitHub Desktop.
module Language.Styx.AST where
data Name a
= Name a [String]
| UnitTypeName a
| FunctionTypeName a Name Name
deriving (Show)
data Def a
= UseDef a [String]
| LetDef a String [LetParameter a] (Maybe (Name a)) (Expr a)
deriving (Show)
data LetParameter a = LetParameter a String (Name a) deriving (Show)
data Expr a
= NameExpr a (Name a)
| ECMAScriptExpr a [ECMAScriptCapture a] (Name a) String
deriving (Show)
data ECMAScriptCapture a
= NameECMAScriptCapture a String (Name a)
| ContinueECMAScriptCapture a String
deriving (Show)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment