1 / 11

Self-Replicating Distributed Virtual Machines

Self-Replicating Distributed Virtual Machines. Lance R. Williams Dept. of Computer Science University of New Mexico. Church-Turing Thesis. All models of effective computation are equivalently powerful.

hendersonh
Download Presentation

Self-Replicating Distributed Virtual Machines

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

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 put (define sqr (lambda (x) (* x x))) refer argument pair get pair refer pair COMPILATION get put pair argument put ref close closure symbol refer def get get assign symbol pair apply pair get apply halt number primitive number get put number

  7. The Cell • It is a popular misconception 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 bacterium molecular key bytecode n bytecode n+1 continuation (plasmid) molecular lock 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.

More Related