Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
Embedding an Interpreted Language Using Higher-Order Functions and Types
(Abstract)
Embedding an Interpreted Language Using Higher-Order Functions and Types
Using an embedded, interpreted
language to
control a complicated application can have significant
software-engineering benefits.
But existing interpreters are designed for embedding into C code.
To embed an interpreter into a different language requires an API
suited to that language.
This paper presents
Lua-ML, a new API that is suited to languages that provide
higher-order functions and types.
The API exploits higher-order functions and types to reduce the
amount of glue code needed to use an embedded interpreter.
Where embedding in C requires a special-purpose ``glue function''
for every function to be embedded, embedding in Lua-ML requires only a
description of each function's type.
Lua-ML also makes it easy to define a Lua function whose behavior
depends on the number and types of its arguments.