Skip to content
View Kaida-Amethyst's full-sized avatar

Block or report Kaida-Amethyst

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don't include any personal information such as legal names or email addresses. Markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
Kaida-Amethyst/README.md

👋 Hi there! I'm Kaida-Amethyst (紫月) ( •̀ ω •́ )y

A Core Dev for the MoonBit Language at IDEA Research Institute in China! My passion lies in Programming Language Theory (PLT) 💻, and I'm always excited to dive into the low-level details of compilers and runtime systems.

🎓 My Journey

I hold a Master's degree in Computer Science from NCSU (North Carolina State University) 🇺🇸. Go Wolfpack! 🐺

📧 Let's Connect

Feel free to reach out via email: [email protected]

🛠️ Languages I Love & Use

My daily driver is MoonBit, but I'm also proficient in: C/C++RustHaskellSchemeZig 🚀


🚀 Featured Projects - The MoonBit Compiler Ecosystem

Here are some of the major projects I'm actively working on, primarily focused on building out the MoonBit ecosystem for low-level programming and tooling!

Project Description Link
llvm.mbt MoonBit bindings for LLVM. It offers a C++-like interface but leverages MoonBit's robust type system for a much-improved, safer, and easier compiler development experience. moonbitlang/llvm.mbt
MoonLLVM A reimplementation of LLVM written entirely in MoonBit. It generates LLVM IR that the official LLVM toolchain can recognize and compile. Interfaces are highly consistent with llvm.mbt. 🔥 Fast! It runs ~300% faster than llvm.mbt for IR generation. moonbitlang/MoonLLVM
mbtcc A C compiler written in MoonBit! It uses either MoonLLVM or llvm.mbt to compile C code down to LLVM IR. moonbitlang/mbtcc
python.mbt This library allows you to use the vast Python ecosystem within the MoonBit language! Great for data plotting, scientific computing, and more! 📊 moonbitlang/python.mbt
openblas.mbt MoonBit bindings for OpenBLAS, enabling high-performance matrix computations and other linear algebra tasks. moonbit-community/openblas.mbt
math.mbt A foundational numerical computation library implemented in MoonBit. Algorithms are sourced and rigorously validated against implementations from glibc-libm, musl-libm, cepehs, and c++boost, with strict ULP (Unit in the Last Place) checks to ensure accuracy. ✅ kaida-amethyst/math.mbt

✨ Other Handy Libraries

Project Description Link
either.mbt An implementation of the Either type for MoonBit, drawing inspiration from the interfaces in Rust and Haskell for robust error handling. moonbit-community/either.mbt
path.mbt A path manipulation library similar to Rust's std::path, making it easy to work with file system paths. moonbit-community/path.mbt

🔮 What's Next? (Coming Soon!)

I'm currently planning and preparing the following exciting tasks:

  • godot.mbt | Using MoonBit to interface with the Godot game engine, bringing game development capabilities to MoonBit! 🎮 | moonbit-community/godot.mbt
  • sdl3.mbt | Bindings for SDL3 to allow audio and video development using MoonBit. 🎬 | moonbit-community/sdl3.mbt
  • MoonMIR | (Currently private) The next step for MoonLLVM: generating backend assembly code, supporting architectures like riscv64, arm, and x86.
  • MoonJIT | (Planned) Adding Just-In-Time (JIT) compilation functionality to MoonLLVM.

🤔 Let's Talk!

I'm always open to discussing fascinating problems and potential collaborations! Feel free to open an issue, submit a PR, or drop me an email! (≧∇≦)ノ

Pinned Loading

  1. moonbitlang/llvm.mbt moonbitlang/llvm.mbt Public

    Write llvm in moonbit!

    MoonBit 21 3

  2. moonbitlang/python.mbt moonbitlang/python.mbt Public

    Manipulate Python Objects in Moonbit!

    MoonBit 30

  3. moonbitlang/MoonLLVM moonbitlang/MoonLLVM Public

    Moonbit version of LLVM

    MoonBit 19 3

  4. moonbit-community/godot.mbt moonbit-community/godot.mbt Public

    Create game with godot engine and Moonbit language.

    MoonBit 4

  5. moonbit-community/openblas.mbt moonbit-community/openblas.mbt Public

    OpenBLAS binding in MoonBit

    MoonBit 3

  6. moonbitlang/mbtcc moonbitlang/mbtcc Public

    moonbit version of c11 compiler

    MoonBit 49 2