Skip to content

Altanis/polyscript

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Polyscript

Polyscript is a Rust-like toy language with static typing, reference counting, and an LLVM AOT compiler.


Documentation Structure

NOTE: The documentation for this language is incomplete.

The language specification is divided into several parts:

  1. Syntax and Basics: Variables, primitive types, operators, and basic syntax.
  2. Control Flow: if-else expressions, for and while loops.
  3. Compound Types: Defining struct and enum types.
  4. Functions and Closures: Defining and calling functions, differentiating functions from closures.
  5. Generics: Writing code that works with multiple types.
  6. Implementations and Traits: Defining behavior on types and describing types via shared behavior.
  7. Modules: Code organization using import and export.
  8. Standard Library: Extra features provided by the native standard library.
  9. Memory Model: A deep dive into Polyscript's stack, heap, and reference counting system.
  10. Compiler Internals: An explanation of the compiler's architecture and compilation pipeline.

Usage

After compiling the compiler into an executable ./polyscriptcc, running ./polyscriptcc --help will give further instructions as to how to compile a Polyscript program. The native standard library is provided here.

About

A Rust-like toy language with reference counting and an LLVM AOT compiler.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published