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

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

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

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

Общие сведения
Ballerina
Класс языка Язык программирования
Появился в 2017[2]
Разработчик WSO2[d]
Расширение файлов .bal
Выпуск 2201.1.0[1] (25 мая 2022; 4 года назад (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 и Microsoft Windows

История

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

Примеры кода

Hello World[16]

import ballerina/io;

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

Ветвления[17]

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. Ballerina: An API-First Programming Language (англ.), The New Stack. Архивировано 13 июня 2018 года. Дата обращения: 11 июня 2018.
  6. Foremski. Technology and the Arts: Celebrating Ballerina, a computer language of integration (1 марта 2019). Архивировано 7 марта 2021 года. Дата обращения: 14 июля 2019.
  7. Lawton. Ballerina language promises to improve app integration (1 ноября 2018). Архивировано 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. How does Ballerina stack up as a cloud-native programming language? (1 марта 2019). Архивировано 23 июля 2019 года. Дата обращения: 23 июля 2019.
  11. Doyle. 10 of the best programming languages to learn in 2020 (англ.). Архивировано 16 сентября 2020 года. Дата обращения: 16 сентября 2020.
  12. staff. Top programming languages you should try (англ.), Techworld. Архивировано 7 июня 2018 года. Дата обращения: 7 июня 2018.
  13. Clark. Ballerina Programming Language Part 0 - Context (англ.). Архивировано 16 сентября 2020 года. Дата обращения: 16 сентября 2020.
  14. Clark. Ballerina Programming Language Part 1 - Concepts (англ.). Архивировано 17 сентября 2020 года. Дата обращения: 16 сентября 2020.
  15. Ballerina Reinvents Cloud-Native Middleware as a Programming Language". GlobeNewswire. Дата обращения: 16 сентября 2020. Архивировано 16 сентября 2020 года.
  16. Hello World Main (англ.). Ballerina. Дата обращения: 27 февраля 2021. Архивировано 15 июня 2021 года.
  17. If/Else (англ.). Ballerina.