Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mcejp/propel
Propel: the readability of LISP with the expressive power of C. Inspired by Naughty Dog's GOAL and https://github.com/pezipink/asi64
https://github.com/mcejp/propel
dsl racket
Last synced: 13 days ago
JSON representation
Propel: the readability of LISP with the expressive power of C. Inspired by Naughty Dog's GOAL and https://github.com/pezipink/asi64
- Host: GitHub
- URL: https://github.com/mcejp/propel
- Owner: mcejp
- Created: 2022-07-25T16:43:26.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2024-07-15T20:09:47.000Z (7 months ago)
- Last Synced: 2025-01-16T16:22:59.279Z (19 days ago)
- Topics: dsl, racket
- Language: Racket
- Homepage: https://mcejp.github.io/propel/
- Size: 434 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Propel language
Run tests: `PLT_CS_DEBUG=1 raco test test*.rkt`
2048:
`PLT_CS_DEBUG=1 racket main.rkt && g++ -o 2048 out/2048/50-cpp.cpp harness.cpp && ./2048`
Cloc:
`cloc *.rkt forms/*.rkt tests/*.rkt`
### Primitive types
- `void` / `nil`
- `int`### Open questions
- how to represent types in compiler? -> right now it is a mixture of Racket structures and generic _type forms_
- why aren't we using `syntax-parse`? -> because we need to execute code, not merely fill a template
- usage of pairs vs lists for AST structures -> lists get printed more consistently, pairs can get mis-interpreted as list heads.
Should experiment with structs as well.