summaryrefslogtreecommitdiff
path: root/module/language/ecmascript/parse.scm
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2009-02-18 01:17:14 +0100
committerAndy Wingo <wingo@pobox.com>2009-02-18 01:18:18 +0100
commit8fa6886d7af7c012c4cd17f793e5038931ffb4a0 (patch)
tree4fb22649c856f8b1131d5a1c1b01c5c6612eef5b /module/language/ecmascript/parse.scm
parentb912a1cd6b5d22e1fd3eadca10858d8d0dd9c027 (diff)
downloadguile-8fa6886d7af7c012c4cd17f793e5038931ffb4a0.tar.gz
add more ecmascript compilation -- functions work now
* module/language/ecmascript/parse.scm (parse-ecmascript): Lambdas always just have one member in their bodies. * module/language/ecmascript/compile-ghil.scm (comp): Add some more silly compilers.
Diffstat (limited to 'module/language/ecmascript/parse.scm')
-rw-r--r--module/language/ecmascript/parse.scm12
1 files changed, 6 insertions, 6 deletions
diff --git a/module/language/ecmascript/parse.scm b/module/language/ecmascript/parse.scm
index ebc7eaae8..0632b6d87 100644
--- a/module/language/ecmascript/parse.scm
+++ b/module/language/ecmascript/parse.scm
@@ -55,12 +55,12 @@
(SourceElement (Statement) -> $1
(FunctionDeclaration) -> $1)
- (FunctionDeclaration (function Identifier lparen rparen lbrace FunctionBody rbrace) -> `(define ,$2 (lambda () ,@$6))
- (function Identifier lparen FormalParameterList rparen lbrace FunctionBody rbrace) -> `(define ,$2 (lambda ,$4 ,@$7)))
- (FunctionExpression (function lparen rparen lbrace FunctionBody rbrace) -> `(lambda () ,@$5)
- (function Identifier lparen rparen lbrace FunctionBody rbrace) -> `(lambda () ,@$6)
- (function lparen FormalParameterList rparen lbrace FunctionBody rbrace) -> `(lambda ,$3 ,@$6)
- (function Identifier lparen FormalParameterList rparen lbrace FunctionBody rbrace) -> `(lambda ,$4 ,@$7))
+ (FunctionDeclaration (function Identifier lparen rparen lbrace FunctionBody rbrace) -> `(define ,$2 (lambda () ,$6))
+ (function Identifier lparen FormalParameterList rparen lbrace FunctionBody rbrace) -> `(define ,$2 (lambda ,$4 ,$7)))
+ (FunctionExpression (function lparen rparen lbrace FunctionBody rbrace) -> `(lambda () ,$5)
+ (function Identifier lparen rparen lbrace FunctionBody rbrace) -> `(lambda () ,$6)
+ (function lparen FormalParameterList rparen lbrace FunctionBody rbrace) -> `(lambda ,$3 ,$6)
+ (function Identifier lparen FormalParameterList rparen lbrace FunctionBody rbrace) -> `(lambda ,$4 ,$7))
(FormalParameterList (Identifier) -> `(,$1)
(FormalParameterList comma Identifier) -> `(,@$1 ,$3))
(SourceElements (SourceElement) -> $1