An open API service indexing awesome lists of open source software.

https://github.com/hexaredecimal/zulu

Functional programming language created for hobby programming on the JVM
https://github.com/hexaredecimal/zulu

compiler interpreter java jdk programming programming-language programming-languages

Last synced: 7 months ago
JSON representation

Functional programming language created for hobby programming on the JVM

Awesome Lists containing this project

README

          



ZULU Programming Language


[![CI](https://github.com/elixir-lang/elixir/workflows/CI/badge.svg?branch=main)](https://app.circleci.com/pipelines/github/corgifist/barley-lang/10/workflows/45b5d058-5c12-49f8-a44a-0a7f76fdf0c9)

## Key features
- functional programming
- function overloading (using clauses)
- pattern matching
- simple syntax (only 16 keywords)
- concurrency (TODO)
- null safety
- tuple support
- built-in optimization (constant folding, propagation, expression simplification and more)
- support for list, hashmap, string, number, atoms
- interop with JVM programs
- go style error handling

Zulu is a interpreted rust-like language based on JVM.

## Example

## Installation

Install the latest release and Java SE 21 and Apache Ant.

```sh
$ git clone git@github.com:hexaredecimal/Zulu.git
$ cd Zulu
$ ant
$ ./install.sh
```
After running these commands `Zulu` should be installed in the `.local/bin` directory.
```sh
$ zulu help
```

## Usage
>> Project
```sh
$ zulu new
Enter project name:
$ cd code
$ nvim main.zulu
```
>> To compile a project just type `zulu` and it will build and run.

## References
- [Barley](https://github.com/corgifist/barley-lang/tree/main) - Forked parent
- [Elixir](https://en.wikipedia.org/wiki/Elixir_(programming_language)) - Inspiration
- [Rust](https://en.wikipedia.org/wiki/Rust_(programming_language)) - Inspiration
- [Standard_ML](https://en.wikipedia.org/wiki/Standard_ML) - Inspiration
- [Go](https://en.wikipedia.org/wiki/Go_(programming_language)) - Inspiration
- [Java](https://en.wikipedia.org/wiki/Java_(programming_language)) - Compiler and FFI implementations