对,大家说到底都是lambda表达式,理论上但实际上最后设计好的语言才能胜出static这个关键字其实有些词不达意,c用了,c+...
对,大家说到底都是lambda表达式,理论上
但实际上最后设计好的语言才能胜出
static这个关键字其实有些词不达意,c用了,c++、java、c#就跟着拿来了。也没啥创新。我觉得这就是没创意,品味不够,而不是为了“向下兼容”
就不说scala了,ruby的类方法,比如class A,类方法就是A.xxx,不用static感觉还是好多了。先别说ruby的动态效率问题,起码这语言一看就是简洁优雅的(当然,部分得益于不用写类型说明)。不过因为ruby把大括号拿去给代码块用了,所以方法的begin end多层嵌套看着还是很不爽。。。
ml系的语言更不用说了,就算我忍了语句结尾的;;,忍了[1;2;3]这样的分号分割列表,其他还有一堆复杂的语法要忍。为啥设计成这样?据说法国人的计数系统本来就很复杂,也许是因为这个?ml的继承者f#也不敢抛弃这些语法,虽然对嵌套的let in做了简化,但依然语法复杂
该改还是要改,像ruby。clojure不也用了圆括号外的分界符吗?
看来看去语法最紧凑干净的要算scala了(据说以后也要有static关键字?),说明什么呢?说明追求完美的处女座就是牛!
如果认为本文对您有所帮助请赞助本站