cross-posted from: https://lemmy.world/post/10094818
spoiler
Gender variability as declarations in JavaScript: const / let / var
Meme is based on Jordan Peterson “approival / disapproval” format, him being a conservative who disapproves of gender fluidity.
Transcript:
- Jordan Peterson approval image: const gender;
- Jordan Peterson angry image: let gender;
- Jordan Peterson crying image: var gender;
Joke’s on you because they’re all still mutable objects behind the reference.
Last one can be freely changed by anyone, the middle one still has some restraints.
Reassignment isn’t the same as mutation. But mutation depends on the type of value. If gender was a string like “female” it wouldn’t be mutable cuz strings are immutable in JS.
var
isn’t global unless it’s not inside a function.var
is just function scoped, with declaration auto hoisted to the beginning of the function.let
is a little more intuitive since you can’t refer to it before it’s been declared and has block scope rather than function scope.
void* gender
it can be anything i want >:)Douchebag Peterson doesn’t deserve to be a meme.
python:
gender: Optional[str] = None
How about:
gender: Optional[complex]
self.gender = 1.63-2.1j
🤔
Anyway you put it it’s not gonna please non-binary people.
NB here - this is hilarious.
Can anyone explain it to me, please? 🥹
In JavaScript, a const variable is an immutable constant that you cannot reassign. Similar to how many conservatives think of gender, an intrinsic fact of a person that you can only read, but never change.
The “let” keyword declares a variable in a local scope, the nearest surrounding curly braces. It can be changed in that scope, but does not exist anywhere else. I assume this is meant to concede that gender is a spectrum and your presentation can kind of wiggle, such as between “very manly” and “not as manly” but still a man. Like, a stereotypical lumberjack and a stereotypical twink are both men so there isn’t “one way to be a man” but a conservative might say " but they are still men, you can change how you present but you can’t change sex".
The “var” keyword lifts the variable definition to the top of the function, or “hoists” it up. A variable declared with var can be accessed and modified anywhere after the block it was declared in. Gender is a spectrum and it can be reassigned anywhere, at anytime, to anything.
I interpret it a bit differently. After all, a variable declared with
var
isn’t really more capable of being rebound, or bound to more values, than one declared withlet
. However, it is possible, withvar
, that setting a variable in one place could change it unexpectedly in another, so Rose Noble coming out as trans could cause Jordan Peterson to also suddenly be a woman.The “var” keyword lifts the variable definition to the top of the function, or “hoists” it up. A variable declared with var can be accessed and modified anywhere after the block it was declared in. Gender is a spectrum and it can be reassigned anywhere, at anytime, to anything.
similar to how most liberals think of gender