Re: The Declaration Approach (was: Some thoughts on the 'reveal' operator) Chip Morningstar (chip@communities.com)
Thu, 21 Oct 1999 11:52:53 -0700 (PDT)

>> The best choice in terms of meaning seems to be "^", but we
>>already dismissed that for ergonomic reasons.
>
>Perhaps a variant?

Hmm. Lemme free-associate for a minute...

define square(x) ^{x*x}

too small. Make it bigger:

define square(x) /\{x*x}

weird and hard to type. Maybe something more subtle:

define square(x) ^^{x*x}

not much more prominent and too arbitrary. If we're gonna be arbitrary anyway:

define square(x) ** {x*x}

it stands out, but what's the rationale otherwise? (also will confuse FORTRAN programmers). How about going back to mathematics? If |foo| means "value of foo", then how about:

define square(x) |{x*x}|

except that closing v-bar will got lost when there's a big block. Put it in front maybe:

define square(x) ||{x*x}

looks like "or" (or concat depending on your native language). If we're talking about *value*, how about:

define square(x) ${x*x}

it bit culturally specific, maybe, but then I've always been a fan of cultural imperialism; shell programmers will like it, anyway.

Nothing perfect yet.