https://github.com/lighghteeloo/lala-lang
[WIP] An expression based data notation, aimed at transpiling itself to any cascaded data notation.
https://github.com/lighghteeloo/lala-lang
lala language notation s-expression
Last synced: 10 days ago
JSON representation
[WIP] An expression based data notation, aimed at transpiling itself to any cascaded data notation.
- Host: GitHub
- URL: https://github.com/lighghteeloo/lala-lang
- Owner: LighghtEeloo
- License: mit
- Created: 2021-07-27T23:39:59.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2022-06-09T00:11:20.000Z (almost 3 years ago)
- Last Synced: 2025-04-22T15:57:54.195Z (13 days ago)
- Topics: lala, language, notation, s-expression
- Language: Rust
- Homepage:
- Size: 205 KB
- Stars: 38
- Watchers: 2
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Lala
An expression oriented data notation, aimed at transpiling itself to any cascaded data notation.Lala is separated into three components: `Nana`, `Lala`, and `Dada`.
## First Glance
[Nana CheatSheet](nana/CheatSheet.md)
## Language Proposals
- Nana: [nana-lang proposal](nana/Proposal.md).
- Lala: [lala-lang proposal](lala/Proposal.md).
- Dada: tbd.## Roadmap
### Nana
Nana, a proof-of-concept language, will first be implemented, along with the following key concepts:
1. Block
- Obstruction
- Projection
- Exposure
2. Value Space
- Literal
- Application
3. Binder Space
- Abstraction
- Pattern Language
4. Control Flow
- Pattern Matching### Lala
Nana++.
1. the order of computation embedded in data structure
2. type system
3. a standard library### Dada
A (fake) package manager in pure lala, designed more as a structural convention than a heavy building system.
## Current Progress
Using [lalrpop](https://github.com/lalrpop/lalrpop) as nana/lala's parser to Rust.Currently dealing with symbol resolution.
Also here is a [todo list](Todo.md).