How do you think about dada-lang?

36 points VitalyAnkh

I happened to come across the data-lang today. It's an experiment programming language by nikomatsakis and wycats:

Dada is a thought experiment. What if we were making a language like Rust, but one that was meant to feel more like Java or JavaScript, and less like C++? One that didn't aspire to being used in kernels or tiny embedded devices and was willing to require a minimal runtime. What might that look like?

It's like rust (for example, guarantee memory safe without GC) and also has some very different and interesting features (copy from the website):

  • Like TypeScript, Dada is a gradually typed language:
    • That means you can start out using Dada in the interpreter, with no type annotations, to get a feel for how it works.
    • Once you've gotten comfortable with it, you can add type annotations and use the compiler for performance comparable to Rust.
  • Dada targets WebAssembly first and foremost:
  • Dada is object-oriented, though not in a purist way:
    • Dada combines OO with nice features like pattern matching, taking inspiration from languages like Scala.

Note that FAQ said dada is not competing with Rust:

  • Dada informs new Rust features and designs, and remains an experiment. There are tons of ideas in Dada that could apply to Rust, although in some cases we'd have to think about how to adapt them.
  • Dada becomes a successful language in its own right, one that interoperates smoothly and well with Rust.

Then, how do you think about dada? Which parts of dada attract you most and you hope they are implemented in rust?

Claim: If anyone feels it's not appropriate to talk about this, please let me know and I will delete this post.