diff options
author | Jim Blandy <jimb@red-bean.com> | 1999-02-06 16:11:26 +0000 |
---|---|---|
committer | Jim Blandy <jimb@red-bean.com> | 1999-02-06 16:11:26 +0000 |
commit | 2e13255303235ca11147eb3e711be52028114985 (patch) | |
tree | f8b927737c88adb682d63c7b502c7c741ceaef8e | |
parent | 0e68d6003bafa992343b2f6decce3c913dc206ab (diff) | |
download | guile-2e13255303235ca11147eb3e711be52028114985.tar.gz |
*** empty log message ***
-rw-r--r-- | NEWS | 28 | ||||
-rw-r--r-- | THANKS | 2 | ||||
-rw-r--r-- | ice-9/ChangeLog | 6 |
3 files changed, 36 insertions, 0 deletions
@@ -35,6 +35,34 @@ in backtraces. * Changes to Scheme functions and syntax +** New syntax: and-let* +Guile now supports the `and-let*' form, described in the draft SRFI-2. + +Syntax: (land* (<clause> ...) <body> ...) +Each <clause> should have one of the following forms: + (<variable> <expression>) + (<expression>) + <bound-variable> +Each <variable> or <bound-variable> should be an identifier. Each +<expression> should be a valid expression. The <body> should be a +possibly empty sequence of expressions, like the <body> of a +lambda form. + +Semantics: A LAND* expression is evaluated by evaluating the +<expression> or <bound-variable> of each of the <clause>s from +left to right. The value of the first <expression> or +<bound-variable> that evaluates to a false value is returned; the +remaining <expression>s and <bound-variable>s are not evaluated. +The <body> forms are evaluated iff all the <expression>s and +<bound-variable>s evaluate to true values. + +The <expression>s and the <body> are evaluated in an environment +binding each <variable> of the preceding (<variable> <expression>) +clauses to the value of the <expression>. Later bindings +shadow earlier bindings. + +Guile's and-let* macro was contributed by Michael Livshin. + ** New function: sorted? SEQUENCE LESS? Returns `#t' when the sequence argument is in non-decreasing order according to LESS? (that is, there is no adjacent pair `... x y @@ -10,11 +10,13 @@ Bug reports and fixes from: Eric Hanchrow Greg Harvey Charbel Jacquin + Michael Livshin Christian Lynbech Russ McManus Nicolas Neuss Thien-Thi Nguyen Richard Polton + Ken Raeburn Telford Tendys Bernard Urban Jim Wilson diff --git a/ice-9/ChangeLog b/ice-9/ChangeLog index b2841d00b..85725c8d0 100644 --- a/ice-9/ChangeLog +++ b/ice-9/ChangeLog @@ -1,3 +1,9 @@ +1999-02-06 Jim Blandy <jimb@zwingli.cygnus.com> + + * and-let*.scm: New file, from Michael Livshin. + * Makefile.am (ice9_sources): Add and-let* here. + * Makefile.in: Regenerated. + 1999-01-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se> * slib.scm (install-require-module): Fixed the kludge which loads |