Список языков JVM - List of JVM languages

Этот список языков JVM состоит из известного компьютера языки программирования которые используются для производства компьютеров программного обеспечения что работает на Виртуальная машина Java (JVM). Некоторые из этих языков интерпретированный по Ява программа, а некоторые скомпилированы в Байт-код Java и JIT-скомпилированный во время выполнения как обычные Java-программы для повышения производительности.

Изначально JVM была разработана для поддержки только языка программирования Java. Однако со временем еще больше языков было адаптировано или разработано для работы на Платформа Java.

Языки JVM

Высококлассные языки

Отдельно от Язык Java, наиболее распространенными или известными другими языками JVM являются:

JVM-реализации существующих языков

ЯзыкРеализации Java
Синтаксис ArdenArden2ByteCode
КОБОЛMicro Focus Visual COBOL[3]

Фамильный эластичный COBOL
Верянт isCOBOL Evolve[4]

Язык разметки ColdFusion (CFML)Adobe ColdFusion
Railo
Люси
Открыть Синий дракон
Common LispВооруженный медведь Common Lisp[5]
СайферNeo4j[6]
HaskellEta (язык программирования)
JavaScriptНосорог
Nashorn

Graal.js[7]

Битовый код LLVMСулонг[8]
МеркурийМеркурий (Уровень Java)
OCamlOCaml-Java
Компонент ПаскальКомпонент Gardens Point Паскаль
ПаскальMIDletPascal
Кислород
РакуРакудо
PHPQuercus[9][10] JPHP
ПрологJIProlog
TuProlog
PythonJython

ZipPy[11]

Грааль.Python[7]

рRenjin

FastR[12]

RexxNetRexx
РубинJRuby
ТрюфельРубин[13]
СхемаBigloo
Кава
SISC
JScheme
СимулаОткрытый исходный код Simula
БолтовняКрасная линия[14]
Стандартный MLMLj
TclJacl
Visual BasicJabaco[примечание 1]

Новые языки с реализациями JVM

  • Ateji PX, расширение Java для простого параллельного программирования в многоядерных системах, GPU, Grid и Cloud[19]
  • Балерина, язык программирования для облачных приложений со структурной типизацией; сетевые клиентские объекты, службы, функции ресурсов и слушатели; параллельный параллелизм с воркерами; построение имиджа; управление конфигурацией; и проверка на заражение.[20]
  • BeanShell, скриптовый язык, синтаксис близок к Java
  • EPL (язык обработки событий), предметно-ориентированный язык обработки данных для анализа и обнаружения шаблонов в синхронизированных потоках событий, расширяющий SQL 92 с событийно-ориентированными функциями. Реализуется Эспер: до версии 6 EPL в основном был языком, интерпретируемым библиотекой Java; начиная с версии 7 он компилируется в байт-код JVM.
  • Цейлон, конкурент Java из Красная шляпа[1]
  • CFML, Язык разметки ColdFusion, более известный как CFML, - это язык сценариев для веб-разработки, который работает на JVM, .NET framework и Google App Engine.[21]
  • Quark Framework (CAL), а Haskell -вдохновленный функциональный язык
  • E -на Java, объектно-ориентированный язык программирования для безопасных распределенных вычислений
  • Eta, чистый, ленивый, строго типизированный функциональный язык программирования в духе Haskell[22]
  • Фантом, язык, созданный на основе для переносимости через JVM, .NET общеязыковая среда выполнения (CLR) и JavaScript[23][1]
  • Поток Java
  • Крепость, язык, разработанный Sun как преемник Fortran, в основном для параллельных научных вычислений. При покупке Sun разработка продукта была взята на себя Oracle. По словам доктора Добба, Oracle прекратила разработку в 2012 году.
  • Frege, нестрогий, чисто функциональный язык программирования в духе Haskell[24]
  • Голо, простой, динамичный, слабо типизированный язык для JVM, разработанный в Лионский национальный институт прикладных наук, Франция, в настоящее время инкубируемый проект Eclipse Software Foundation.[25][26][27]
  • Госу, расширяемый язык системы типов, скомпилированный в байт-код Java
  • Haxe, кросс-платформенный язык со статической типизацией, ориентированный на Java, а также на JVM.
  • Иоке, а на основе прототипа язык чем-то напоминает Ио, со сходством с Рубин, Лисп и Болтовня
  • Желе
  • Присоединяйтесь к Java, язык, расширяющий Java с помощью соединительное исчисление семантика
  • Радость
  • Юдоскрипт
  • Мира, настраиваемый язык с вывод типа и синтаксис, вдохновленный Ruby[28][29]
  • NetLogo, а мультиагент язык
  • Нооп, язык, построенный с возможностью тестирования в качестве основного
  • Пицца, надмножество Java с указатели на функции и алгебраические типы данных
  • Орехи
  • Обработка, язык и фреймворк визуализации и анимации на основе Java с синтаксисом, подобным Java
  • Промпто, язык, «предназначенный для создания бизнес-приложений в облаке». Это часть одноименной платформы для разработки бизнес-приложений непосредственно в облаке. Язык Промпто включает три «диалекта»: энгли, монти и обжи. Engly «максимально имитирует английский», Monty «старается как можно больше следовать синтаксису языка Python 3», а Objy «старается максимально следовать синтаксису языков ООП, таких как C ++, Java или C #. ". Все три диалекта легко переводятся друг на друга.[30]
  • RascalMPL, независимый от исходного и целевого языков (параметризованный) язык метапрограммирования
  • Пока
  • X10, язык, разработанный IBM, с ограниченными типами и упором на параллелизм и распространение.[1]
  • Xtend, объектно-ориентированный, функциональный, и императивное программирование язык, созданный на основе Eclipse Foundation, обеспечивающий тесную совместимость с Java, с упором на методы расширения и лямбда-выражения, а также богатый инструментарий
  • Йети, функциональный язык программирования в стиле ML[31]
  • Yirgacheffe, язык, призванный упростить и расширить объектно-ориентированную парадигму.[32]
  • Yoix, универсальный, не объектно-ориентированный, интерпретируемый язык динамического программирования

Сравнение этих языков

ЯзыкПервый выпускСтабильный выпускПоследний выпуск
Балерина201820192020
BeanShell199920132016
Затмение Цейлон201120172017
CFML199520182018
Quark Framework20112018
E1997
Фантом20112017
Крепость200620112017
Frege
Мира2016
Xtend20112017

Смотрите также

Примечания

  1. ^ [15][16][17] это бесплатная IDE, находящаяся в стадии бета-тестирования с 2009 года, с частично открытым исходным кодом [18] Среда выполнения Jabaco. Jabaco компилирует исходный код синтаксиса VB 6 в байт-код Java.

Рекомендации

  1. ^ а б c d е ж Рауль-Габриэль Урма (1 июля 2014 г.). «Альтернативные языки для JVM. Обзор восьми функций из восьми языков JVM». oracle.com. Получено 13 марта 2019.
  2. ^ Уэмплер, Декан (15 января 2009 г.). «Внедрение новых языков JVM на предприятии (обновлено)». objectmentor.com. Архивировано из оригинал 22 мая 2009 г.. Получено 18 июн 2009.
  3. ^ "Визуальная брошюра COBOL" (PDF). Получено 5 апреля 2017.
  4. ^ "isCOBOL Evolve Datasheet" (PDF). Получено 17 мая 2019.
  5. ^ Вооруженный медведь Common Lisp
  6. ^ «Новое в Neo4j: выпуск Neo4j 2.3.0 Milestone 2 уже здесь». Получено 20 февраля 2017.
  7. ^ а б «Oracle Labs GraalVM: обзор языков программирования и среды выполнения». www.oracle.com. Получено 12 апреля 2018.
  8. ^ "граальвм / сулонг". GitHub. Получено 12 апреля 2018.
  9. ^ «Представляем Quercus, PHP на основе Java». Получено 2 июля 2015.
  10. ^ «Запуск PHP с Quercus на веб-сервере Sun Java System». Получено 2 июля 2015.
  11. ^ "ssllab / ZipPy - Bitbucket". bitbucket.org. Получено 12 апреля 2018.
  12. ^ "oracle / fastr". GitHub. Получено 12 апреля 2018.
  13. ^ "оракул / трюфельно-рубиновый". GitHub. Получено 12 апреля 2018.
  14. ^ "Redline Smalltalk". Получено 2 сентября 2018.
  15. ^ "Запись Jabaco в разделе" Основы Mindteq.com ". Получено 2 июля 2015.]
  16. ^ «Статья о Jabaco в немецком издании Pro-Linux». Получено 2 июля 2015.]
  17. ^ "Базовый встречает Java". Получено 26 февраля 2015.
  18. ^ "Рамки". Получено 26 февраля 2015.
  19. ^ «Ateji PX: упрощенное параллельное программирование на Java». Ateji. Архивировано из оригинал 24 февраля 2014 г.. Получено 1 марта 2014.
  20. ^ «Анонсируем Балерину 1.0». Балерина. Получено 8 февраля 2020.
  21. ^ CFML, язык сценариев, скомпилированный для Java, используемый на Холодный синтез или же Railo серверы приложений
  22. ^ «Язык программирования Эта». Получено 10 мая 2017.
  23. ^ "Язык программирования Fantom". Фантом. Получено 1 марта 2014.
  24. ^ "Фреге". Получено 1 марта 2014.
  25. ^ "Oracle.com - Golo - легкий динамический язык для JVM". Архивировано из оригинал 3 июля 2015 г.. Получено 2 июля 2015.]
  26. ^ «Голо номинирован на премию JAX Awards 2014». Получено 2 июля 2015.]
  27. ^ «Запись Golo на JAX Awards 2014». Получено 2 июля 2015.]
  28. ^ "Язык программирования Mirah". GitHub. Получено 1 марта 2014.
  29. ^ "Мира". Получено 1 марта 2014.
  30. ^ «Платформа Промпто». Получено 14 сентября 2019.
  31. ^ «Язык программирования Йети». Получено 5 мая 2020.
  32. ^ "Йиргачеффе". Получено 9 января 2020.