A ML-Inspired programming language that transpiles to Typescript

Last update: Jun 11, 2022

Hazure

Programming language that compiles to Typescript!

Note: Everything in this project can be changed at anytime! (I'm still finding out what work best for lots of thing) if you have an idea, feel free to create an issues about it, or even create a PR! (I'd be very happy)

Prerequistie

  • node/deno for running Typescript
  • Rust (if you're going to build from source)
  • (Optional) if you use Vim, you can get the syntax highlighting here

Installing

Currently there is only a build script on linux:

$ curl -s https://raw.githubusercontent.com/azur1s/hazure/master/build.sh | bash -s
...
$ hzc --help

or if you want to build in debug mode:

curl -s https://raw.githubusercontent.com/azur1s/hazure/master/build.sh | bash -s d
...
$ hzc --help

Contributing

Found a bug? Found a better way to do something? Make a pull request or tell me in the issues tab! Anything contributions helps :D

Steps to build:

  1. Clone this repo https://github.com/azur1s/hazure.git
  2. Build executable cargo build
  3. Try running some examples! hzc compile path/to/file.hz

License

Hazure is licensed under both MIT license and Apache License

GitHub

https://github.com/azur1s/hazure
You might also like...

A stack based interpreted programming language.

Nightmare Nightmare is a dynamically-typed, procedural programming language that aims to be fast & simple. let user = input() as Int; print("You were

Nov 12, 2021

lints and suggestions for the nix programming language

statix Lints and suggestions for the Nix programming language. statix highlights antipatterns in Nix code. statix --fix can fix several such occurrenc

Jun 24, 2022

Gecko is a high-level, general-purpose programming language built on top of the LLVM project.

 Gecko is a high-level, general-purpose programming language built on top of the LLVM project.

Gecko is a high-level, general-purpose programming language built on top of the LLVM project. Gecko Technology & principles Gecko is a general-purpose

Jun 13, 2022

This repository contains the source of "The Rust Programming Language" book.

The Rust Programming Language This repository contains the source of "The Rust Programming Language" book. The book is available in dead-tree form fro

Jun 19, 2022

A short exercise to introduce people to the Rust programming language

Searching primes by brute force This code is ment to be an exercice to teach rust and give a first impression on how to work with the language during

Dec 2, 2021

The Rust Programming Language, Chapter 8, Exercise 1

Rust Common Collections - Exercise 1 In the book The Rust Programming Language by Steve Klabnik and Carol Nichols, chapter 8 - Common Collections - pr

Dec 24, 2021

clone of grep cli written in Rust. From Chapter 12 of the Rust Programming Language book

minigrep is a clone of the grep cli in rust Minigrep will find a query string in a file. To test it out, clone the project and run cargo run body poem

Dec 14, 2021

The Rust Compiler Collection is a collection of compilers for various languages, written with The Rust Programming Language.

rcc The Rust Compiler Collection is a collection of compilers for various languages, written with The Rust Programming Language. Compilers Language Co

Jan 17, 2022

The Ribbon Programming Language, made in Rust.

The Ribbon Programming Language (WIP) This language is designed to be quick to write and is heavily inspired by Rust, which is also the language it wa

Jan 10, 2022
Comments
  • 1. Optional Hole (`_`) in piping

    current piping syntax

    fun main: int = do
        "Hello, World!\n"
        |> @write(_);
        return 69;
    end;
    

    The _ (Hole) is required by default, maybe it will be a quality-of-life improvement if we can make it optional, something like on default it will assume _ is on the first one, for example:

    (assuming foo() takes 2 argument)

    "Hello, World!\n"
    |> foo(_, 1);
    

    is the same as

    "Hello, World!\n"
    |> foo(1);
    

    This should be pretty easy and might improve the quality-of-life by a lot.

    Reviewed by azur1s at 2022-03-13 10:12
  • 2. Diagnostics only report one error

    The diagnostics stuff can only report one error (not because the diagnostics is bad, I built it so that it can handle multiple error already) and isn't really helpful when there is multiple error.

    This is due to the early returning error in stuff, when it founds the error (e.x. in lowering) it early returns and never continue. I think the fix is to have an Error type and when found an error, return the Error type and continue doing its stuff.

    Reviewed by azur1s at 2022-03-13 09:25
A repository for showcasing my knowledge of the Rust programming language, and continuing to learn the language.

Learning Rust I started learning the Rust programming language before using GitHub, but increased its usage afterwards. I have found it to be a fast a

Nov 25, 2021
Nyah is a programming language runtime built for high performance and comes with a scripting language.

?? Nyah ( Unfinished ) Nyah is a programming language runtime built for high performance and comes with a scripting language. ??️ Status Nyah is not c

Mar 6, 2022
lelang programming language is a toy language based on LLVM.

lelang leang是一门使用Rust编写,基于LLVM(inkwell llvm safe binding library)实现的编程语言,起初作为课程实验项目,现在为个人长期维护项目。 Target Features 支持8至64位的整形类型和32/64位浮点 基本的函数定义,调用,声明外部

May 26, 2022
High concurrency, RealTime, In-memory storage inspired by erlang mnesia
High concurrency, RealTime, In-memory storage inspired by erlang mnesia

DarkBird is a Document oriented, high concurrency in-memory Storage, also persist data to disk to avoid loss any data The darkbird provides the follow

Jun 16, 2022
Nixt is an interpreted programming language written in Rust

Nixt Nixt is an interpreted lisp inspired programming language written in Rust Index About Examples Installation Build About Nixt goal is to provide a

Apr 16, 2022
A programming language somewhat resembling cellular processes.

cytosol An embeddable programming language somewhat resembling cellular processes. State of the implementation tokenising parsing semantic analysis an

Jun 15, 2022
Orion lang is a lispy programming language that is strongly and statically typed.
Orion lang is a lispy programming language that is strongly and statically typed.

Orion Orion is a lisp inspired statically typed programming language written in Rust Install To install orion you can either: Download binary from the

Jun 15, 2022
Mote is a systems-programming language designed to be practical, performant, and simple.
Mote is a systems-programming language designed to be practical, performant, and simple.

Mote NOTE: this following lists the goals for what Mote is supposed to be. It does not promise that any of the features here will be accomplished or a

Jul 28, 2021
a function programming language for real world applications made in rust

a function programming language for real world applications made in rust

Jun 12, 2022
Rust implementation of µKanren, a featherweight relational programming language.

µKanren-rs This is a Rust implementation of µKanren, a featherweight relational programming language. See the original Scheme implementation here for

May 28, 2022