Unpopular opinion maybe but C# is getting too bloated

This page summarizes the projects mentioned and recommended in the original post on /r/csharp

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • Roslyn

    The Roslyn .NET compiler provides C# and Visual Basic languages with rich code analysis APIs.

    One of the least obvious complexities is in error handling. C# tends to give "good" diagnostics and will even help push you in the right direction at times. Consider for example that C# 11 is getting user-defined checked operators and so now public static T operator checked +(T left, T right) is now valid. One might assume that public static T operator unchecked +(T left, T right) is also valid, but it isn't. The compiler could spew 15 different errors about all the things it expected (commas, parentheses, binary operators, etc). Or it could fail gracefully and say "Unexpected keyword 'unchecked'": https://github.com/dotnet/roslyn/issues/60394

  • csharplang

    The official repo for the design of the C# programming language

    Would definitely recommend opening a discussion (or finding an existing discussion, I think one might exist already) on the csharplang repo: https://github.com/dotnet/csharplang/discussions

  • 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.

  • Language-suggestions

    Collecting ideas for a new .NET language that could replace C#

    Absolutely. And one guy's already working on that, I hope it will one day become a reality. [Link](https://github.com/LanguageDev/Fresh-Language-suggestions)

  • Iron python

    Implementation of the Python programming language for .NET Framework; built on top of the Dynamic Language Runtime (DLR).

    Iron Python? It originated at MS, but was abandoned and split off over 10 years ago. I'm not sure if that qualifies it as "non MS". It's part of the .NET Foundation now, though.

  • boo

    The Boo Programming Language.

    There's also boo-lang which was quite nice for DSLs / configuration.

  • Fable: F# |> BABEL

    F# to JavaScript, TypeScript, Python, Rust and Dart Compiler

    Where I work, we have some transpiled F#-to-JS (via Fable) in production. There's a bit of business logic that makes sense on both the client and server, and it works perfectly for that.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts