520
you are viewing a single comment's thread
view the rest of the comments
[-] WolfLink@sh.itjust.works 44 points 3 days 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.

[-] jsomae@lemmy.ml 6 points 2 days ago

Lua might have been a better choice, since self is special in lua.

[-] diemartin@sh.itjust.works 5 points 2 days ago* (last edited 1 day 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

[-] jsomae@lemmy.ml 3 points 2 days 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.

[-] diemartin@sh.itjust.works 2 points 1 day ago

Derp, I misread.

load more comments (3 replies)
this post was submitted on 08 Jun 2025
520 points (97.4% liked)

Programmer Humor

36385 readers
113 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS