2022-01-20 21:55:17 +01:00
|
|
|
# nondescript
|
2022-01-21 01:51:55 +01:00
|
|
|
|
2022-12-03 20:21:18 +01:00
|
|
|
Nondescript is a toy programming language. Some of its features are:
|
2022-01-21 01:51:55 +01:00
|
|
|
|
2022-12-03 14:28:09 +01:00
|
|
|
- Dynamic typing, bytecode interpreter
|
2022-12-02 15:45:34 +01:00
|
|
|
- Almost everything is an expression
|
2022-12-03 20:21:18 +01:00
|
|
|
- New, rewritten 2 pass compiler (parsing, emitting)
|
2022-12-03 14:28:09 +01:00
|
|
|
- Syntax tries to balance sugar with consistency
|
2022-12-03 20:14:20 +01:00
|
|
|
|
|
|
|
See [docs/reference.md](docs/reference.md) to learn more about the language.
|
2022-01-21 01:51:55 +01:00
|
|
|
|
2022-12-03 20:21:18 +01:00
|
|
|
If that document is not enough, the following folders in the source tree, will have more examples:
|
2022-12-03 14:28:09 +01:00
|
|
|
|
2022-02-03 05:13:02 +01:00
|
|
|
- benchmarks/
|
|
|
|
- examples/
|
|
|
|
- tests/
|
2022-01-27 04:18:31 +01:00
|
|
|
|
|
|
|
## Building
|
|
|
|
|
|
|
|
Requirements:
|
2022-12-03 20:11:45 +01:00
|
|
|
- nim (1.6.10 tested) and nimble (recommended way to install is choosenim)
|
2022-12-02 15:45:34 +01:00
|
|
|
- c compiler (gcc tested)
|
2022-01-27 04:18:31 +01:00
|
|
|
|
|
|
|
The 4 steps to a REPL:
|
|
|
|
```
|
|
|
|
git clone https://github.com/prod2/nondescript
|
|
|
|
cd nondescript
|
2022-02-03 05:13:02 +01:00
|
|
|
nimble build
|
|
|
|
bin/nds
|
2022-01-27 04:18:31 +01:00
|
|
|
```
|