https://github.com/megaing/f
An Implementation of F by @ac1235 (https://ac1235.github.io/f.html)
https://github.com/megaing/f
f language python-3
Last synced: about 1 year ago
JSON representation
An Implementation of F by @ac1235 (https://ac1235.github.io/f.html)
- Host: GitHub
- URL: https://github.com/megaing/f
- Owner: MegaIng
- License: mit
- Created: 2018-09-29T06:38:55.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2019-03-10T23:02:50.000Z (about 7 years ago)
- Last Synced: 2025-03-25T15:11:43.134Z (about 1 year ago)
- Topics: f, language, python-3
- Language: Python
- Homepage:
- Size: 53.7 KB
- Stars: 7
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# F
An Implementation of F by @ac1235 (https://ac1235.github.io/f.html)
## Implementation Details
* Syntax completely like in the documentation by @ac1235 (All of his example can be parsed and executed)
* Numbers are always the `Decimal` type from python.
* Strings have (almost) C-like escaping and are written between `"`
* Variadic Value Syntax, allowing for List unpacking (`...()`)
## How to use
* install the latest version of [python 3 (at least 3.7)](https://www.python.org/downloads/)
* execute `pip install lark-parser`
### `f.py`
`f [-h] [-m {a,i,c}] [program] argv*`
* `program` selects the file to be run. If not present, will start a REPL.
* `-m`/`--mode` selects a mode on ho to handle the input
* `a`/`ast` chooses the to ast compiler. The default
* `i`/`interpreter` chooses the interpreter. The slowest option. Should get extended with a debugger
* `c`/`compiler` chooses the to C compiler. Can not run a REPL or take argvs, but generates a executable (currently only on windows correctly)