• dual_sport_dork 🐧🗡️@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    arrow-down
    1
    ·
    11 months ago

    You can wind up in the same trap in VB/VBA as well. It baffles me that in this current century there are still languages where text concatenation symbols and mathematical operators are the same character.

    It’s even worse in the case of VB because you can also use & explicitly to concatenate strings, whereas + can be either a mathematical operator or a string concatenator depending on context and the types of variables you’ve put it between, which VB may or may not decide to cast into strings depending on an arcane set of conditions that nobody understands or remembers. So the solution was right there all along, i.e. just make & the only concatenator and reserve + for math only. But that would be too much like right.

    • Phoenixz@lemmy.ca
      link
      fedilink
      arrow-up
      1
      ·
      11 months ago

      PHP uses . which works perfectly fine, I’ve never encountered this nonsense before

      • dual_sport_dork 🐧🗡️@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        11 months ago

        Yes, and PHP can even implicitly (or explicitly!) cast variables between different types. Dot (.) is for strings and + is for math. It’s one of the few things about PHP that makes sense.