Runtime evaluation: Difference between revisions

Added Wren
(added note re Lua 5.3+ loadstring -> load)
(Added Wren)
Line 1,728:
eval "out \"hello world\" endl console" console
</lang>
 
=={{header|Wren}}==
Firstly, Wren has a REPL which is started from the command line by running Wren-cli without any parameters.
 
Any valid Wren code can then be entered and immediately evaluated.
 
To quit the REPL just type Ctrl-C or Ctrl-D.
 
The examples in the Kotlin entry would look like this in the Wren REPL:
<pre>
$ wren-cli
\\/"-
\_/ wren v0.3.0
> 20 + 22
42
> 5 * 81.sqrt
45
> var triple = Fn.new { |x| x * 3 }
> triple.call(16)
48
>
</pre>
 
Secondly, Wren has the ''Meta.eval'' method which can be used from within a script to execute any valid Wren code (presented to it in string form) at runtime. The string could be constructed within the script, obtained from a file or input by the user. Here's a very simple example:
<lang ecmascript>import "meta" for Meta
 
var s = "for (i in 0..4) System.print(i)"
Meta.eval(s)</lang>
 
{{out}}
<pre>
0
1
2
3
4
</pre>
 
=={{header|zkl}}==
9,485

edits