• philwills
    link
    fedilink
    arrow-up
    35
    ·
    11 months ago

    Man… I thought this was going to be a proper rant about using maps where you should be using other things… No, it’s a make sure you type your function inputs rant…

    • hackeryarn@lemmy.worldOP
      link
      fedilink
      arrow-up
      14
      arrow-down
      2
      ·
      edit-2
      11 months ago

      I wasn’t trying to go into typing as much as using structs or objects when working with known data attributes. Sorry that it was a bit misleading.

      The original actually went into using trees, sets, heaps, tries, etc., but it felt way too… ranty. After writing all that out, I realized that most of those other cases come up really infrequently, and that my biggest gripe was about not using structs or other pre-defined key container types. I thought it would be better to keep things short and focused.

      Maybe I should re-write and publish a data structures edition.

    • hackeryarn@lemmy.worldOP
      link
      fedilink
      arrow-up
      11
      arrow-down
      1
      ·
      11 months ago

      I love the addition of dataclass. Makes refactoring such a breeze. If you need to extract some function, boom, you already have a class that you’re using everywhere.

      • Dr. Wesker@lemmy.sdf.org
        link
        fedilink
        English
        arrow-up
        6
        ·
        11 months ago

        Me too. I like to really take my time up front when modelling, because it makes a project so much easier and enjoyable down the road.

    • Solemarc@lemmy.world
      link
      fedilink
      arrow-up
      2
      ·
      11 months ago

      My most loved and hated feature in PHP is associated arrays. I’ve seen an associated array that uses 16gb of memory before, it was as beautiful as it was horrifying.

  • Reptorian
    link
    fedilink
    arrow-up
    1
    ·
    11 months ago

    Chances are there’s probably something similar to dictionary in Python in your languages or at least it’s a import/#include away. Although I don’t use general programming languages at all, in my used language (G’MIC), I do something like dict$var=input where $var is a defined variable, and this way I can access input by doing ${dict$var} and that’s similar to Python dictionary. In C++, there’s hash table implementation out there via github. That being said, there are sometimes when you don’t need a hashtable dependent on the hashmap, and sometimes, it’s just as simple as basic mathematics to access data.