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

Reply via email to