https://github.com/halfdan/ninjac
https://github.com/halfdan/ninjac
Last synced: 5 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/halfdan/ninjac
- Owner: halfdan
- Created: 2011-03-18T11:33:13.000Z (about 15 years ago)
- Default Branch: master
- Last Pushed: 2012-03-13T00:32:12.000Z (about 14 years ago)
- Last Synced: 2024-12-28T12:16:17.848Z (about 1 year ago)
- Language: C
- Homepage: http://ninja-lang.de
- Size: 445 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
README
======
Table of Contents
-----------------
* Introduction
* Language
* Features
* Authors
Introduction
------------
This project has been developed at the University of Applied Sciences Gießen-Friedberg (Technical University Mittelhessen) between October 2010 and February 2011.
The goal was to implement a compiler for the object oriented language "Ninja" as part of the masters course "Compiler Engineering 2". You can find more details about the language and the course on the course [related website] or our german [FAQ] for the language.
Language
--------
Ninja is an object oriented language. It was invented by Professor Hellwig Geisse and is currently used in the bachelors course "Konzepte Systemnaher Programmierung".
**Note:** The language is still in development and there is no written language specification available. The here available implementation is just one interpretation of the language.
Features
--------
Our compiler implementation has the following features:
* Support for multiple files
* Standard library for some of the core classes (Object, Integer, Character, Boolean)
* Inline assembler using the special syntax: asm {% pushc 2 %}
* Methods and field inside the same class can have the same name
* Compiler is being tested against ~100 test cases
Authors
-------
Fabian Müller
Fabian Becker
[related website]: http://homepages.fh-giessen.de/~hg53/cb2-ws1011/index.html
[FAQ]: http://faq.ninja-lang.de