[REBOL] Re: Using a Math oper. buried in a variable
From: henrikmk::gmail at: 2-Apr-2009 22:42
On Thu, Apr 2, 2009 at 10:37 PM, <mumpsoid-gmx.com> wrote:
> On Thu, 2 Apr 2009, Wall, Scott wrote:
>
>>
>> Hi Duke,
>>
>> > As with most things in REBOL, there are a number of ways to do what
>> > you want. Here's another one:
>>
>> >>> num1: 6
>> >== 6
>> >>> num2: 5
>> >== 5
>> >>> op: :*
>> >>> op num1 num2
>> >== 30
>> >>> print [op num1 num2]
>> >30
>>
>> Still another way is to leave
>> op: "*"
>> and use:
>> do reform [num1 op num2]
>>
>> Scott
>>
> JOY!!!!!!!!
>
>>>
>>> num1
> == 5
>>> num2
> == 6
>>> op
> == *
>>> do reform [num1 op num2]
> == 30
>>>
>
> Is it OK for me to think that this is a PITA?
Actually, it's only one form: Code is data and data is code, but the
method above creates a string, which is fast in REBOL2 due to the
string being in ASCII format, but slower in R3, because it's converted
to unicode and away from unicode.
I believe the most correct and fastest method here is to assign the
function directly to 'op, so you don't have to put things inside a
block. It was mentioned earlier:
>> op: :*
>> op num1 num2
== 30
--
Regards,
Henrik Mikael Kristensen