| Theory and Practice of Logic Programming (2001), 1:3:359-380 Cambridge University Press Copyright © 2001 Cambridge University Press doi:10.1017/S1471068401001193
High-level networking with mobile code and first order AND-continuations
AbstractWe describe a scheme for moving living code between a set of distributed processes coordinated with unification based Linda operations, and its application to building a comprehensive Logic programming based Internet programming framework. Mobile threads are implemented by capturing first order continuations in a compact data structure sent over the network. Code is fetched lazily from its original base turned into a server as the continuation executes at the remote site. Our code migration techniques, in combination with a dynamic recompilation scheme, ensure that heavily used code moves up smoothly on a speed hierarchy while volatile dynamic code is kept in a quickly updatable form. Among the examples, we describe how to build programmable client and server components (Web servers, in particular) and mobile agents. Key Words: mobile computations; remote execution; networking; Internet programming; first order continuations; Linda coordination; blackboard-based logic programming; mobile agents; dynamic recompilation; code migration. |