4 ms·
> along with the question marks I'd take the question marks any day over tracking a nil passed around a dozen source files before landing in a dictionary liter
by fingerlocks 5y ago
> along with the question marks
I'd take the question marks any day over tracking a nil passed around a dozen source files before landing in a dictionary literal.
- jb1991 5y agoAbsolutely this. Having accidental null values floating around a program should not be a thing in the year 2021. And that’s exactly what some languages are fixing, like Swift. This problem is also one of the reasons why I got so frustrated using clojure.
- fooker 5y agoThe question mark syntax just moves this burden to some other layer of abstraction.
- jb1991 5y agoI disagree. Knowing if something could be nil is a very different thing than something unexpectedly becoming nil. If you have values that are guaranteed by the compiler to never be nil, that removes the burden completely.
- fooker 5y ago> that removes the burden completely. In practice this gives you improperly constructed objects with bad state, returned from code some random person wrote in a hurry. Yes, it is bad code but so is most code in existence you have to interface with.
- mariodiana 5y agoI'm by no means an OOP guru, but if anything is passed through a dozen source files, I start to feel a bit queasy.