On this page:
for*/  list*
7.7

33 for*/list*

Georges Dupéron <georges.duperon@gmail.com>

 (require phc-toolkit/untyped/for-star-list-star)
  package: phc-toolkit

syntax

(for*/list* [sequences ] . body)

 
sequences = (* [id seq-expr] )
  | ([id seq-expr] )
This form allows iteration over sequences, collecting nested lists as the final result. Each sequences group of [id seq-expr] starts a new level of nesting. When the * is present at the beginning of a group, its bindings are evaluated in sequence (like let* and for*/list), otherwise they are evaluated in parallel (like let and for/list).

This form is equivalent to:
(for/list ([id seq-expr ])
  (for/list ([id seq-expr ])
    (for/list ([id seq-expr ])
      
        (for/list ([id seq-expr ])
          body))))
except when a group of [id seq-expr] starts with a *, then for*/list is used for that group instead of for/list.