Next: Modules, Previous: Iterative Statements [Contents][Index]
A command or function definition consists in a header followed by a block of
instructions delimited by end
.
A command definition header consists in a command name followed by a comma
separated parameter declaration list enclosed in parenthesis. A parameter
declaration consists in a parameter type: number
, point
,
vector
, set
, line
, circle
, conic
or
string
, followed by a parameter name. A function definition header is
identical to a command definition header except that it starts with a return
type.
A function definition must contain at least a return statement, which consists
in the return
keyword followed by an appropriate expression. Command
definitions may contain empty return statements.
Example:
number square(number x) return x*x end
Variables may be declared local to a command or function definition using the
local
keyword.
Example:
vector conjugate(vector v) local x, y x = abscissa(v) y = ordinate(v) return vector(x, -y) end