All Projects → polybuildr → balloon-lang

polybuildr / balloon-lang

Licence: MPL-2.0 License
The Balloon programming language and interpreter.

Programming Languages

rust
11053 projects
shell
77523 projects

Projects that are alternatives of or similar to balloon-lang

hedgehog
a toy programming language
Stars: ✭ 24 (+41.18%)
Mutual labels:  interpreter
recurse
re<urse is a declarative language for generating musical patterns
Stars: ✭ 32 (+88.24%)
Mutual labels:  interpreter
asl-interpreter
Example implementation of Arm's Architecture Specification Language (ASL)
Stars: ✭ 78 (+358.82%)
Mutual labels:  interpreter
ciforth
A generic system for creating i86 implementations of the language Forth.
Stars: ✭ 38 (+123.53%)
Mutual labels:  interpreter
BalloonPopup
Forget Android Toast! BalloonPopup displays a round or squared popup and attaches it to a View, like a callout. Uses the Builder pattern for maximum ease. The popup can automatically hide and can persist when the value is updated.
Stars: ✭ 32 (+88.24%)
Mutual labels:  balloon
wendy
Wendy is an compiler / interpreter for WendyScript
Stars: ✭ 14 (-17.65%)
Mutual labels:  interpreter
frobtads
Linux and macOS development tools and text-mode interpreter for TADS adventure games.
Stars: ✭ 41 (+141.18%)
Mutual labels:  interpreter
vbf
A brainfuck interpreter/compiler written in V.
Stars: ✭ 17 (+0%)
Mutual labels:  interpreter
hruby
Embed Ruby in your Haskell program.
Stars: ✭ 22 (+29.41%)
Mutual labels:  interpreter
SandboxJS
Safe eval runtime
Stars: ✭ 18 (+5.88%)
Mutual labels:  interpreter
jrsonnet
Rust implementation of Jsonnet language
Stars: ✭ 164 (+864.71%)
Mutual labels:  interpreter
i8080-Space-Invaders
Intel i8080 Space Invaders Arcade Emulator
Stars: ✭ 19 (+11.76%)
Mutual labels:  interpreter
3bc-lang
Low level language, tiny virtual machine that works on computers and microcontrollers. (Friendly Punched cards)
Stars: ✭ 155 (+811.76%)
Mutual labels:  interpreter
fizzboom
Benchmark to compare async web server + interpreter + web client implementations across various languages
Stars: ✭ 46 (+170.59%)
Mutual labels:  interpreter
RISVM
A low overhead, embeddable bytecode virtual machine in C++
Stars: ✭ 21 (+23.53%)
Mutual labels:  interpreter
ATS-blockchain
⛓️ Blockchain + Smart contracts from scratch
Stars: ✭ 18 (+5.88%)
Mutual labels:  interpreter
awesome-internals
A curated list of awesome resources and learning materials in the field of X internals
Stars: ✭ 78 (+358.82%)
Mutual labels:  interpreter
danube
The Danube Programming Language
Stars: ✭ 33 (+94.12%)
Mutual labels:  interpreter
H-Calc
So, you want to write a DSL interpreter...
Stars: ✭ 21 (+23.53%)
Mutual labels:  interpreter
ocaml-offchain
Fork of WebAssembly reference interpreter with support for generating proofs needed for blockchain verification
Stars: ✭ 42 (+147.06%)
Mutual labels:  interpreter

The Balloon Programming Language

Build Status

This is a very experimental project.

This is an attempt to build a general-purpose interpreted programming language (later with a focus on back-end web programming) that attempts to allow the programmer to choose their own guarantees for things like type safety.

This project is written in Rust. If you're unfamiliar with Rust, you should take a look at the Rust docs.

Prospective contributors, please take a look at the Contributors' Guide.

(Also, for the motivation behind this language, take a look at the introductory blog post, and a more detailed blog post.)

Usage

Balloon is currently not available on crates.io. You will need to build it yourself using Cargo. (You could also download one of the prebuilt binaries from this project's release page.)

usage: balloon [[MODE] FILE]

where MODE is one of:
--run      (default) runs the file
--check    type check the file
--parse    only parse the file, don't run it

Not passing any arguments to balloon will start the REPL.

(There is also an (even more) experimental LLVM backend that is not documented here.)

Code examples

Examples of valid code can be found by looking at tests in the tests/run-pass directory.

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].