An open API service indexing awesome lists of open source software.

https://github.com/thrushlang/syntax

The meta syntax, which tries to be understood and compiled by the Thrush compiler.
https://github.com/thrushlang/syntax

compiler-design programming-language-design syntax

Last synced: about 2 months ago
JSON representation

The meta syntax, which tries to be understood and compiled by the Thrush compiler.

Awesome Lists containing this project

README

          

logo

# Thrush Programming Language | Syntax

> [!CAUTION]
> Most of the syntax in this repository is outdated. A new website with detailed documentation is on the way. Please be patient.

> [!WARNING]
> The compiler updates faster than this repository. The syntax may be outdated and non-idiomatic.

This repository contains detailed and general information about the syntax; it is not documentation as such; it is intended to guide you in developing the compiler and the language.

## Content

- ``assembler/`` Information about pure assembler-type functions and assembler values ​​treated as conventional expressions.
- ``attributes/`` Attributes are compile-time code generation modifiers that can modify the behavior of code at runtime.
- ``builtins`` Built-in functions are functions that are part of the compiler and the language; they are like intrinsic to programming languages.
- ``casts/`` Compile-time type transformation.
- ``structure`` Traditional structures in programming languages.
- ``constants/`` Traditional constants.
- ``enum/`` Traditional enum.
- ``loops/`` Traditional loops in programming languages, such as `for`, `while`, and `loop {}` like Rust.

- ``types/`` Native and primitive types of language.
- ``variables/`` Types of variables and their mutation.

- ``deref/`` High-level pointer dereferencing system ``mut T`` and raw pointers ``ptr[T]``, or ``ptr``.
- ``lli/`` Low-level instructions, explicit memory allocation, overwriting of memory values, loading memory, and calculating memory indexes into pointers.