Project Description

Tungsten is supposed to be a memory-safe and type-safe language front-end for LLVM which borrows many elements from C and C# syntax. It is statically typed and meant to have very little overhead while providing modern language features. The compiler is written in C++20 and uses LLVM 17. I'm starting this project because I'm interested in compiler design and want to understand LLVM better.

Goals

  • [x] Language reference
  • [x] Parser
  • [ ] Lexer
  • [ ] AST
    • [ ] Math
      • [ ] Binary
      • [ ] Logical
    • [ ] Basic Keywords
    • [ ] Literals
    • [ ] Functions
    • [ ] Structs
    • [ ] Generics
    • [ ] Interfaces
  • [ ] Code Generation
  • [ ] User Project
    • [ ] Configs
    • [ ] Building

Nice-to-haves

  • [ ] Standard library
  • [ ] Examples
  • [ ] Syntax highlighting
  • [ ] Foreign Function Interface (FFI)

Resources

GitHub repository: https://github.com/marv7000/tungsten/

Looking for hackers with the skills:

llvm compiler c++

This project is part of:

Hack Week 23

Activity

  • 6 months ago: mfriedrich added keyword "llvm" to this project.
  • 6 months ago: mfriedrich added keyword "compiler" to this project.
  • 6 months ago: mfriedrich added keyword "c++" to this project.
  • 7 months ago: mtravitzky joined this project.
  • 7 months ago: mfriedrich started this project.
  • 7 months ago: mfriedrich originated this project.

  • Comments

    Be the first to comment!

    Similar Projects

    SMTGCC by fkastl

    [comment]: # (Please use the project descriptio...


    Open Source Firmware for EV chargers using the ESP32 Chip (Autoaid / EN-Plus / EVSEDO) by bschmidt

    [comment]: # (Please use the project descriptio...


    SMTGCC by fkastl

    [comment]: # (Please use the project descriptio...


    Extend GObject based introspectable API to libzypp by zbenjamin

    [comment]: # (Please use the project descriptio...


    Avahi Integration and Network Connection by vojha

    Avahi Integration and Network Connection

    ...


    Port some classic game to Linux by MDoucha

    Let's pick some old classic game, reverse engin...