https://github.com/rowscript/rowscript
RowScript programming language, making a better browser world
https://github.com/rowscript/rowscript
dependent-types javascript programming-language row-polymorphism typescript
Last synced: 21 days ago
JSON representation
RowScript programming language, making a better browser world
- Host: GitHub
- URL: https://github.com/rowscript/rowscript
- Owner: rowscript
- License: mit
- Created: 2021-07-24T01:46:59.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2025-04-28T07:13:04.000Z (23 days ago)
- Last Synced: 2025-04-30T02:05:16.981Z (21 days ago)
- Topics: dependent-types, javascript, programming-language, row-polymorphism, typescript
- Language: Rust
- Homepage: https://rows.ro
- Size: 1.82 MB
- Stars: 122
- Watchers: 7
- Forks: 1
- Open Issues: 18
-
Metadata Files:
- Readme: .github/README.md
- License: LICENSE
Awesome Lists containing this project
README
![]()
RowScript
[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.[RowScript]: https://rows.ro
## Example
A hello-world example:
```ts
console.log("Hello, RowScript!");
```More complicated example with classes and interfaces:
```ts
class Person {
name: string;dial() {
console.log(this.name)
}
}interface Phonebook {
dial(a: this);
}function dialPerson
(person: P)
with Phonebook
{
person.dial();
}dialPerson(new Person("John Doe"));
```## Installation
```bash
$ 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:
* [x] Proof-of-concept research ideas and a most viable compiler
* [x] Get ready for open-sourcing, targeting the **library writer** user group
* [ ] Get ready for production, targeting the **application writer** (end users) user group## License
MIT