The ballsiest thing the designers of #golang ever did, was to look at null, see it was a billion dollar mistake, and say “You know what? Let’s go for a $trillion”
@madlep ha. I've not felt any problem so far in how they deal with nil. somewhat similar to Java, some diff too. I do like the greater emphasis on error return params than exceptions, and keeping the error signal distinct from the happy path return param slots. and exceptions/panics are thankfully much more rare

@synlogic @madlep yes, but Java can be forgiven because it was created at a time when people didn't realize how bad null was and that there were better solutions.

#Golang on the other hand is much newer.

@madlep see also undefined in JavaScript

@madlep
Care to elaborate what would be a good alternative? I never liked the optional API in Java, it's super clunky. Rust has something similar altho a bit nicer looking.
I kinda like pointers as a way to communicate what is shared or a copy. And while Go beginners often stumble on pointers, they tend to quickly get used to not ignoring returned errors and checking for nil across package boundaries / not their code.

I'm genuinely curious what's out there and what are the tradeoffs.