只要唔係everything known at compile time就無法阻止萬惡的null
所以handling係一個習慣
然後到底點解null會滿天飛? 問題多數是咁:
假設有兩件pure function f(x) 同 g(x)
可以g(f(x)) 或者 f(g(x))咁樣用
寫f(x)條友以為g(x)已經sanitize左input
咁岩寫g(x)條友又以為input係trustable於是奶野
於是整體上必須zero trust
現實上唔洗每一個function都check
因為有無形同有形既boundary
有形既boundary即encapsulation
無形既boundary係一種module 玄之又玄
