Skip to content

A modern, systems programming language focused on clarity and efficiency

License

Notifications You must be signed in to change notification settings

nifemibosun/mini-lang

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mini-lang

A modern, systems programming language focused on clarity and efficiency

Side note:

To clarify the name "mini" does not mean it aims to be a toy language

Installation

Prerequisites

To build and run Mini, you need to have Rust and its package manager, Cargo, installed on your system.

If you don't have Rust installed, you can install it via rustup by running the following command in your terminal:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Building from Source

Clone the repository:

git clone https://github.com/nifemibosun/mini-lang.git

cd mini-lang

Build the project:

cargo build --release

This will compile the project and create an optimized executable in the target/release directory.

Usage

Once compiled, you can use it to run mini source from your terminal.

so create a mini source call it hello.mini and paste in this code:

func mini() {
    println("Hello, Mini\n");
}

Compiling or Running a File

To execute a mini source file:

# This compiles the file and output a .exe
.\target\release\mini comp hello.mini
# This compiles the file and output a .exe, then it executes the .exe
.\target\release\mini run hello.mini

Help and Version

To see the usage instructions and available flags:

mini --help
# or
mini -h

To display the current version of Mini:

mini --version
# or
mini -v

Project Status

Mini is currently in its very early stages.

Contributing

Contributions are very much welcomed(check the contribution guide for help on how to do so)!

About

A modern, systems programming language focused on clarity and efficiency

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages