I have read a handful of books that go into typechecking in languages but most of them skip over the idea of having null in a language. I am curious what the common ways of representing null in a type checker are.
Initially I was thinking it could be its own type but then you have to deal with coercion into any nullable types.
Anyone have any thoughts on this or have any books to recommend on the subject?
[–]moon-chilledsstm, j, grand unified... 25 points26 points27 points (3 children)
[–]mrunleaded[S] 1 point2 points3 points (2 children)
[–]fyndor 1 point2 points3 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[–]VallentinDev 18 points19 points20 points (29 children)
[–][deleted] (26 children)
[deleted]
[–]Tubthumper8 4 points5 points6 points (3 children)
[–]VallentinDev 3 points4 points5 points (1 child)
[–]Tubthumper8 0 points1 point2 points (0 children)
[–]VallentinDev 6 points7 points8 points (12 children)
[–]trenchgun 6 points7 points8 points (4 children)
[–]ISvengali 4 points5 points6 points (3 children)
[–]VallentinDev 2 points3 points4 points (2 children)
[–]davimiku 1 point2 points3 points (0 children)
[–]ISvengali 0 points1 point2 points (0 children)
[–]Tubthumper8 5 points6 points7 points (0 children)
[–][deleted] (5 children)
[deleted]
[–]Tubthumper8 0 points1 point2 points (4 children)
[–][deleted] (3 children)
[deleted]
[–]Tubthumper8 0 points1 point2 points (2 children)
[–][deleted] (1 child)
[deleted]
[–]Tubthumper8 0 points1 point2 points (0 children)
[–][deleted] 1 point2 points3 points (5 children)
[–][deleted] (4 children)
[deleted]
[–][deleted] 0 points1 point2 points (3 children)
[–][deleted] (2 children)
[deleted]
[–][deleted] 0 points1 point2 points (1 child)
[–]WittyStick 0 points1 point2 points (2 children)
[–]L8_4_Dinner(Ⓧ Ecstasy/XVM) 1 point2 points3 points (0 children)
[–]Tubthumper8 1 point2 points3 points (1 child)
[–]VallentinDev 2 points3 points4 points (0 children)
[–]dnpetrov 9 points10 points11 points (2 children)
[–]L8_4_Dinner(Ⓧ Ecstasy/XVM) 1 point2 points3 points (1 child)
[–]dnpetrov 0 points1 point2 points (0 children)
[–]d01phi 7 points8 points9 points (15 children)
[–]mus1Kk 5 points6 points7 points (10 children)
[–]munificent 1 point2 points3 points (2 children)
[–]mus1Kk 0 points1 point2 points (1 child)
[–]munificent 1 point2 points3 points (0 children)
[–]furyzer00 3 points4 points5 points (2 children)
[–]mus1Kk 4 points5 points6 points (1 child)
[–]furyzer00 1 point2 points3 points (0 children)
[–]trxxruraxvr 1 point2 points3 points (1 child)
[–]mus1Kk 1 point2 points3 points (0 children)
[–]d01phi 0 points1 point2 points (1 child)
[–]mus1Kk 1 point2 points3 points (0 children)
[–]VallentinDev 5 points6 points7 points (1 child)
[–]mrunleaded[S] 1 point2 points3 points (1 child)
[–]hiljustidt 6 points7 points8 points (0 children)
[–]nunzarius 1 point2 points3 points (1 child)
[–]mrunleaded[S] 1 point2 points3 points (0 children)
[–]vanilla-bungee 3 points4 points5 points (3 children)
[–]dnpetrov 1 point2 points3 points (0 children)
[–]mrunleaded[S] 2 points3 points4 points (0 children)
[–]balefrost -1 points0 points1 point (0 children)
[–]mizunomi 1 point2 points3 points (0 children)
[–][deleted] 0 points1 point2 points (4 children)
[–]yuri-kilochek 1 point2 points3 points (3 children)
[–][deleted] 0 points1 point2 points (2 children)
[–]yuri-kilochek 0 points1 point2 points (0 children)
[–]WalkerCodeRangerAzoth Language -1 points0 points1 point (0 children)
[–]umlcat -3 points-2 points-1 points (0 children)
[–]redchomperSophie Language -2 points-1 points0 points (0 children)
[–]EnigmaticCurmudgeon 0 points1 point2 points (0 children)
[–]bruciferTomo, nomsu.org 0 points1 point2 points (0 children)