Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kcreate/charly-vm
Fully parallel dynamically typed programming language
https://github.com/kcreate/charly-vm
bytecode-interpreter compiler coroutines fiber parallel pointer-tagging programming-language
Last synced: 5 days ago
JSON representation
Fully parallel dynamically typed programming language
- Host: GitHub
- URL: https://github.com/kcreate/charly-vm
- Owner: KCreate
- Created: 2017-05-24T17:19:36.000Z (over 7 years ago)
- Default Branch: rewrite
- Last Pushed: 2022-11-30T12:58:16.000Z (almost 2 years ago)
- Last Synced: 2024-10-25T01:34:06.709Z (12 days ago)
- Topics: bytecode-interpreter, compiler, coroutines, fiber, parallel, pointer-tagging, programming-language
- Language: C++
- Homepage:
- Size: 5.52 MB
- Stars: 94
- Watchers: 10
- Forks: 5
- Open Issues: 52
-
Metadata Files:
- Readme: Readme.md
Awesome Lists containing this project
README
# Charly Programming Language
![Unit Test](https://github.com/KCreate/charly-vm/workflows/Unit%20Test/badge.svg?branch=rewrite)
> Note: This is the rewrite branch of charly-vm.
> Lots of stuff isn't working yet.
> The [main branch](https://github.com/KCreate/charly-vm/tree/main) contains the previous
> fully functional version of charly-vm.This launches a REPL which (at the moment) doesn't do very much.
This launches a REPL which (at the moment) does some cool stuff, but still not a lot.
This launches a REPL which supports some cool stuff, but still not a lot
`./debug.sh [path/to/file.ch]`
# Dependencies
- `sudo apt-get install libboost-all-dev`
# Installation
Follow the steps below to install the `charly` executable on your system.
1. `git clone https://github.com/KCreate/charly-vm charly-vm`
2. `cd charly-vm`
3. `git checkout rewrite`
4. `git submodule init`
5. `git submodule update`
6. Set the `CHARLYVMDIR` environment variable to the project's root folder
- e.g. `export CHARLYVMDIR=/home/user/github/KCreate/charly-vm`
7. `./install.sh`> The last step might request sudo permissions in order to access the relevant system directories.
# Running the unit tests
```
$ ./tests.sh
[ 31%] Built target libcharly
[ 87%] Built target Catch2
[ 89%] Built target Catch2WithMain
[100%] Built target tests
===============================================================================
All tests passed (1422 assertions in 10 test cases)
```