Subject: Re: commands vs. expressions?
From: rpw3@rigden.engr.sgi.com (Rob Warnock)
Date: 1998/11/20
Newsgroups: comp.lang.scheme
Message-ID: <732uqg$bsgid@fido.engr.sgi.com>
Steve Schafer <pandeng@telepath.com> wrote:
+---------------
| 19 Nov 1998 08:47:55 GMT, eimar@hempseed.com wrote:
| >I thought programs where made of <expression>s and <definition>s,
| >and I cant find a definition of <command> anywhere. 
| 
| 7.1.3: <command> --> <expression>
+---------------

IIUC, the intent is that <command>s are just <expression>s whose value
is always ignored, e.g., as in the "begin" special form (also in 7.1.3):

	<sequence> --> <command>* <expression>
	...
	<derived expression> -->
	   ...
	   | (begin <sequence>)
	   | ...

Also, AFAIK, if any given <command> can be proven to be side-effect-free,
it may safely be removed from a program ("optimized away") without changing
the program's semantics (except for effects on runtime).


-Rob

-----
Rob Warnock, 8L-855		rpw3@sgi.com
Applied Networking		http://reality.sgi.com/rpw3/
Silicon Graphics, Inc.		Phone: 650-933-1673
2011 N. Shoreline Blvd.		FAX: 650-964-0811
Mountain View, CA  94043	PP-ASEL-IA