( let-optional Reference

Info Catalog ( Optional Arguments ( let-keywords Reference
 23.2.1 let-optional Reference
 The syntax `let-optional' and `let-optional*' are for destructuring
 rest argument lists and giving names to the various list elements.
 `let-optional' binds all variables simultaneously, while
 `let-optional*' binds them sequentially, consistent with `let' and
 `let*' ( Local Bindings).
  -- library syntax: let-optional rest-arg (binding ...) expr ...
  -- library syntax: let-optional* rest-arg (binding ...) expr ...
      These two macros give you an optional argument interface that is
      very "Schemey" and introduces no fancy syntax. They are compatible
      with the scsh macros of the same name, but are slightly extended.
      Each of BINDING may be of one of the forms VAR or `(VAR
      DEFAULT-VALUE)'. REST-ARG should be the rest-argument of the
      procedures these are used from.  The items in REST-ARG are
      sequentially bound to the variable names are given. When REST-ARG
      runs out, the remaining vars are bound either to the default
      values or `#f' if no default value was specified. REST-ARG remains
      bound to whatever may have been left of REST-ARG.
      After binding the variables, the expressions EXPR ... are
      evaluated in order.
Info Catalog ( Optional Arguments ( let-keywords Reference
automatically generated byinfo2html