• 1 Post
  • 31 Comments
Joined 1 year ago
cake
Cake day: June 26th, 2023

help-circle



  • Here’s some of my personal complaints. I don’t in general know how to fix them.

    1. proc_macros need their own crate

    2. generics cause problems. Many useful macros can’t handle them. Try using a generic that’s a complex async function, then pass a closure to it.

    3. There’s this kind of weird mismatch where sometimes you want an enum wrapping various types, and in others generics. I find my data flows switching back and forth.

    4. async in rust is actually really good, but go does it better. I don’t think rust could match go without becoming a different language.

    5. Traits are just a big mess. Trait implementations with generics have to be mutually exclusive, but there aren’t any good tools to make them so. The orphaned trait rule is necessary to keep the language sane but is incredibly restricting. Just today I find certain a attribute macros for impls that doesn’t work on trait impls. I guess I have to write wrappers for every trait method.

    6. The “new type” pattern. Ugh. Just make something like a type alias that creates a distinct type. This one’s probably easy to fix.

    7. Cargo is truly great, but it’s a mystery to me right now how I’m going to get it to work with certain packaging systems.

    To me, Rust is a bunch of great pieces that don’t fit together well.









  • I don’t like Valve. I don’t like the non-ownership model of game distribution.

    Users aren’t captured at all, since none of them need to purchase video games. Game developers may be captured by Valve, but game developers aren’t producing anything of importance.

    I’m for legal restrictions on industry practice that are predatory towards the users, but there’s no need to protect the industry itself from control by Valve, since nothing important is being controlled.

    Valve also can’t control the gaming industry if they don’t control the OS gamers use. They may be trying to control the OS, but they haven’t done it yet. Until then, they can’t prevent users from installing games outside of Steam. If Developers are locked in to Steam, it’s because users buy games in Steam and refuse to buy games outside of Steam. The users behave this way because Steam provides lots of value to them.

    If Steam starts to abuse users instead of serving them, there’s nothing stopping them from purchasing games some other way.