Presentation is loading. Please wait.

Presentation is loading. Please wait.

Self-Replicating Distributed Virtual Machines Lance R. Williams Dept. of Computer Science University of New Mexico.

Similar presentations


Presentation on theme: "Self-Replicating Distributed Virtual Machines Lance R. Williams Dept. of Computer Science University of New Mexico."— Presentation transcript:

1 Self-Replicating Distributed Virtual Machines Lance R. Williams Dept. of Computer Science University of New Mexico

2 Church-Turing Thesis  All models of effective computation are equivalently powerful.  However, certain models offer advantages with respect to particular modes of physical implementation.  The von Neumann machine is well-suited to implementation using electronic components.

3 Signaling Networks  The von Neumann machine is less useful as a model for computations implemented using signaling networks of neurons, molecules, nanomachines, or bacteria.  The ACTOR model (Hewitt ‘73) is potentially better suited to this mode of implementation.

4 ACTOR Model  A model of concurrent computation  An actor is a process.  Actors execute asynchronously and in parallel.  An actor can send/receive messages to/from other actors.  An actor can create new actors.

5 Distributed Virtual Machines  Compile programs written in a simple and expressive programming language into a network of actors  Actors represent virtual machine bytecodes and basic datatypes.  The network of actors constitutes the code, stack, and heap of a distributed virtual machine.

6 Example argumentrefer close assign halt closure put def symbol argument refer pair apply refer primitive (define sqr (lambda (x) (* x x))) COMPILATION put number put pair apply ref symbol pair put pair get number get pair get

7 The Cell  It is a popular fallacy that DNA is a self- replicating molecule.  DNA is a molecular representation.  DNA can be used to represent a description of a self-replicating machine called the cell.  The cell translates the DNA into a copy of the cell and a copy of the DNA.

8 Quines  A quine is a program which prints its own source code.  A quine consists of program and data.  The program uses the data to construct copies of the program and the data.

9 Self-Replicating Distributed Virtual Machines  A compiler can be implemented as a distributed virtual machine.  The distributed virtual machine can copy itself by compiling its own source code.  A distributed virtual machine which copies itself and then copies its own source code is (in effect) a non-biological cell.

10 Bacterial Implementation molecular lock molecular key continuation (plasmid) bytecode n bytecode n+1 bacterium

11 Conclusion  ACTOR model is better suited to describing signaling network embodied computations than the von Neumann machine.  A compiler implemented as a distributed virtual machine can copy itself simply by compiling its own source code.  A self-replicating distributed virtual machine embodied using bacteria would be a meta-cell.


Download ppt "Self-Replicating Distributed Virtual Machines Lance R. Williams Dept. of Computer Science University of New Mexico."

Similar presentations


Ads by Google