Terrence Brannon wrote:

Re: http://www.mozart-oz.org/documentation/tutorial/node3.html#chapter.basics

I've been staring at this sentence for 10 minutes, trying to simply
accept what it says, but it just does not make any sense to me:

  observe that 1#2#3 is a single tuple of three elements

But to my way of thinking, # is a binary operator and regardless of
associativity, it first creates a 2-tuple of two values and then
another 2-tuple nesting the first 2-tuple and the remaining element.

I really dont see how # could operate any other way, but would
appreciate any feedback on how this is possible.
_________________________________________________________________________________
mozart-users mailing list                               
[email protected]
http://www.mozart-oz.org/mailman/listinfo/mozart-users
The simple explanation is that # isn't a binary operator. It is an n-ary operator that creates a tuple of n elements. However, it's most commonly used to build pairs where it looks like a binary operator.

In other words,
A#B#C \= (A#B)#C
A#B#C \= A#(B#C)

A#B#C= '#'(A B C)
(A#B)#C = '#'('#'(A B) C)
A#(B#C) = '#'(A '#'(B C))

A#B#C#D = '#'(A B C D)

Cheers,
Yves
_________________________________________________________________________________
mozart-users mailing list                               
[email protected]
http://www.mozart-oz.org/mailman/listinfo/mozart-users

Reply via email to