Skip to content
This repository has been archived by the owner on Apr 27, 2023. It is now read-only.

TheAwiteb/ocypode-lang

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

89 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ocypode

A dynamic programming language written in Rust. WIP.

CI crate-publication
crate license
book

What is Ocypode?

Ocypode is a dynamically typed language. It is an interpreted language, the interpreter written in Rust. Ocypode is object-oriented, also it has a main function that is the entry point of the program. The grammar is written in Pest is a parser generator for Rust. you can find the grammar file here: grammar.pest.

Why Ocypode?

In general, Ocypode is for educational purposes. I am learning how to write a programming language, and Ocypode is the result of that. Also, Ocypode is good for how want to write a programming language in Rust.

Documentation

Ocypode will have a book soon. For now, you can read the tests or the grammar file.

How to run Ocypode?

You can install the Ocypode interpreter/REPL by running this command:

cargo install ocypode-lang

Then you can run the REPL by running this command: [WIP]

ocypode

Or you can run a file by running this command:

ocypode <file>

Or build it from the source

You can build Ocypode from the source by running these commands:

git clone https://github.com/TheAwiteb/ocypode-lang.git
cd ocypode
cargo build --release

Then you can find the binary in the target/release directory.

How to contribute?

The contribution is welcome. You can contribute by reporting bugs, fixing bugs, adding features, or improving documentation. You can also contribute by translating the documentation into other languages.

License

Ocypode is licensed under the GPLv3 license. You can find the license file here: LICENSE.