Introduction

The LMNtal system first compiles LMNtal source files into
intermediate code. It then translates the intermediate code
into Java programs,
which is then compiled into Java bytecode and packaged into an
.jar (Java archive) file. How to run the .jar file will be
described below.

When invoked with the --interpret option, the second and subsequent
steps of compilation is skipped and the intermediate code will be
executed interpretively.

When invoked without specifying a source file, the LMNtal system
enters the REPL (read-eval-print loop) mode, in which case expressions
will be executed interpretively.

The system comes with library APIs. By default, the compiled version
of the APIs will be used (this works also when invoked
with the --interpret option). In this case the .jar files of the library APIs
should be created beforehand and should be added to the classpath.
By using shellscripts in the bin directory, you can invoke LMNtal
after adding .jar files located in the lib directory.
Alternatively, you can use the source code of the APIs by specifying
the --use-source-library option, in which case .lmn files located
under the lib/src directory will be read and compiled on demand.

LMNtal programs transtaled into Java bytecode will run an order of
magnitude faster than the interpreted intermediate code.

Execution

Interactive execution (Read-Eval-Print loop)

$ lmntal

(lmntal is an alias of lmnc.)

Interactive mode will start when filenames are not specified in the command line.
The process to be executed can be given in multiple lines.
Press the enter key twice to finish the process and execute it.
For those who prefer starting execuition with one newline, the

Verbosity Level

Shuffle Level

Expresses how randomly the execution goes on.

0: (default) use an atom stack for each membrane (atoms are selected in LIFO manner)
1: atoms are selected in some arbitrary manner, not random nor LIFO
2: select atoms and membranes randomly from a membrane
3: select atoms, membranes and rules randomly from a membrane

Graphical Mode (experimental)

In the graphical mode, a window is displayed that visualizes
the content of the atoms and links at the root (top-level) membrane.
Pressing space bar or clicking on 'Go ahead' button
will proceed the computation step by step.
Atoms can be dragged to arbitrary positions so that the graph
can be viewed better.
To terminate the execution, please close the window manually.