julia是否有对于Nothing和Some类型的特别优化?


#1

我的代码需要分清

  1. 操作是否成功
  2. 操作结果为nothing或其他值

之前我的做法是引入一个singleton, 然后操作失败返回的是singleton。这样的话,返回类型就是Union{T, Singleton}。这样一来,类型就不是很stable。benchmark测了一下,确实有一定的开销。
之前有人说julia对Nothing和Some有特别优化,我没找到链接,如果是真的,能不能抛个链接呢??


#2

https://julialang.org/blog/2018/08/union-splitting