But you can not call methods on null interface values. In Go that is perfectly reasonable and safe to do.
That doesn't matter. Calling methods and performing comparisons are two different things. I covered this here: https://news.ycombinator.com/item?id=12522941
Java and C# just have null interface values compare equal to null. I've never seen this cause problems and have never heard any complaints about this.