From ccfe7fb119aa4aed9b971bd52f72ab0f54df1bf4 Mon Sep 17 00:00:00 2001 From: bringert Date: Fri, 9 Dec 2005 11:45:57 +0000 Subject: Transfer: changed syntax to remove the mandatory type annotation in let. --- src/Transfer/Core/Core.cf | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'src/Transfer/Core/Core.cf') diff --git a/src/Transfer/Core/Core.cf b/src/Transfer/Core/Core.cf index de99eb5de..e0fc7e0f5 100644 --- a/src/Transfer/Core/Core.cf +++ b/src/Transfer/Core/Core.cf @@ -42,7 +42,7 @@ PVWild. PatternVariable ::= "_" ; -- Let expressions. ELet. Exp ::= "let" "{" [LetDef] "}" "in" Exp ; -LetDef. LetDef ::= CIdent ":" Exp "=" Exp ; +LetDef. LetDef ::= CIdent "=" Exp ; separator LetDef ";" ; -- Case expressions. @@ -50,11 +50,10 @@ ECase. Exp ::= "case" Exp "of" "{" [Case] "}" ; Case. Case ::= Pattern "|" Exp "->" Exp ; separator Case ";" ; - -- Lambda abstractions. -EAbs. Exp2 ::= "\\" PatternVariable "->" Exp ; +EAbs. Exp1 ::= "\\" PatternVariable "->" Exp ; -- Function types. -EPi. Exp2 ::= "(" PatternVariable ":" Exp ")" "->" Exp ; +EPi. Exp1 ::= "(" PatternVariable ":" Exp ")" "->" Exp ; -- Function application. EApp. Exp3 ::= Exp3 Exp4 ; -- cgit v1.2.3