*** empty log message ***
authorJim Blandy <jimb@red-bean.com>
Sat, 6 Feb 1999 16:11:26 +0000 (16:11 +0000)
committerJim Blandy <jimb@red-bean.com>
Sat, 6 Feb 1999 16:11:26 +0000 (16:11 +0000)
NEWS
THANKS
ice-9/ChangeLog

diff --git a/NEWS b/NEWS
index 5e6b45b..e5aa09c 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -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
diff --git a/THANKS b/THANKS
index 66a69a3..e5c7bd0 100644 (file)
--- a/THANKS
+++ b/THANKS
@@ -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
index b2841d0..85725c8 100644 (file)
@@ -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