Coder Social home page Coder Social logo

mathisto / nga Goto Github PK

View Code? Open in Web Editor NEW

This project forked from 8l/nga

0.0 1.0 0.0 299 KB

Nga is a lightweight, stack based virtual machine.

Home Page: http://forthworks.com/nga

License: Other

Python 2.93% C 34.29% Makefile 2.44% JavaScript 6.11% Pascal 42.67% PHP 4.62% C# 6.93%

nga's Introduction

Nga: a Stack Oriented Virtual Machine

Overview

Nga is a lightweight, stack based virtual machine.

It features:

  • Small core (under 300 lines of C code)
  • Dual stack, MISC instruction set
  • 27 instructions
  • No defined I/O model
  • Extensible design

All code, documentation, and any binaries included are provided under the ISC License unless otherwise noted in the source. Please feel free to take, use, and modify Nga as you see fit.

Development

Development is managed using the Git version control system. Our primary repository is hosted on Github

You can obtain a current copy of the code by doing:

git clone https://github.com/crcx/nga.git

Documentation

Nga comes with a variety of documents describing the language, virtual machine, and implementation details. All of these are in Markdown, with code fencing and tables from GitHub's variant.

Source Files

The main sources are:

File Contains
Nga.md Nga virtual machine
nga.h Headers for Nga
Naje.md Naje: assembler for Nga
Unu.md Unu: extract source from .md

These are extracted into source code, in C. (The tools assume a Unix-style environment).

Additional implementations can be found in the implementations directory.

There are also some other source files that may be of use:

File Contains
EmbedImage.md Tool to export image to C array
Ngita.md Example interface layer
Ngura.md I/O devices for Ngita
Nuance.md A MachineForth to Naje compiler
Tiro.md A disassembler

Getting Help

We have an irc channel on the freenode network. Join #retro on irc.freenode.net. If you ask a question, please be patient. We have large idle times, but the channel is logged (see http://rx-core.org/dev/rancid) and we generally try to answer questions in a reasonable time period.

Please read the documentation before asking questions.

Bug Reports

Bugs can be reported on the Github issue tracker.

nga's People

Contributors

crcx avatar lionkimbro avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.