[Next] [Previous] [Up] [Top] [Contents] [Index]

2 Dynamically-Typed Core

2.5 Statements and Expressions

A statement is a declaration block, an assignment, or an expression:

stmt	::=	decl_block
	|	assignment ";"
	|	expr ";"
An expression is either a literal, a reference to a variable or a named object, an object constructor expression, a vector constructor expression, a closure constructor expression, a message, a resend, or a parenthetical subexpression:

expr	::=	binop_expr
binop_expr	::=	binop_msg | unop_expr
unop_expr	::=	unop_msg | dot_expr
dot_expr	::=	dot_msg | simple_expr
simple_expr	::=	literal
	|	ref_expr
	|	vector_expr
	|	closure_expr
	| 	object_expr
	|	message
	|	resend
	|	paren_expr
All of these constructs are described below, except for resends which are described later in section 2.8 and declarations other than variable declarations which are described in other sections.

2.5.1 - Declaration Blocks
2.5.2 - Variable Declarations
2.5.3 - Variable References
2.5.4 - Assignment Statements
2.5.5 - Literals
2.5.6 - Message Sends
2.5.7 - Object Constructors
2.5.8 - Vector Constructors
2.5.9 - Closures
2.5.10 - Parenthetical Subexpressions

The Cecil Language: Specification and Rationale, Version 2.1 - 25 MARCH 1997
[Next] [Previous] [Up] [Top] [Contents] [Index]

Generated with Harlequin WebMaker