Odin Programming Language

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

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

    Odin Programming Language

  • I highly recommend looking at:

    * The Overview: <https://odin-lang.org/docs/overview/>

    * examples/demo: <https://github.com/odin-lang/Odin/blob/master/examples/demo/...>

    As for the first example: a basic lexing example is probably boring, but it does show some basic ideas of what the language is about. If people want to write better examples or just reorder the current ones, please feel free to make an issue or PR on the website's GitHub page: <https://github.com/odin-lang/odin-lang.org>.

  • cppfront

    A personal experimental C++ Syntax 2 -> Syntax 1 compiler

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

    WorkOS logo
  • zig

    General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.

  • c3c

    Compiler for the C3 language

  • rune

    Rune is a programming language developed to test ideas for improving security and efficiency.

  • kit

    Kit: a magical, high performance programming language, designed for game development. (by kitlang)

  • Kit (dead, last commit 5 years ago) - https://github.com/kitlang/kit

    There's probably more. That's all I can recall off the top of my head and/or what I have in my notes.

    [1]: https://en.wikipedia.org/wiki/Jonathan_Blow#2017%E2%80%93pre...

  • rust

    Empowering everyone to build reliable and efficient software.

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

    The Hylo programming language

  • Beef

    Beef Programming Language (by beefytech)

  • Vale

    Compiler for the Vale programming language - http://vale.dev/ (by ValeLang)

  • vala-www

    Website of the Vala programming language

  • Vala (compiles to C, some GTK apps are written in this) - https://vala.dev/

  • Nim

    Nim is a statically typed compiled systems programming language. It combines successful concepts from mature languages like Python, Ada and Modula. Its design focuses on efficiency, expressiveness, and elegance (in that order of priority).

  • dmd

    dmd D Programming Language compiler

  • crystal

    The Crystal Programming Language

  • ffmpeg

    FFmpeg Zig package (by andrewrk)

  • And furthermore, C and C++ code can participate in the Zig package ecosystem. For example, here is ffmpeg packaged for consumption by a Zig project:

    https://github.com/andrewrk/ffmpeg

    Why not use a system package? Well, because the user's system might not have such a package. They might be on Windows, for example. Or their package might be out of date. [Or the system might have chosen sides in a nasty fork war](http://blog.pkh.me/p/13-the-ffmpeg-libav-situation.html).

    So, while system packages are nice for end users, they might not always satisfy the needs of upstream application developers.

  • carbon-lang

    Carbon Language's main repository: documents, design, implementation, and related tools. (NOTE: Carbon Language is experimental; see README)

  • Carbon was started by Chandler Carruth, at Google, but they wanted to move it to broader governance quickly. It's not under the Google GitHub today, but its own org.

    https://github.com/carbon-language/carbon-lang/blob/trunk/do...

  • qbe-rs

    QBE IR in natural Rust data structures

  • > I think it uses a different backend than LLVM

    harec uses https://c9x.me/compile/

  • sokol-odin

    Odin bindings for the sokol headers (https://github.com/floooh/sokol)

  • * etc

    There is also the second issue that C is technically TWO languages: the C programming language and the C preprocessor. People mix the two together and things cannot be easily translated. A good basic example of this is people using `#define` for constants, and thus that name has no semantic meaning in the language itself. A translator has to try and make some semantic meaning from the intersection of these two languages, even if people don't make a distinction when making APIs.

    And Odin's `foreign` system allows [1] for a lot of really nice things that most other languages cannot do so tersely. Here are two examples of demonstrating bindings of C libraries that feel as if they were native Odin libraries WITHOUT any wrappers:

    * https://github.com/floooh/sokol-odin/blob/main/sokol/gfx/gfx... (and the rest)

  • odin-lang.org

  • I highly recommend looking at:

    * The Overview: <https://odin-lang.org/docs/overview/>

    * examples/demo: <https://github.com/odin-lang/Odin/blob/master/examples/demo/...>

    As for the first example: a basic lexing example is probably boring, but it does show some basic ideas of what the language is about. If people want to write better examples or just reorder the current ones, please feel free to make an issue or PR on the website's GitHub page: <https://github.com/odin-lang/odin-lang.org>.

  • lcpp

    A Lua C PreProcessor

  • 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