

You can just dual-license as AGPL and a separate commercial license that you negotiate on a case-by-case basis.
Professional software engineer, musician, gamer, stoic, democratic socialist


You can just dual-license as AGPL and a separate commercial license that you negotiate on a case-by-case basis.
Someone explain the Rustacean failing to support MacOS.

deleted by creator


I guess I see what you mean if we want to get very technical about what a syntax extension is. But I think for the purpose of this discussion, it’s reasonable to think of macro_rules! as a part of the Rust language. Practically speaking, it is syntax provided by the language team, not just users of the language who are free to extend the syntax by using macro_rules! to do so.


Enums are the best part of the Rust language IMO, so I’m not sure how you can view them as ugly. Having the choice to destructure something is fantastic. You generally aren’t required to destructure every return value. Make sure you’re using the ? operator as much as possible. If destructuring is getting in your way, it sounds like the code is not very idiomatic.
I can’t really comment on your issue with nested if and match. Too much nesting is bad in any language; try extracting more functions and let bindings to make it more readable.
You can enable a clippy lint to deny .unwrap() if you’re worried about it.


Sorry, I love Rust but I can’t really agree with you here. They only showed a macro_rules! definition, which is definitely rust syntax. Lifetime annotations are relatively common.
I will concede that loop labels are incredibly rare though.
These days with language services, code should be compiling after nearly every edit.