是Groovy中的1.x(从http://groovy.codehaus.org)和Groovy ++(从http://code.google.com/p/groovypptest)两种不同的语言还是他们的只是一种语言两个部分组成?为什么或者为什么不?Groovy和Groovy ++是两种语言还是一种语言?
回答
您的问题的答案在Groovy ++网站上提供。这是您链接到的页面上的第二句话!
Groovy ++是Groovy编程语言的静态类型扩展。
的Groovy ++的一个扩展的Groovy。它建立在Groovy之上,在一些或所有类中添加了真正的静态类型。目标是性能和其他改进。再次,您链接到的页面有完整的描述。最近,Groovy确实提高了它的性能,并且随着Java 7的增加,性能可能很快会像Groovy ++/Java一样快(差别几乎可以忽略不计)。
因为这个问题可能会有不同的意见(和原因),所以我会留下这个答案,以鼓励其他答案。 –
您写道:“最近,Groovy的性能得到了很大的提升,而且随着Java 7的invokeDynamic的增加,性能可能几乎和Groovy ++/Java一样快(差别几乎可以忽略不计)”。 Groovy尚未使用Java 7的invokeDynamic,因此与Java和Groovy ++相比,它的性能仍然很低,因为这些统计信息显示为:http://code.google.com/p/groovypptest/wiki/Performance –
您是对的。最近有关于invokeDynamic的好处的讨论,但尚未实现。 Groovy用户组和我相信在StackOverflow上讨论invokeDynamic的好处的其他问题。我想是准确的,我应该写* *性能可能**很快**几乎一样快...... * – OverZealous
从软件架构的角度来看,Groovy ++可能是Groovy的扩展。
但如果你看看目前的语言水平:如果你使用动态方法invokation和注释是类@Typed
会发生什么?编译器会抱怨未知的方法。
我认为Groovy ++是一种新语言,因为@Typed
带注释的Groovy类不允许动态调用,如未注释的Groovy类。它改变了你的代码的语义。 Groovy ++是Groovy的一个子集。
子集?通过@Typed **注释的类是否允许大多数动态调用。** 允许大部分动态调用。 Groovy ++只是试图在编译时将它们转换为静态类型。无论如何,您可以使用**每个** Groovy与@Typed(TypePolicy.MIXED)进行比较。 – uhbif19
正式Groovy ++只是Groovy库。 Groovy ++甚至没有任何特殊的语法并使用Java注释。
但事实上Groovy ++是Groovy方言(当然不是新语言)。 Groovy ++禁止一些Groovy libretys(正如我所理解的,由于良好的代码风格)。
但是,Groovy的++提供了许多语义扩展,如非常复杂的类型推理系统,特点,扩展方法,函数式编程库等
正因为如此,我认为Groovy的+ +不只是的”子集Groovy“,正如你所说的。
如果Groovy ++是一种Groovy方言,因为它没有额外的语法,这与Java如何与Groovy相关? Java是Groovy的雏形吗?我认为一种语言不能只归结为语法。你必须考虑sematics,sematic使Groovy和Groovy ++有所不同。 – Peter
- 1. Hacklang是一种有状态语言还是无状态语言?
- 2. Ruby是一种脚本语言还是一种解释型语言?
- 3. 两种语言
- 4. PHP是一种Web技术还是一种脚本语言?
- 5. 哪种标记语言?降价还是?
- 6. Groovy语言错误
- 7. 在一种语言的语音到另一种语言
- 8. Python是语言还是脚本语言?
- 9. 两种语言的交集是什么?
- 10. Groovy是Android的潜在开发语言
- 11. AJAX是一种独立于Javascript的语言,还是JavaScript框架?
- 12. 如何用同一种语言实现一种语言比语言更快?
- 13. awk是一种编程语言还是工具?
- 14. Groovy语言书籍/教程
- 15. Wolfram语言是一种真正的编程语言吗?
- 16. 选择语言groovy还是Java有哪些标准?
- 17. Qt 4是一种编程语言吗?
- 18. 这是一种编程语言吗?
- 19. AutoIt是一种编程语言?
- 20. 几种语言
- 21. Javascript是一种通用语言?
- 22. 将一种语言翻译成另一种语言?
- 23. asp.net是一种编译语言吗?
- 24. PHA是一种编程语言吗?
- 25. 是否有一种语言具有这种简化的语法?
- 26. bash是一种编程语言吗?
- 27. MSXML:JavaScript并不是一种脚本语言
- 28. Ruby是一种优雅的语言吗?
- 29. PowerShell是一种强类型语言吗?
- 30. R是一种编译语言吗?
可能重复的[Groovy和Groovy ++,它们是不同的吗?](http://stackoverflow.com/questions/5441482/groovy-and-groovy-are-they-different) –
@Andrew无论是“Groovy”还是“ Groovy ++“是不同的,不管它们是一种语言还是两种语言,都是两个不同的问题。我已经看到了他们是两种不同语言的争论,并希望能够引出人们为什么会在答案中以某种方式思考的原因。 –
我的推理是,他们是否是不同语言而不是相同语言的口味的问题是学术问题(消极意义上的)。对于这个问题的答案如何提供更多的理解,而不是我已链接到的副本上已经提供的答案?更根本的是,你真的想找出什么? –