Skip to content

MetaForge is a cutting-edge meta-language positioned between assembly and C, offering a streamlined syntax that bridges low-level efficiency with higher-level programmability.

License

Notifications You must be signed in to change notification settings

seregonwar/MetaForge

Repository files navigation

MetaForge Programming Language

MetaForge is a low-level meta-programming language that bridges the gap between assembly and C, while integrating support for Python, C, and C++ libraries. Designed for system-level programming and advanced memory manipulation, MetaForge offers a unique approach to multi-language interoperability and high-performance computing.


Index

  1. Introduction
  2. Key Features
  3. Language Overview
  4. How to Compile
  5. Installation
  6. Examples
  7. Roadmap
  8. Contributing
  9. FAQ
  10. License

Introduction

MetaForge is a low-level meta-programming language that bridges the gap between assembly and C, while integrating support for Python, C, and C++ libraries. Designed for system-level programming and advanced memory manipulation, MetaForge offers a unique approach to multi-language interoperability and high-performance computing.


what MetaForge is designed for

MetaForge is designed to facilitate interoperability between low, medium and high level languages. It is designed to interact most effectively with the operating system on which it works and for reverse engineering.


Key Features

  • Low-Level Access: Positioned between assembly and C, offering direct communication with system resources.
  • Cross-Language Integration: Supports Python, C, and C++ libraries seamlessly.
  • Custom Syntax: Combines simplicity with flexibility, tailored for developers seeking control over memory, cryptography, and pattern matching.
  • Extensibility: MetaForge is designed to evolve, with planned support for web systems and additional language integrations.

Language Overview

A detailed overview of MetaForge syntax, including statements, advanced types, pattern matching, and error handling.

Explore how MetaForge manages memory allocation, deallocation, and pointers.

Built-in cryptographic tools and their usage.

Understand control structures like loops, conditionals, and error handling.

Learn about generics, pattern matching, list comprehension, and lambda functions.


How to Compile

MetaForge programs are compiled using the official MetaForge Compiler (MFC).

  1. Visit the MetaForge Compiler Repository to download or clone the compiler source code.
  2. Follow the instructions in the readme.md of the compiler repository to set up the environment.
  3. Compile your MetaForge programs using the following command structure:
    python src/compile_metaforge.py <source_file> -o <output_file> [options]
    Example:
    python src/compile_metaforge.py examples/hello_world.mf -o build/hello_world.exe --platform windows --arch x64 -v

For detailed options and configuration, refer to the CLI Commands documentation.


Installation

MetaForge requires the following dependencies:

  1. Python (3.x) for integration scripts.
  2. C/C++ Toolchain for compilation and linking.
  3. Custom MetaForge CLI (provided in the release package).

Steps

  1. Clone the repository:
    git clone https://github.com/seregonwar/metaforge.git
    cd metaforge
  2. Build the compiler:
    make
  3. Run your first MetaForge program:
    ./metaforge my_program.mf

Examples

Explore more in the Examples and Templates documentation or visit the examples folder.

Hello World

fn main() -> void {
    print("Hello, MetaForge!");
}

Memory Allocation

fn allocate_memory() -> ptr {
    let buffer = alloc 1024;
    ret buffer;
}

Cryptographic Hashing

fn compute_hash() -> hash {
    let data = "important data";
    let hashed = hash(data);
    ret hashed;
}

Roadmap

For planned features and future development, check the Design Philosophy and Roadmap document.


Contributing

We welcome contributions! Please check the Contributing Guidelines for details on our coding standards and submission process.


FAQ

For common questions and answers, refer to the FAQ.


License

License free.


Developed with passion by SeregonWar
Explore, Extend, and Forge the Future!

About

MetaForge is a cutting-edge meta-language positioned between assembly and C, offering a streamlined syntax that bridges low-level efficiency with higher-level programmability.

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published