Almost five years ago, Saoirse “boats” wrote “Notes on a smaller Rust”, and a year after that, revisited the idea.

The basic idea is a language that is highly inspired by Rust but doesn’t have the strict constraint of being a “systems” language in the vein of C and C++; in particular, it can have a nontrivial (or “thick”) runtime and doesn’t need to limit itself to “zero-cost” abstractions.

What languages are being designed that fit this description? I’ve seen a few scripting languages written in Rust on GitHub, but none of them have been very active. I also recently learned about Hylo, which does have some ideas that I think are promising, but it seems too syntactically alien to really be a “smaller Rust.”

Edit to add: I think Graydon Hoare’s post about language design choices he would have preferred for Rust also sheds some light on the kind of things a hypothetical “Rust-like but not Rust” language could do differently: https://graydon2.dreamwidth.org/307291.html

  • @[email protected]OP
    link
    fedilink
    210 months ago

    Copying what I wrote in another comment:

    What I would like to see is something that shares these advantages with Go:

    • quick to build
    • easier to teach & learn than Rust
    • easier to quickly prototype with than Rust (though of course it’s debatable how well Go does at this one)

    …but I don’t like the actual language design of Go, and I think it’s possible to design a language that’s more Rusty but still simpler than actual Rust.

    For instance, error handling in Rust is both more ergonomic and more rigorous than in Go. That’s huge! A language like Go but with sum types, Result, and the question-mark operator would be leaps and bounds nicer than Go itself.

    To be clear, I don’t imagine that a “smaller Rust” would replace Rust. But I also don’t think we’ve reached optimal language design when the language I’d pick to write an OS is also the language I’d pick to write a small CLI app.

    • bluGill
      link
      fedilink
      110 months ago

      Learning a programming language is not hard. there are thousands of choices. Before you ask for another one, first please check that there isn’t already one that meets your needs. Fragmentation of languages is not useful in general. It is rare to have an idea that hasn’t been tried before, so find someone who already has done that idea.

      • @[email protected]OP
        link
        fedilink
        610 months ago

        … I am currently asking if there is a language that fits the description. And I’m clearly not the only one interested in such a language.

        I personally have not found Rust onerous to learn, especially by comparison to C++. But a lot of people do find the learning curve steep.