Skip to content

The official compiler for the Hexagn programming language.

License

Notifications You must be signed in to change notification settings

GameBuilder202/Hexagn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hexagn: Higher-up for URCL

A simple compiler capable of compiling programs written in the Hexagn programming language to URCL. The Hexagn language with its C-like syntax allows anyone to easily understand it.

Hexagn banner

Preview of the Hexagn's logo and syntax; Outputting "Hello, GitHub!"

Prerequisites

If you are running a Windows NT system, WSL (Windows Subsystem for Linux) is recommended. Although it should work in NT systems, it is not tested.
However, if you are using MacOS or (any) Linux (distro), you can continue the installation process.

It is recommended to install the Rust programming language via (Rustup)

  • Rust programming language
  • git or gh (Github CLI)
    * not required if you download the repository via Web or Desktop

Installation (unstable)

Currently, there are no stable releases of the compiler, cloning the repository directly will give you the in-development or unstable version. Proceed if you are willing to face consequences.

CLONING, BUILDING AND INSTALLING

  1. Clone the repository via any option in the "<> Code" tab, which can be found on the top of the GitHub repository's page.
  2. Run the following command in the ./Hexagn/ directory (The cloned repository, replace if you cloned under a different name).
$ cargo build --release; cargo install --path .
  1. The compiler should be compiled as an executable inside the ./target/release/ directory and installed to your Cargo binaries.
  2. You should now be able to use the command hexagn anywhere, as long it is within the same shell.

Executable details

* <> Denotes required, [] Denotes optional.

hexagn <INPUT FILE> [FLAGS]

BUILT-IN COMMANDS

-h, --help: Highlights available options and parametres.

BUILT-IN FLAGS

-o <OUTPUT FILE>: Overwrites which output file to compile to. (Default: out.urcl)
-l <LIBRARY PATH>: Includes library path in compiling phase.
-O <LEVEL>: Selects a specific optimisation level.
-g: Enables debug symbols.
--no-main: Removes entry-point on compiled file, Rendering the code as a library.

Contributing

You can support the project by contributing to it via forking the repository, commit changes and opening up a pull request (Instructions on how to fork it can be read here), leaving a feedback or reporting an issue.

After a pull request, please be patient for maintainers to review and manage conflicts.

Contributing to this repository renders you as a collaborator of this compiler repository, not the Hexagn project.

Legal notice

The Hexagn compiler repository owned by GameBuilder202, Hosted at GitHub is licensed under the Apache License, Version 2.0.

The name "Hexagn" and the "Hexagn Logo" are trademarks of The Hexagn Project. Exclusive permission granted, SECTION-3: PERMITS of the THP Trademark Policy.

About

The official compiler for the Hexagn programming language.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Languages