Ballerina (язык программирования)

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
Ballerina
Изображение логотипа
Класс языка язык программирования
Появился в 2017[2]
Разработчик WSO2[d]
Расширение файлов .bal
Выпуск 2201.1.0[1] (25 мая 2022; 23 месяца назад (2022-05-25))
Испытал влияние Java, JavaScript, Go, Rust, C#, Си[3], Haskell[3], C++[3], Kotlin[3], Dart[3], TypeScript[3] и Swift[3]
Лицензия Apache License 2.0[4]
Сайт ballerina.io (англ.)
ОС Linux, macOS и Windows

Ballerina - язык программирования с открытым исходным кодом и платформа, разработанная WSO2 для применения в сфере облачных технологий. Язык отличается простотой, и кроме того, подходит для решения прикладных задач разработки[5][6][7].

Это проект с открытым исходным кодом[8], начатый в 2015 году разработчиками из WSO2 как пакет коммерческих продуктов, и программная альтернатива конфигурационным инструментам интеграции, таким как EAI и ESB[9][10].

Он имеет различные конструкции, ориентированные на облачную разработку, включая поддержку современных форматов данных и протоколов, надежность, распределенные транзакции, API-интерфейсы и потоки событий.[11][12][13]

История[править | править код]

Ballerina была разработана WSO2 для повышения эффективности разработки приложений, использующих распределённые облачные системы. При разработке языка учитывался многолетний опыт корпоративной разработки[14][15]. В 2017 году, разработчики впервые публично объявили о языке, а 10 сентября 2019 года вышла его первая версия[16].

Примеры кода[править | править код]

Hello World[17][править | править код]

import ballerina/io;

// Функция "main" - точка начала выполнения программы
public function main() {
    io:println("Hello, World!");
}

Ветвления[18][править | править код]

import ballerina/io;

public function main() {
    int a = 10;
    int b = 0;

    // Ветвление if
    if (a == 10) {
        io:println("a == 10");
    }

    // Ветвление if-else
    if (a < b) {
        io:println("a < b");
    } else {
        io:println("a >= b");
    }

    // Ветвление if-else-if
    if (b < 0) {
        io:println("b < 0");
    } else if (b > 0) {
        io:println("b > 0");
    } else {
        io:println("b == 0");
    }
}

Примечания[править | править код]

  1. "Ballerina 2201.1.0 (Swan Lake Update 1) Released!". Архивировано 27 июня 2022. Дата обращения: 27 июня 2022.
  2. https://blog.ballerina.io/posts/introduction-to-ballerina-0.970/
  3. 1 2 3 4 5 6 7 https://opensource.ellak.gr/wp-content/uploads/sites/5/2018/06/2018-06-Ballerina-GFOSS.pdf
  4. https://github.com/ballerina-platform/ballerina-lang/blob/master/LICENSE
  5. Jackson, Joab. "Ballerina: An API-First Programming Language". The New Stack (англ.). Архивировано 13 июня 2018. Дата обращения: 11 июня 2018.
  6. Foremski, Tom (2019-03-01). "Technology and the Arts: Celebrating Ballerina, a computer language of integration". Архивировано 7 марта 2021. Дата обращения: 14 июля 2019.
  7. Lawton, George (2018-11-01). "Ballerina language promises to improve app integration". Архивировано 23 июля 2019. Дата обращения: 23 июля 2019.
  8. Open Source Contributors. Ballerina source code. GitHub (18 июня 2019). Дата обращения: 14 марта 2019. Архивировано 17 февраля 2019 года.
  9. Ballerina Microservices Programming Language: Introducing the Latest Release and "Ballerina Central". InfoQ. Дата обращения: 7 июня 2018. Архивировано 4 июня 2018 года.
  10. Earls, Alan (2019-03-01). "How does Ballerina stack up as a cloud-native programming language?". Архивировано 23 июля 2019. Дата обращения: 23 июля 2019.
  11. Doyle, Kerry. "10 of the best programming languages to learn in 2020" (англ.). Архивировано 16 сентября 2020. Дата обращения: 16 сентября 2020.
  12. Posta. Evolution of Integration and Microservices with Service Mesh and Ballerina (брит. англ.). Дата обращения: 24 июля 2019. Архивировано 31 марта 2022 года.
  13. staff, Techworld. "Top programming languages you should try". Techworld (англ.). Архивировано 7 июня 2018. Дата обращения: 7 июня 2018.
  14. Clark, James. "Ballerina Programming Language Part 0 - Context" (англ.). Архивировано 16 сентября 2020. Дата обращения: 16 сентября 2020.
  15. Clark, James. "Ballerina Programming Language Part 1 - Concepts" (англ.). Архивировано 17 сентября 2020. Дата обращения: 16 сентября 2020.
  16. Ballerina Reinvents Cloud-Native Middleware as a Programming Language". GlobeNewswire. Дата обращения: 16 сентября 2020. Архивировано 16 сентября 2020 года.
  17. Hello World Main (англ.). Ballerina. Дата обращения: 27 февраля 2021. Архивировано 15 июня 2021 года.
  18. If/Else (англ.) (недоступная ссылка — история). Ballerina.