From a1da4b7c4808b3da1a0dba5a85b5e35134d9222c Mon Sep 17 00:00:00 2001 From: aarne Date: Thu, 26 Jun 2008 21:05:50 +0000 Subject: removed Transfer interpreter --- src/Transfer/Core/Core.cf | 93 ----------------------------------------------- 1 file changed, 93 deletions(-) delete mode 100644 src/Transfer/Core/Core.cf (limited to 'src/Transfer/Core/Core.cf') diff --git a/src/Transfer/Core/Core.cf b/src/Transfer/Core/Core.cf deleted file mode 100644 index cd4c20569..000000000 --- a/src/Transfer/Core/Core.cf +++ /dev/null @@ -1,93 +0,0 @@ --- This is a subset of the front-end language - -entrypoints Module, Exp ; - -comment "--" ; -comment "{-" "-}" ; - -Module. Module ::= [Decl] ; -separator Decl ";" ; - -DataDecl. Decl ::= "data" CIdent ":" Exp "where" "{" [ConsDecl] "}" ; -TypeDecl. Decl ::= CIdent ":" Exp ; -ValueDecl. Decl ::= CIdent "=" Exp ; - -ConsDecl. ConsDecl ::= CIdent ":" Exp ; -separator ConsDecl ";" ; - -separator Pattern ""; - --- Constructor patterns. -PCons. Pattern ::= "(" CIdent [Pattern] ")" ; - --- Variable patterns. Note that in the core language, --- constructor patterns must have parantheses. -PVar. Pattern ::= PatternVariable ; --- Record patterns. -PRec. Pattern ::= "rec" "{" [FieldPattern] "}"; --- String literal patterns. -PStr. Pattern ::= String ; --- Integer literal patterns. -PInt. Pattern ::= Integer ; - -FieldPattern. FieldPattern ::= CIdent "=" Pattern ; -separator FieldPattern ";" ; - --- Variable patterns -PVVar. PatternVariable ::= CIdent ; --- Wild card patterns -PVWild. PatternVariable ::= "_" ; - --- Let expressions. -ELet. Exp ::= "let" "{" [LetDef] "}" "in" Exp ; -LetDef. LetDef ::= CIdent "=" Exp ; -separator LetDef ";" ; - --- Case expressions. -ECase. Exp ::= "case" Exp "of" "{" [Case] "}" ; -Case. Case ::= Pattern "|" Exp "->" Exp ; -separator Case ";" ; - --- Lambda abstractions. -EAbs. Exp1 ::= "\\" PatternVariable "->" Exp ; --- Function types. -EPi. Exp1 ::= "(" PatternVariable ":" Exp ")" "->" Exp ; - --- Function application. -EApp. Exp3 ::= Exp3 Exp4 ; - --- Record field projection. -EProj. Exp4 ::= Exp4 "." CIdent ; - --- Record types. -ERecType. Exp5 ::= "sig" "{" [FieldType] "}" ; -FieldType. FieldType ::= CIdent ":" Exp ; -separator FieldType ";" ; - --- Record expressions. -ERec. Exp5 ::= "rec" "{" [FieldValue] "}" ; -FieldValue.FieldValue ::= CIdent "=" Exp ; -separator FieldValue ";" ; - - --- Functions, constructors and local variables. -EVar. Exp5 ::= CIdent ; --- The constant Type. -EType. Exp5 ::= "Type" ; --- String literal expressions. -EStr. Exp5 ::= String ; --- Integer literal expressions. -EInteger. Exp5 ::= Integer ; --- Double literal expressions. -EDouble. Exp5 ::= Double ; --- Meta variables -EMeta. Exp5 ::= TMeta ; - -token TMeta ('?' digit+) ; - -coercions Exp 5 ; - - --- Identifiers in core can start with underscore to allow --- generating unique identifiers easily. -token CIdent ((letter | '_') (letter | digit | '_' | '\'')*) ; -- cgit v1.2.3