Runtime evaluation: Difference between revisions

Content added Content deleted
(→‎{{header|Common Lisp}}: Oh yes you can do sandboxing in Lisp, if you understand the package system, and what you're doing. Sorry if this is too long. Break off into a page?)
Line 446: Line 446:
'[http://software-lab.de/doc/refL.html#let let]' or
'[http://software-lab.de/doc/refL.html#let let]' or
'[http://software-lab.de/doc/refJ.html#job job]'.
'[http://software-lab.de/doc/refJ.html#job job]'.

=={{header|Pike}}==
Pike provides [http://pike.ida.liu.se/doc/compile_string() <code>compile_string()</code>] and [http://pike.ida.liu.se/doc/compile_file() <code>compile_file()</code>] which can compile any kind of code into a class that can be instantiated:
<lang Pike>program demo = compile_string(#"
string name=\"demo\";
string hello()
{
return(\"hello, i am \"+name);
}");

demo()->hello();
Result: "hello, i am demo"</lang>

an actual application of this is shown in [[Simple database]].


=={{header|Python}}==
=={{header|Python}}==