On 05/05/2011 11:25, Ali Matarawy wrote:
Hello,
Sometimes in Mozart manual when they explain a procedure with
parameter, they wrote a prefix with paramet such as ? means this
parameter is output, I don't understand the other parameters prefix
such as + , $, *
Best Wishes,
Ali El-Matarawy
The symbols ?, +, * are used in the documentation to indicate input and
output arguments (see
http://www.mozart-oz.org/documentation/base/node2.html#chapter.typestruct).
The symbol $ is different: it's a nesting marker. It's used in programs
to use a statement (which does not return a result) as an expression
(which does return a result). For example, a procedure call {Foo X Y Z}
can be used as follows:
A=B+{Foo X $ Z}
This is strictly equivalent to:
local Y in {Foo X Y Z} A=B+Y end
The call {Foo X $ Z} is an expression that returns the second argument.
Peter
_________________________________________________________________________________
mozart-users mailing list
[email protected]
http://www.mozart-oz.org/mailman/listinfo/mozart-users