(j3.2006) ASSOCIATED

Van Snyder van.snyder at jpl.nasa.gov
Fri Mar 12 03:23:13 EST 2010


Malcolm Cohen wrote:
> The contradiction looks like it is almost inherent in the "feature" of confusing disassociated pointers with absent optionals.
>
> What an annoying feature this is.  Can we not just take it out?
>   

I advocated for this feature as a second-best solution to the 
combinatorial explosion problem of using procedures that have more than 
one optional argument.

You might recall that I advocated in 04-192r1 for a conditional 
expression of two forms.

One was of the form "if <cond> then the value is <a> else the value is 
<b>."  This would have been similar to a lazily-evaluated MERGE function 
(by lazy I mean the arguments aren't evaluated until they're needed).

The other was of the form "if <cond> then the actual argument is <a> 
else the actual argument is not present."  This would have provided what 
we now have by using "associated(a)" for <cond>, but it would have 
provided more general capability.

I preferred my first choice solution, but J3 and WG5 preferred what we got.



More information about the J3 mailing list