Name

deff — on-line definition of function

Calling Sequence

deff('[s1,s2,...]=newfunction(e1,e2,....)',text [,opt])

Parameters

e1,e2,...,

input variables.

s1,s2,...,

output variables.

text

matrix of character strings

opt

optional character string

'c'

function is "compiled" to be more efficient (default)

'p'

function is "compiled" and prepared for profiling (see profile)

'n'

function is not "compiled"

Description

deff can be used to define functions from sequences of instructions written in text strings. The resulting function object has the same proprerties of any other function defined in a text file and loaded with exec or exec.

Quotes in the instructions (delimiting strings or meaning matrix transposition) have to be doubled to be interpreted correctly (see help quote). This can make writing up a little awkward. An option in such cases is to define functions in files as usual, to load them into Scilab by exec (with the 'n' option) and to use sci2exp to get a printout of corresponding deff instructions.

Examples

 
deff('[x]=myplus(y,z)','x=y+z')

deff('[x]=mymacro(y,z)',['a=3*y+1'; 'x=a*z+y'])
 

See Also

comp , exec , function , profile