Hi Anton,

On Saturday, November 15, 2003, 1:21:46 PM, you wrote:

AR>     add: func [a b][a + b]
AR>     mul3: func [a][a * 3]
AR>     add-mul3: func [a b][mul3 add a b]

These are two ways to do it in REBOL:

   f*g: func [f g] [func [x] compose [(:f) (:g) x]]

   f*g: func [f g] [func [x] use [f' g'] [f': :f g': :g [f' g' x]]]

so that:

   add2: func [x] [x + 2]
   mul3: func [x] [x * 3]
   add2-mul3: f*g :mul3 :add2

Regards,
   Gabriele.
-- 
Gabriele Santilli <[EMAIL PROTECTED]>  --  REBOL Programmer
Amiga Group Italia sez. L'Aquila  ---   SOON: http://www.rebol.it/

-- 
To unsubscribe from this list, just send an email to
[EMAIL PROTECTED] with unsubscribe as the subject.

Reply via email to