Skip to content

trilang/trilang

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

212 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Trilang

Note

A programming language implementation built with .NET and C#. Later, when the basic compiler features and standard library are ready, it will be rewritten in Tri.

Overview

TODO

Project Structure

  • Tri/ - Main executable application
  • Trilang/ - Core language implementation library
    • Lexing/ - Lexical analysis components
    • Parsing/ - Parser implementation
    • Semantics/ - Semantic analysis
    • Symbols/ - Symbol table management
    • Compilation/ - Compilation pipeline
    • IntermediateRepresentation/ - IR generation and manipulation
    • Lower/ - Lowering transformations
    • OutputFormats/ - Code generation backends
    • Metadata/ - Metadata handling
  • Tri.Tests/ - Unit tests using NUnit framework
  • example.tri - Example Tri language source file

Requirements

  • .NET 9.0 or later

Building

To build the project:

dotnet build

Running

To run the Tri compiler:

dotnet run --project Tri

To help with command-line options:

dotnet run --project Tri -- --help

To run tests:

dotnet test

Example Usage

See for a sample Tri language program demonstrating the syntax and features: example.tri.

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests for new functionality
  5. Ensure all tests pass
  6. Submit a pull request

License

See the LICENSE file for details.

Code Owners

See the CODEOWNERS file for maintainer information.

About

The Tri programming language

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Contributors

Languages