• thebestaquaman@lemmy.world
    link
    fedilink
    English
    arrow-up
    4
    ·
    1 year ago

    I would say it depends heavily on the language. In Python, it’s very common that different objects have some kind of Boolean interpretation, so assuming that an object is a bool because it is used in a Boolean context is a bit silly.

    • Avicenna@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      ·
      edit-2
      1 year ago

      Well fair enough but I still like the fact that len makes the aim and the object more transparent on a quick look through the code which is what I am trying to get at. The supporting argument on bools wasn’t’t very to the point I agree.

      That being said is there an application of “not” on other classes which cannot be replaced by some other more transparent operator (I confess I only know the bool and length context)? I would rather have transparently named operators rather than having to remember what “not” does on ten different types. I like duck typing as much as the next person, but when it is so opaque (name-wise) as in the case of “not”, I prefer alternatives.

      For instance having open or read on different objects which does really read or open some data vs not some object god knows what it does I should memorise each case.

    • Glitchvid@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      if not x thenend is very common in Lua for similar purposes, very rarely do you see hard nil comparisons or calls to typeof (last time I did was for a serializer).