• WolfLink@sh.itjust.works
    link
    fedilink
    arrow-up
    39
    ·
    19 hours ago

    In Python, self is not a keyword, it’s a conventional variable name. You can replace all instances of “self” with “this” and your code will work the same.

      • Die Martin Die@sh.itjust.works
        link
        fedilink
        arrow-up
        1
        ·
        7 hours ago

        Kinda.

        Lua defines it implicitly only when you use the

        function foo:bar(a, b, c) -- note the colon
        

        syntactic sugar, which gets translated to

        function foo.bar(self, a, b, c)` -- note the period
        

        In all other cases, self is a regular variable name. You can even redeclare a new local with that name even when the old one is in scope.

        • jsomae@lemmy.ml
          link
          fedilink
          arrow-up
          1
          ·
          5 hours ago

          I don’t see how what you said is inconsistent with me saying “self” is special in lua. Note that I did not say it’s a keyword.