All Projects → mirimmad → zeta-lang

mirimmad / zeta-lang

Licence: MIT License
The Zeta Programming langauge

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to zeta-lang

fakejava
嵌入式脚本语言 Lightweight embedded scripting language
Stars: ✭ 41 (+20.59%)
Mutual labels:  interpreter
samlang
Sam's Programming Language
Stars: ✭ 22 (-35.29%)
Mutual labels:  interpreter
cosy
A simple and pleasant programming language.
Stars: ✭ 21 (-38.24%)
Mutual labels:  interpreter
oxide-lang
Oxide Programming Language, an interpreted scripting language with a Rust influenced syntax.
Stars: ✭ 106 (+211.76%)
Mutual labels:  interpreter
js-slang
Implementations of the Source languages, which are small sublanguages of JavaScript designed for SICP JS
Stars: ✭ 41 (+20.59%)
Mutual labels:  interpreter
boba-js
Toy programming language. Now being reimplemented in Rust: https://github.com/poteto/monkers
Stars: ✭ 22 (-35.29%)
Mutual labels:  interpreter
snap
An embeddable scripting language inspired by Lua and JavaScript.
Stars: ✭ 32 (-5.88%)
Mutual labels:  interpreter
retro12
This repo is retired. See http://forthworks.com:8000/
Stars: ✭ 18 (-47.06%)
Mutual labels:  interpreter
esoo
Like the Programming Languages Zoo but with esoteric languages.
Stars: ✭ 18 (-47.06%)
Mutual labels:  interpreter
go-jdk
Run JVM-based code in Go efficiently
Stars: ✭ 61 (+79.41%)
Mutual labels:  interpreter
dragon
🐲 Object orientated, dynamically typed, interpreted programming language inspired by Python and Javascript.
Stars: ✭ 14 (-58.82%)
Mutual labels:  interpreter
lust
A parser, compiler, and virtual machine evaluator for a minimal subset of Lua; written from scratch in Rust.
Stars: ✭ 120 (+252.94%)
Mutual labels:  interpreter
js-ziju
Compile javascript to LLVM IR, x86 assembly and self interpreting
Stars: ✭ 112 (+229.41%)
Mutual labels:  interpreter
tranquility
Tranquility is an in-development programming language intended to replace Solidity
Stars: ✭ 17 (-50%)
Mutual labels:  interpreter
monkers
Bytecode compiler and VM for the Monkeylang language, written in Rust
Stars: ✭ 34 (+0%)
Mutual labels:  interpreter
computation-py
Python implementation for Understanding Computation book.
Stars: ✭ 22 (-35.29%)
Mutual labels:  interpreter
free-monads-functional-web-apps
Delving into Free Monads and using them to write pure functional web applications
Stars: ✭ 18 (-47.06%)
Mutual labels:  interpreter
Square
The Square Programming Language. A tiny programming language under 200kb.
Stars: ✭ 23 (-32.35%)
Mutual labels:  interpreter
hopes
Higher Order Prolog with Extensional Semantics
Stars: ✭ 43 (+26.47%)
Mutual labels:  interpreter
chickadee
Chickadee is a minimal programming language implemented in TypeScript for teaching purposes.
Stars: ✭ 13 (-61.76%)
Mutual labels:  interpreter

Zeta Programming language

Zeta 0.1 is an imperative programming language made for educational purposes that supports Object Orientation and closures among other modern features.

  • Zeta is dynamically typed
  • Zeta has tight lexical scoping

How code looks like

// A counter
fn makeCounter() {
	let count = 0;
	fn increment() {
	count = count + 1;
	print count;
	}
	return increment;
}
let counter = makeCounter();
counter(); // prints 1
counter(); // prints 2
counter(); // prints 3

Installation

The out directory contains class files with Zeta as the main class.

buildlinux.sh is a loose script written for Linux systems :

  • $ git clone https://github.com/mirimmad/zeta-lang.git
  • $ cd zeta-lang
  • $ [sudo] sh buildlinux.sh
  • $ zeta or $ zeta script.zt

To install on Windows:

  • git clone https://github.com/mirimmad/zeta-lang.git
  • cd zeta-lang
  • Run installwindows.bat
  • zeta or zeta script.zt

To remove on Windows:

  • Run removewindows.bat

TO-DO

  • Library Support - Zeta currently does not support external libraries.
  • Replacement of Tree Walking interpreter by a VM.
  • Optimizations .

Contact

Twitter

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].