Ask HN: Modern Alternatives to C

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

InfluxDB – Built for High-Performance Time Series Workloads
InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  1. crystal

    The Crystal Programming Language

    Take a look at the Crystal Programming Language - “Slick Like Ruby and Fast Like C” is goal of the project.

    https://crystal-lang.org/

  2. InfluxDB

    InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.

    InfluxDB logo
  3. Vrmac

    Vrmac Graphics, a cross-platform graphics library for .NET. Supports 3D, 2D, and accelerated video playback. Works on Windows 10 and Raspberry Pi4.

    I think the right way is building on top of 3D GPU APIs, like I did there: https://github.com/const-me/Vrmac#vector-graphics-engine

  4. nanovg

    Antialiased 2D vector drawing library on top of OpenGL for UI and visualizations.

    > to learn the 'nuts and bolts' of rendering

    These nuts and bolts are very different between CPU and GPU. CPU-based libraries are painting pixels in bitmaps in system memory. Most GPU-based libraries are uploading indexed triangle meshes, and rendering them with weird shaders.

    Worse, there're no good open source implementations of GPU-based ones. Microsoft ships an implementation as a part of OS (Direct2D) but it's not open source. Linux simply doesn't have an equivalent.

    At least for initial versions, consider C interop with this https://github.com/memononen/nanovg It cuts a few corners (no cleartype for text, CPU overhead for repeated rendering of same static paths) but it's still good overall, simple, and easy to use.

    > My only concern with C# is the cross compatibility

    Works well on Linux, Windows and OSX, including ARM CPUs. Not sure about Android and iOS, never tested.

    My largest concern with C# would be performance. Technically the language allows to code in any style, but most guides and examples are using OO-heavy one.

  5. serenity

    The Serenity Operating System 🐞

    Is Go really suitable…? I love Go, but so far I haven’t seen _any_ desktop applications written in it. I guess that’s for a reason?

    BTW, if you want some inspiration, have a look at the browser bundled with SerenityOS. It’s written in C++.

    https://github.com/SerenityOS/serenity/tree/master/Userland/...

    https://www.youtube.com/watch?v=Gbvhmt9EdfI

  6. Odin

    Odin Programming Language

    While being very simple it is modern and effective with some real projects built using it.

    Performance wise it is at the very top with other low level languages.

    [0]: https://github.com/odin-lang/Odin

  7. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
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