Groovy1.x(来自http://groovy.codehaus.org)和Groovy++ (来自http://code.google.com/p/groovypptest) 是两种不同的语言,还是的两个部分只是一种语言?为什么或者为什么不?
发布于 2011-09-04 01:23:42
您的问题的答案在Groovy++网站上提供。这是你链接到的页面上的第二句话!
Groovy++是Groovy编程语言的静态类型扩展。
Groovy++是Groovy的扩展。它构建在Groovy的基础上,在一些或所有类中添加真正的静态类型。目标是性能和其他改进。同样,您链接到的页面具有完整的描述。
最近,Groovy确实提高了它的性能,随着Java7的invokeDynamic的加入,性能可能很快就会和Groovy++/Java一样快(差别几乎可以忽略不计)。
发布于 2011-10-12 09:03:14
从软件体系结构的角度来看,Groovy++可能是Groovy的一个扩展。
但是,如果您查看语言级别:如果使用动态方法调用并用@Typed对该类进行注释,会发生什么?编译器会抱怨未知的方法。
我认为Groovy++是一种新的语言,因为带@Typed注释的Groovy不允许动态调用,比如没有注释的Groovy类。它会改变代码的符号学。
Groovy++是Groovy的一个子集。
发布于 2011-11-01 08:00:31
从形式上说,Groovy++只是一个Groovy库。Groovy++甚至没有任何特殊的语法,并且使用Java注解。
但实际上,Groovy++是Groovy方言(当然不是新语言)。
@Peter Groovy++禁止一些Groovy++(正如我所理解的,原因是代码风格良好)。
但是,Groovy++提供了许多语义扩展,如非常复杂的类型推理系统、特征、扩展方法、函数编程库等。
正因为如此,我认为Groovy++不仅仅是你所说的“Groovy的子集”。
https://stackoverflow.com/questions/7296293
复制相似问题