Ask HN: Modern Alternatives to C

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

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.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • 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/

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

    InfluxDB logo
  • 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

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

  • 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

  • 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

  • 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