Я потратил много времени на поиск функционального языка, который может легко получить доступ к устаревшему коду Java (код Weka). Автозаполнение импортированных методов класса Java было бы превосходным. Я покажу свои впечатления, пожалуйста, исправьте меня, если я ошибаюсь.
Yeti очень привлекателен для меня, потому что он прост и ML -подобный, но я не мог настроить для него хорошую IDE. Я не знаю также, если сам язык уже используется в реальной жизни.
Groovy, JRuby и Jython кажутся очень зрелыми, но не очень функциональными. Scala является зрелым, но также OO и, по крайней мере, на Netbeans (и Eclipse, если я хорошо помню), это ошибка.
" OCaML-Java" также является OO и не подходит для использования (3 или 4 отдельных проекта). Я полагаю, что в IDE он будет еще менее готов к использованию.
Jaskell кажется мертвым.
Clojure кажется зрелым и отлично работает в Intellij IDEA (плагин La Clojure), но я не уверен, что хочу писать более 2 символов на строку во время кодирования.
SISC и ABCL Я не пытался. Я думаю, что нет поддержки IDE.
ЯзыкCAL (или Quark... Blah...) приводит к сайту SAP, и после этого мое терпение ищет функциональные языки JVM.
Есть похожие вопросы, но не всеобъемлющие. Например: Какой функциональный язык программирования предлагает лучшую поддержку в Eclipse?
Является ли какой-то функциональный язык JVM, способный напрямую вызывать классы Java? Если Yeti имела поддержку IDE, поскольку Clojure имеет (в IDEA), это было бы идеально для меня.
Спасибо
ИЗМЕНИТЬ -----------------------------------
Я мог бы использовать Clojure + Scala в Intellij IDEA. Пример совместимости:
Scala код
package a
class ScalaMain {
def test = {
"testing!"
}
}
Clojure код
(import '(a ScalaMain)) ;'
(def scalainstance (new ScalaMain))
(print "printing: " (. scalainstance test))
Spectacular!