[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

issue: n-ary mapping function termination



in Issues, Olin noted:

> 3.When do n-ary mapping functions (MAP, MAP!, FOR-EACH, PAIR-FOR-EACH,
>  APPEND-MAP, APPEND-MAP!, FILTER-MAP, MAP-IN-ORDER) terminate? 
>                 1.When any list runs out? 
>                 2.When the first list runs out? 
>                 3.All lists must be of equal length? 
> My preferences are in the order listed. R4RS says #3.  Hence this spec
> requires #1. Any changes to this *must* happen by the end of the SRFI
> discussion period. 

Dylan, which has a fairly general collections mechanism, also takes
approach #1.  Generalizing lists, a collection in Dylan is regarded as a
mapping from keys to values.  The keys for lists and vectors are integers
starting at zero.  n-ary mapping functions do an intersection-join on the
keys of their arguments, and hence, for the list case, only operate on the
common keys, ie, along the shortest list. 

-- Donovan Kolbly                    (  RScheme Development Group
                                     (  d.kolbly@xxxxxxxxxxx
				     (  http://www.rscheme.org/~donovan/