• Lucy :3@feddit.org
    link
    fedilink
    arrow-up
    0
    ·
    9 days ago

    Average Rust code:

    macro_rules! sum {
        ( $initial:expr $(, $expr:expr )* $(,)? ) => {
            $initial $(+ $expr)*
        }
    }
    
    fn remove_prefix<'a>(mut original: &'a str, prefix: &str) -> &'a str
    
    let mut up = 1;
        'outer: loop {
    

    Hell I don’t want to know what you define as ugly then.

      • wewbull@feddit.uk
        link
        fedilink
        English
        arrow-up
        0
        ·
        9 days ago

        What language are they then? They’re not Python, JS, <insert any other language here>

        • calcopiritus@lemmy.world
          link
          fedilink
          arrow-up
          1
          ·
          8 days ago

          You used macro_rules, which is not common at all. Most rust files don’t contain any macro definition.

          This code doesn’t even compile. There is a random function definition, and then there are loose statements not inside any code block.

          The loop is also annotated, which is not common at all, and when loops are annotated it’s a blessing for readability. Additionally, the loop (+annotation) is indented for some reason.

          And the loop doesn’t contain any codeblock. Just an opening bracket.

          Also, the function definition contains a lifetime annotation. While they are not uncommon, I wouldn’t say the average rust function contains them. Of course their frequency changes a lot depending on context, but in my experience most functions I write/read don’t have lifetime annotations at all.

          Yes, what you wrote somewhat resembles rust. But it is in no way average rust code.

    • fuck_u_spez_in_particular@lemmy.world
      link
      fedilink
      arrow-up
      1
      ·
      8 days ago

      Definitely not your average Rust code, more like a very ugly example of it.

      Also, as the syntax first put me off as well, I gave it a chance years afterwards, and have now (or rather years ago) officially joined the church of Rust evangelism.

      A lot of the syntax you define as ugly makes sense when you learn it, it’s just so much more explicit than a more dynamic language, but that exactly saves your ass a lot (it did for me at the very least) (I don’t mean macros, macros are ugly and should be avoided if possible)