Carbon Language: An experimental successor to C++

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

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

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

  • HVM

    A massively parallel, optimal functional runtime in Rust

    There is plenty of experimentation in high-performance memory-safe languages going on now - see e.g. https://vale.dev/ and https://github.com/Kindelia/HVM

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

  • Vale

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

    There is plenty of experimentation in high-performance memory-safe languages going on now - see e.g. https://vale.dev/ and https://github.com/Kindelia/HVM

  • crubit

    This language was started by folks at Google. (Although it's interesting that they're publishing it under a separate github org, which suggests ambitions beyond Google's needs.) Google has a huge, performance-sensitive C++ codebase. At Google, major product teams' backends are typically written in C++, as well as common infrastructure like D (disk server), Colossus (distributed filesystem), Spanner (distributed SQL database), and Borg (cluster management). More than a few people would love for it all to be be written in Rust instead, but migration would be challenging, to say the least. I'm told people are looking into it—see Crubit for example. But AFAIK, no one's decided yet whether Google will stay with C++ for all these things, migrate some to Rust, migrate some to Carbon, and/or do something else entirely.

  • autocxx

    Tool for safe ergonomic Rust/C++ interop driven from existing C++ headers

    Notably Google is also investing in autocxx to make C++/Rust bidirectional interoperation easier

  • go-sumtype

    A simple utility for running exhaustiveness checks on Go "sum types."

    I've been writing Go and Rust nearly daily for about a decade now (Go is more than a decade, Rust is about 8 years). You are not going to teach me anything about the pros and cons of either language in a reddit comment. I do not need to be taught about the "iota mess" when I've written tooling for exhaustiveness checking in Go.

  • go

    The Go programming language

    There are now several features in the standard library (e.g. sync.Map) which use interface {}-based APIs. They now need to add a new version of sync.Map which uses generics. So at best, it winds up creating duplication and cruft in the standard library.

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

  • hylo

    The Hylo programming language

    I am looking at the design of this language as an alternative design (in research mode, not because I think it is going to gain popularity) and I think it has the nicest semantics I found so far on the paper. Of course, if you start to use it at the scale of Rust probably some problems will pop up: https://github.com/val-lang/val

  • hack-game

    it reminds me of .hack

    What language would you use to build a server? I've been using go for a while and have enjoyed using the different emerging frameworks and even just the standard packages.

  • go-server-core

    An attempt to build a plugin based server

    What language would you use to build a server? I've been using go for a while and have enjoyed using the different emerging frameworks and even just the standard packages.

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