From ftm
Jump to: navigation, search
Line 27: Line 27:
  
 
* within a ftm.object
 
* within a ftm.object
 +
 +
as shown in the ftm.class.expr.maxhelp document. On the left, you put the expression, on the right its name, the latter being the way to call the expression
  
 
* within ftm.mess
 
* within ftm.mess
 +
 +
when it is used as an argument to a method to another object, like in the following example:
 +
 +
((new fmat 10 3) fill (new expr '(random 1 3)'))
 +
 +
  
 
scope of variable
 
scope of variable
Line 41: Line 49:
  
 
Find
 
Find
 
 
== Simple examples ==
 
 
 
Unity
 

Revision as of 14:47, 5 July 2010

This is a simple reference for the EXPR class.

Creation - Elements of the call

An EXPRession is a sentence which can be applied to the content of an FMAT or an FVEC. It can be created in an FTM.object (class expr) or in an FTM.message. In both case, it shares the same syntax:

1_ it starts with expr

2_ it is surrounded by simple quotes ' '

3_ it is then encapsulated within parenthesis (to be executed like all of FTM's code)

For example, the expression returning the value 1 is

expr '(1)'


You can use all the FTM Functions available to create your expression. Moreover, $1, $2, etc will be replaced by values passed to your instance of expr.


For example, the expression returning the sinus of its input is

expr '(sin $1)'


There are two places you can create a new expr instance:

  • within a ftm.object

as shown in the ftm.class.expr.maxhelp document. On the left, you put the expression, on the right its name, the latter being the way to call the expression

  • within ftm.mess

when it is used as an argument to a method to another object, like in the following example:

((new fmat 10 3) fill (new expr '(random 1 3)'))


scope of variable

Context of use

Fill

Apply

Lookup

Find