mosaic-lang

Crates.iomosaic-lang
lib.rsmosaic-lang
version0.1.0
created_at2025-01-10 21:42:02.312969+00
updated_at2026-01-08 13:32:02.200533+00
descriptionA compiler for Mosaic.
homepage
repositoryhttps://github.com/ljp-projects/mosaic
max_upload_size
id1511779
size1,960,568
Lucas Plumb (ljpprojects)

documentation

README

logo (a black letter m on a blue-green gradient background)

Mosaic

WELCOME TRAVELLER

Mosaic is a simple (?) compiled programming language.

Admission of Responsiblity

I did this. I made this. I wrote it. Thank me later.

(I cannot use the excuse of the common drug known as Caffeine™ because it had no place in the development of Mosaic.)

Dependencies

  • Rust & Cargo
  • ld unless a custom linker is specified, forgot how though
  • Shell

install.sh will install the msc binary system-wide and copy tests/std and tests/core to the appropriate directories for them to be found by the compiler.

Quirks

All operators are right precedent. ALL OF THEM. EVERY SINGLE ONE.

Operator associavity is all over the place (wait, I think the words got mixed up)

The parser will not be forgiving, just try.

I have thrown you a bone and included my implementations of the stdlib and core into tests.

Documentation

Documentation can be found in src/lexer.rs, src/parser.rs, and src/compiler/cranelift

Supported Targets (tested)

  • aarch64-apple-darwin Apple Silicon iMacs, MacBooks, etc…
  • aarch64-unknown-linux-gnu Any Linux distro with an ARM64 chip (worked on a previosu version)
  • x86_64-apple-darwin Intel iMacs, MacBooks, etc… (worked on a previosu version)
  • x86_64-unknown-linux-gnu Windows WSL or any Linux distro with an x86_64 chip. (worked on a previosu version)

With extra configuration, compiling on Windows without WSL may be possible.

Commit count: 45

cargo fmt