rowscript / rowscript

RowScript programming language, making a better browser world
https://rows.ro
MIT License
110 stars 1 forks source link
dependent-types javascript programming-language row-polymorphism typescript

banner
RowScript

Build

RowScript is a robustly-typed functional language that compiles to efficient and reliable JavaScript. It has a user-friendly syntax like TypeScript, and many advanced features like typeclass, effect system, and static reflection.

Example

A hello-world example:

console.log("Hello, RowScript!");

More complicated example with classes and interfaces:

class Person {
    name: string;

    dial() {
        console.log(this.name)
    }
}

interface Phonebook {
    dial(a: this);
}

function dialPerson<P>(person: P)
where P instanceof Phonebook
{
    person.dial();
}

dialPerson(new Person("John Doe"));

Installation

$ pnpm install -D rowscript

Oh, npm is okay too.

Development status

This project is at early stage and under active development, syntax and APIs are expected to change.

We separate our development into following phases:

License

MIT