Runtime evaluation: Difference between revisions

Content added Content deleted
m (→‎{{header|Go}}: fixed lang tag)
(→‎{{header|REXX}}: added the REXX language. -- ~~~~)
Line 512: Line 512:
> eval(expr1, env)
> eval(expr1, env)
[1] 11</lang>
[1] 11</lang>

=={{header|REXX}}==
This REXX program does a:
<br> 1) run-time evaluation of an internal expression, and a
<br> 2) run-time evaluation of a user-prompted expression.
<lang rexx>
/*REXX program to illustrate ability to execute code written at runtime.*/

numeric digits 10000000
bee=51
stuff='bee=min(-2,44); say 13*2 "[from inside the box."; abc=abs(bee)'
interpret stuff
say 'bee=' bee
say 'abc=' abc
say

say 'enter an expression:'
pull expression
say
say 'expression entered is:' expression

interpret '?='expression

say
say 'length of result='length(?)
say ' left 50 bytes of result='left(?,50)'...'
say 'right 50 bytes of result=...'right(?,50)
</lang>
Output [with the user entering: <tt> 2**44497 - 1 </tt> ]
<br>which happens to be the 27th Mersenne prime.
<pre style="height:35ex;overflow:scroll">
26 [from inside the box.
bee= -2
abc= 2

enter an expression:
2**44497 - 1

expression entered is: 2**44497 - 1

length of result=13395
left 50 bytes of result=85450982430363380319330070531840303650990159130402...
right 50 bytes of result=...22977396345497637789562340536844867686961011228671
</pre>


=={{header|Ruby}}==
=={{header|Ruby}}==