• 1 Post
  • 33 Comments
Joined 1 year ago
cake
Cake day: July 22nd, 2023

help-circle

  • A lot of the time it’s about being lucky enough be able to have or form connections with rich stupid people. Those kinds are a lot more willing to throw insane amounts of money at someone/some company they vaguely know to do things they know nothing of but hear a lot about.

    Or just working at a company that’s well-known in the area and deals with clients very intimately while the product is being created.

    Sometimes charging more for the same service makes them want it more, to them it means it’s premium programming (as opposed to the off-brand wish dot com programming). But sometimes they demand disgracefully cheap yet world-class service and throw a tantrum when they can’t pay you $5 an hour for a full rebranded recreation of the Amazon web service.








  • I don’t work on any widely-used languages (I’ve made my own but not anything important) but I do think the designers of Zig and Rust have very good reasons for using semicolons – I read some reasons from the Rust devs themselves somewhere but I can’t remember them other than it vaguely being about how Rust is expression-based and intended to be lightweight and how whitespace significance can create confusion around how to read and write certain things and bla bla bla…

    but my personal opinion, what I generally I would imagine it’s for other than readability, is because the code can look a lot cleaner when an expression returned from a block is just the expression, and not expression plus some token like return. It’s especially nice in long closures or extremely short and simple blocks. I would rather consistently have to write expressions broadly like let a = { b + c }; rather than let a = { return b + c }. The semicolon has significance as a “result discarder” so expressions can be the default, so it’s on the surface a lot more functional-friendly.

    Also this is more specific but I hate the way WS languages generally handle quotes



  • That said, with how few expressions are return values, I do wonder why semicolons are the default rather than adding a special character to indicate return values.

    you mean like return/break/etc.?

    because Rust was designed to remind you of functional programming despite not being very functional, and because semicolons allow way better syntax rules in Rust and are generally pretty vital for good, readable lowish-level code. it also allows Rust programmers to use newlines/indents and stuff to pretty up their code a lot without littering it with random \ and |> and begin end and such everywhere, which, given how dense Rust code can be and how much it uses iterators and weird trait magic, is a big plus for readability



  • Depends on the language. I’m not gonna find shit to copy-paste for what I’m doing in Scala 3 or F#, but in Rust or C++ I’ll frequently Google an issue I can’t figure out and someone will have some fancy black magic hacker solution with super-iterators and turbofishies and weird type inference that I couldn’t think of myself and just throw it in my code with some minor modifications :)



  • force@lemmy.worldtoProgrammer Humor@programming.devIs this a Nut?
    link
    fedilink
    arrow-up
    1
    arrow-down
    1
    ·
    edit-2
    4 months ago

    Sorry what? Rust has literally been known for having some of the most useful compiler warnings imaginable. It’s like, a huge selling point. Misleading warnings are far and few, and usually it’ll literally point you at the exact tokens that caused an error and gives you a solution to fix it.

    Are you sure that your inability to write Rust isn’t caused by a lack of understanding of the language’s pointer/ownership/lifetime rules, or the type system? I would be inclined to believe that someone who mainly just uses Python (or any other GC’d language really, but especially extremely high-level/“low-code” dynamically-typed languages like Python/Lua/JavaScript) wouldn’t exactly be too good at those concepts, but they’re pretty important in the context of languages like Rust.






  • force@lemmy.worldtoProgrammer Humor@programming.devcodeStyle
    link
    fedilink
    arrow-up
    19
    arrow-down
    15
    ·
    edit-2
    4 months ago

    snake case for everything, pascal case for struct/enum/class/trait names, and screaming snake case for constexpr identifiers is the superior method of naming. FUCK camel case, java/c# naming conventions are dumb and stupid and cringe, rust did it right

    i’m in pain every time i use scala/f# or something and i have to actually interact with those HEATHEN java/c#-conformist identifiers