Intro


The nano virtual machine

Nano is a register based virtual machine.
The goal is to create an easy to use and powerful VM.

The Nano VM core has 64 bit registers for integer and double numbers.
The VM supports multithreading: program parts can run in parallel.

The bytecode for the VM can be compiled by the N compiler or by the assembler.
The N compiler has an inline assembler, so both can be mixed easy.

My blog article about my VM

The main features are:

- types: byte, short int, long int, long long int (64 bit), double and string.
- arrays
- ANSI output functions: text styles, text locating, cursor moving...
- file I/O
- TCP/IP sockets
- virtual memory support for machines without MMU
- portable (100% C)
- graphics server based upon SDL and SDL_gfx, for graphics and GUI
- Runs on older hardware too. Amiga port available ;)
- Threads support: multiple threads of execution can be launched. (1.1.9).
See the hello_thread.na example in the main archive.
Dual license:
- licensed under the GPL
- licensed under the MPL 2.0