• Die Martin Die@sh.itjust.works
    link
    fedilink
    arrow-up
    4
    ·
    edit-2
    17 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 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.

    Edit: some typos