Джоли (язык программирования)
Парадигмы | Микросервисы , SOA |
---|---|
Разработано |
|
Разработчик | Фабрицио Монтези |
Впервые появился | 31 июля 2006 г |
Стабильная версия | 1.11.0 / 24 мая 2023 г |
Язык реализации | Ява |
Платформа | Ява |
Лицензия | LGPLv2 |
Расширения имен файлов | .them, .iol, .chap |
Веб-сайт | www |
Джоли (механизм интерпретации языка оркестровки Java) [1] ) является открытым исходным кодом [2] язык программирования для разработки распределенных приложений на основе микросервисов . В парадигме программирования, предложенной Джоли, каждая программа представляет собой службу, которая может взаимодействовать с другими программами, отправляя и получая сообщения по сети. Jolie поддерживает уровень абстракции, который позволяет службам взаимодействовать с использованием различных сред — от TCP/IP сокетов в памяти до локальной связи между процессами . [3] [4]
Jolie в настоящее время поддерживается интерпретатором, реализованным на языке Java , который может работать в нескольких операционных системах, включая на базе Linux операционные системы , OS X и Windows . [5] Язык имеет формальную семантику , а это означает, что выполнение программ Джоли математически определено. По этой причине Джоли используется в исследованиях по изучению языковых методов разработки распределенных систем. [6] и он также используется для преподавания в некоторых университетах. [7]
Проект с открытым исходным кодом Jolie был начат Фабрицио Монтези в 2006 году в рамках его обучения в Болонском университете . Первоначально проект начинался как реализация исчисления процессов SOCK , формальной модели, предложенной Клаудио Гуиди и др. в Болонском университете [8] [9] вдохновлен исчислением процессов CCS и языком программирования WS-BPEL . Джоли расширяет SOCK, поддерживая, например, древовидные структуры данных (вдохновленные XML , но с синтаксисом, напоминающим синтаксис C и Java ), типы сообщений, программирование типизированных сеансов, интеграцию с Java и JavaScript , мобильность кода , сдерживание приложений , и веб-программирование. [5] [10] [11] Полный список участников проекта доступен по адресу. [12]
В настоящее время проект поддерживается Фабрицио Монтези, а его развитием руководят Фабрицио Монтези и Клаудио Гуиди.
Поскольку Jolie поддерживает оркестровку веб-сервисов , он является альтернативой языкам оркестровки на основе XML, таким как WS-BPEL , поскольку он предлагает краткий (C-подобный) синтаксис для доступа к XML-подобным структурам данных.
Ссылки
[ редактировать ]- ^ Монтези, Фабрицио; Гуиди, Клаудио; Лукки, Роберто; Заваттаро, Джанлуиджи (2007). ДЖОЛИ: механизм интерпретации языка оркестровки Java (PDF) . ЭНТКС . Том 181. стр. 19–33. CiteSeerX 10.1.1.408.2052 . дои : 10.1016/j.entcs.2007.01.051 . ISSN 1571-0661 .
- ^ «Проект Джоли» . СоурсФордж .
- ^ Монтези, Фабрицио (2010). Джоли: сервис-ориентированный язык программирования (Диссертация). Болонский университет .
- ^ Монтези, Фабрицио; Гуиди, Клаудио; Заваттаро, Джанлуиджи (2014). «Сервис-ориентированное программирование с Джоли». В Бугеттайе — Атман; Шэн, Цюань Цз.; Дэниел, Флориан (ред.). Основы веб-сервисов . стр. 81–107. дои : 10.1007/978-1-4614-7518-7_4 . ISBN 978-1-4614-7517-0 .
- ^ Jump up to: а б «Язык программирования Джоли» .
- ^ «Язык программирования Chor» .
- ^ «Язык программирования Джоли — Академия» .
- ^ Гуиди, Клаудио; Лукки, Роберто; Горрьери, Роберто; Буси, Надя; Заваттаро, Джанлуиджи (2006). SOCK: расчет для сервис-ориентированных вычислений . МЦОС '06. ЛНКС . Том 4294. стр. 327–338. CiteSeerX 10.1.1.102.6297 . дои : 10.1007/11948148_27 . ISSN 0302-9743 .
- ^ Гуиди, Клаудио (2007). Формализация языков для сервис-ориентированных вычислений (Диссертация). дои : 10.6092/unibo/amsdottorato/373 .
- ^ Монтези, Фабрицио (2013). Веб-программирование с учетом процессов с Джоли . САК '13. стр. 761–763. arXiv : 1410.3712 . дои : 10.1145/2480362.2480507 .
- ^ Монтези, Фабрицио (2016). «Веб-программирование с учетом процессов с Джоли». Наука компьютерного программирования . 130 : 69–96. arXiv : 1410.3712 . дои : 10.1016/j.scico.2016.05.002 .
- ^ «Язык программирования Джоли — О Джоли» .