Groovy и Groovy ++ два языка или один язык? - PullRequest
2 голосов
/ 04 сентября 2011

Groovy 1.x (из http://groovy.codehaus.org) и Groovy ++ (из http://code.google.com/p/groovypptest) два отдельных языка или две части только один язык ? Почему или почему нет?

Ответы [ 3 ]

4 голосов
/ 04 сентября 2011

Ответ на ваш вопрос предоставлен на сайте Groovy ++. Это второе предложение на странице, на которую вы ссылаетесь!

Groovy ++ - статически типизированное расширение языка программирования Groovy.

Groovy ++ является расширением Groovy. Он основан на Groovy, добавляя статическую типизацию в некоторые или все классы. Цель - производительность и другие улучшения. Опять же, страница, на которую вы ссылаетесь, имеет полное описание.

В последнее время Groovy действительно улучшил свою производительность, и с добавлением Java 7 invokeDynamic производительность может вскоре стать почти такой же высокой, как Groovy ++ / Java (разница в основном незначительна).

1 голос
/ 12 октября 2011

С точки зрения архитектуры программного обеспечения Groovy ++ может быть расширением Groovy.

Но если вы посмотрите на уровень языка: что произойдет, если вы используете динамический вызов метода и аннотируете этот класс с помощью @Typed? Компилятор будет жаловаться на неизвестные методы.

Я думаю, что Groovy ++ - это новый язык, потому что аннотированный класс Groovy @Typed не допускает динамических вызовов, таких как не аннотированный класс Groovy. Это меняет семантику вашего кода.

Groovy ++ является подмножеством Groovy.

0 голосов
/ 01 ноября 2011

Формально Groovy ++ - это просто библиотека Groovy.Groovy ++ даже не имеет специального синтаксиса и использует Java-аннотации.

Но на самом деле Groovy ++ - это диалект Groovy (конечно, не новый язык).

@ Peter Groovy ++ запрещаетнекоторые библиотеки Groovy (как я понял из соображений хорошего стиля кода).

Но Groovy ++ предоставляет множество семантических расширений, таких как система вывода очень сложных типов, черты, методы расширения, библиотека функционального программирования и т. д.

Из-за этого я думаю, что Groovy ++ не просто "подмножество Groovy" , как вы сказали.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...