Сначала мы должны знать, что вам нужно!
Поскольку большинство вопросов, о которых вы спрашиваете, уже даны в ссылках из статьи в Википедии.
Редактировать : после того, как вы переформулируете вопрос, я предполагаю, что ваша основная цель - весело программировать на новом языке ...
Тогда я думаю, что динамический язык, такой как Groovy или Jython, будет более забавным в использовании, так как вы можете получить дело быстрее и увидеть результаты того, что вы делаете немедленно в интерпретаторе. Лично я предпочитаю Jython, потому что он основан на Python (на самом деле это IS Python, но немного устарел), но я должен признать, что Groovy более тесно связан с JRE, он более синтаксически похож на Java и, следовательно, может быть лучше опция.
Если вы хотите немного изменить свой образ мышления (при условии, что у вас есть процедурный / императивный опыт, как у большинства людей), то я рекомендую вам Scala, Clojure, SISC или Вооруженный медведь CL (тех двоих последних нет в списке Википедии).
Кроме того, я думаю, что стоит присмотреть за Крепостью , которая может стать следующим "Большим" языком для JVM ... Я давно не смотрел на это, но теперь кажется, что он уже готов к загрузке, сборке самостоятельно и тестированию. Если вы хотите по-настоящему повеселиться, возможно, этот вариант будет лучшим, потому что он имеет «действительно классные функции» (например, написание математических выражений в формате, похожем на LaTeX, которые фактически анализируются компилятором и используются для красивой печати документации). и вы будете постоянно удивлены предстоящими изменениями, так как это язык в активной разработке.