~maelkum/viuavm

Select optional installations

The --opt option to the entry point script will set everything up.
Document the options taken by the entry point program
Fix default target of help and --help options

They were used for viua-overview (which did not exist). Now they just
show the man page of the entry point program.
Add man page for the toolchain's entry point script

It is a simple page that just directs the user to other manual pages.
Nothing fancy.
Optional installations

Optional installations are useful when you want to keep several
different versions of Viua installed. These installations are akin to
the "switches" created by OCaml's opam tool ie, they contain an
isolated Viua environment that is independent from the global one.
Add help mode to the entry point script

The following command displays help screen for viua-xyz:

    $ viua help xyz

Passing just the --help option displays help screen for the entry point
script itself:

    $ viua --help
Update installation procedure

To install Viua use:

    $ make install

To erase it from your system:

    $ make erase

The entry point script (acting as a proxy for other viua-xyz tools) will
be installed in $(PREFIX)/bin. The tools' executables will be installed
in $(PREFIX)/lib/viua/viua-core. Why not install them in $(PREFIX)/bin?

To avoid cluttering up PATH with several tools whose name begins with
the same prefix. The entry point script will "bundle" them into a single
name anyway, but in a more civilised manner. See what git(1) does with
its multitude of tools.
Add --help option to all core tools

They forward to man(1), but being able to use "foo --help" is
convenient.
Add README for man(1) pages

Just to remind myself about the preferred way to render them.
Add man(1) page for the VM's ISA

The page is INCOMPLETE and a draft. Not all instructions and
pseudoinstructions are explained, no built-in data types are described,
and no mention is made of the execution model.

This is a work in progress, and progress on this work is sorely needed.
Update man(1) page for viua-asm

The content was updated to include Web addresses of the repository and
main Viua VM web site. Some markers were also replaced to better conform
to the recommended man(1) style (at least to my understanding of what is
written in man(1)'s own manual).
Fix include ordering rules

The <experimental/memory> and <linenoise/*.h> were being grouped with
POSIX and C headers, and this is not what I want.
Format source code
Basic ad-hoc evaluation capabilities in REPL

REPL is able to evaluate simple instructions ie, those which do not
refer to strings table. Pseudoinstructions are not supported yet, but
all moves, addis, muls, etc. should work OK.

Ad-hoc evaluation does not move ip of the executed process. The
instructions are executed from an ephemeral storage, but have lasting
effects on the frame in which they are executed.

This, in effect, allows tinkering with registers of suspended actors. A
more simple use for this functionality is to try out various
instructions and test their behaviour.
Move stages of source code translation to a separate module

Not only the assembler needs them, but also REPL. They should share the
common code.
Describe what happens to args and standard streams

This is useful information. Especially the part about standard error
stream.
Keep formatting of man(1) pages consistent

See groff(1), groff_man(7), man(1), and man-pages(7) for sources of
inspiration and guidelines directing the look of the manuals for Viua
VM.
Simple man(1) page for viua-vm(1)
Basic man(1) page for viua-asm(1)
Remove dead logs
Next