The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning. Learn more →
Top 23 C# Compiler Projects
-
Roslyn
The Roslyn .NET compiler provides C# and Visual Basic languages with rich code analysis APIs.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
FastExpressionCompiler
Fast Compiler for C# Expression Trees and the lightweight LightExpression alternative. Diagnostic and code generation tools for the expressions.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
Roslyn-linq-rewrite
Compiles C# code by first rewriting the syntax trees of LINQ expressions using plain procedural code, minimizing allocations and dynamic dispatch.
-
Amplifier.NET
Amplifier allows .NET developers to easily run complex applications with intensive mathematical computation on Intel CPU/GPU, NVIDIA, AMD without writing any additional C kernel code. Write your function in .NET and Amplifier will take care of running it on your favorite hardware.
-
Metalama
Metalama is a Roslyn-based meta-programming framework. Use this repo to report bugs or ask questions.
-
vsSolutionBuildEvent
🎛 Event-Catcher with variety of advanced Actions to service projects, libraries, build processes, runtime environment of the Visual Studio, MSBuild Tools, and …
-
Juka
🥣 Juka Programming Language - Fast Portable Programming Language. Run code anywhere without complicated installations and admin rights. Simple, yet powerful new programming language [Easy to code and run on any system] IOT devices supported!
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Project mention: The Performance Impact of C++'s `final` Keyword | news.ycombinator.com | 2024-04-22.NET is a little smarter about switch code generation these days: https://github.com/dotnet/roslyn/pull/66081
Yea, that's true. I forgot about that. I did think of Clojure CLR, but I don't get the impression that this is an all that natural or used implementation. ClojureScript is obviously much more used, although it is still a "different" language.
https://github.com/clojure/clojure-clr
Project mention: IKVM – A Java Virtual Machine and Bytecode-to-IL Converter for .NET | news.ycombinator.com | 2024-02-22
Project mention: ILGPU VS ComputeSharp - a user suggested alternative | libhunt.com/r/ILGPU | 2023-10-27
Or similar for c# with https://h5.rocks (disclaimer: author here)
Project mention: .NET Compiler Platform ("Roslyn") Analyzers VS Metalama - a user suggested alternative | libhunt.com/r/roslyn-analyzers | 2023-12-07Metalama allows you to create your own code validation rules without the complexity of Roslyn. It is especially useful to validate source code against architecture or design patterns.
Project mention: Classes vs. Structs in .NET. How not to teach about performance | news.ycombinator.com | 2023-11-04How is that relevant to the vast majority of the code targeted by LINQ?
The niche scenario you have outlined is partially covered by a recent System.Numerics.Tensors package update (even though I believe it would have been best if there was a community-maintained package with comparable quality that can be decoupled from .NET release cycle and trade-off support/compat guarantees in favour of more aggressive improvements in the future).
The goal of LINQ itself is to offer optimal codepaths when it can within the constraints of the current design (naturally, you could improve it significantly if not for backwards compatibility with the previous 15 or so years of .NET codebases). The argument that it's not good because it's not the tool to do BLAS is just nonsensical.
There is, however, an IL optimizer that can further vectorize certain common patterns and rewrite LINQ calls into open-coded loops: https://github.com/dubiousconst282/DistIL
C# Compiler related posts
- Generating C# code programmatically
- Candy – a minimalistic functional programming language
- IKVM – A Java Virtual Machine and Bytecode-to-IL Converter for .NET
- Still No REPL for .NET Core in Visual Studio
-
Roslyn VS Metalama.Compiler - a user suggested alternative
2 projects | 7 Dec 2023
- Classes vs. Structs in .NET. How not to teach about performance
- Por debaixo do capô: async/await e as mágicas do compilador csharp
-
A note from our sponsor - WorkOS
workos.com | 24 Apr 2024
Index
What are some of the best open-source Compiler projects in C#? This list will help you:
Project | Stars | |
---|---|---|
1 | Roslyn | 18,482 |
2 | bebop | 1,822 |
3 | PowerUp | 1,601 |
4 | ClojureCLR | 1,539 |
5 | CSharp.lua | 1,170 |
6 | FastExpressionCompiler | 1,104 |
7 | ikvm | 1,087 |
8 | ILGPU | 1,053 |
9 | Netjs | 960 |
10 | Jurassic | 853 |
11 | Roslyn-linq-rewrite | 717 |
12 | Mond | 344 |
13 | Cesium | 326 |
14 | Hybridizer | 230 |
15 | h5 | 189 |
16 | Amplifier.NET | 164 |
17 | Metalama | 153 |
18 | Ncodi | 115 |
19 | DistIL | 108 |
20 | vsSolutionBuildEvent | 75 |
21 | Juka | 70 |
22 | CSLisp | 51 |
23 | Bite-Programming-Language | 44 |
Sponsored