Swan Lake Beta Release of Ballerina Programming Language Lowers Barriers

to Delivering Cloud-Native Applications

Increasingly enterprises are turning to cloud-native applications that integrate APIs, events, data, microservices, serverless apps, and other digital assets throughout their organizations and across the ecosystems in which they participate. Ballerina is the open-source language for cloud-native programming and integration designed to support these organizations with a unique bidirectional mapping of sequence diagrams and code.

The new Swan Lake Beta release, available today, radically simplifies how developers build and deploy cloud-native applications through an intuitive syntax for developing services and APIs, seamless JSON support, and built-in concurrency control.

“Modern applications are not islands—nor are the teams of developers responsible for building them,” said Dr. Sanjiva Weerawarana, founder and leader of the Ballerina project and founder and CEO of WSO2. “The Ballerina language enables developers to create cloud-native applications that are inherently integrations of services, data, transactions and processes. The new Swan Lake Beta version extends this functionality—further enabling enterprises to tear down the barriers between app development and integration and between highly skilled and ad hoc developers to speed the delivery of innovative, new digital products and services.”

Ballerina is a 100% open-source project created and sponsored by WSO2. All parts of the project are developed openly at https://github.com/ballerina-platform.

New Ballerina Swan Lake Features
With the Swan Lake version, Ballerina introduces several features to help developers build and deploy enterprise-class, cloud-native applications. Notably, it has been redesigned with an intuitive syntax for developing APIs and services, including procedure call (RPC) and RESTful style services and seamless support for JSON. Ballerina also now features both client and service objects that can be configured to use multiple different protocols, using either an RPC-based interface type or a RESTful interface type such as HTTP or GraphQL. Other key features include Concurrency Control, Powerful Constructs for Working with Data and Automated Deployments for Kubernetes.

Full Development Platform
The Ballerina platform provides comprehensive support for modern software engineering processes and toolchains, including:

  • A framework for package/module management, including dependency and version control; the new version with Swan Lake also produces repeatable builds for the same source code
  • Ballerina Central, a public web service for sharing modules amongst developers
  • IDE tool plugin for Visual Studio Code supporting both textual and graphical development and debugging of Ballerina programs
  • A framework for documentation and testing of Ballerina programs
  • Built-in tooling for OpenAPI (Swagger) and gRPC
  • New update tool with Swan Lake, which provides built-in functionality for keeping Ballerina installations up to date with the latest releases
  • New shell, an interactive command-line tool that allows developers to rapidly learn and prototype Ballerina code
  • A comprehensive standard library with support for many network protocols, data sources, and data formats to ease the adoption of the language

Availability and Support
The Ballerina Swan Lake Beta is available today. As a fully open-source implementation released under the Apache License 2.0, it does not carry any licensing fees and can be freely downloaded at https://ballerina.io/downloads. Users can find support through its growing open-source community on Ballerina’s Slack Channel, Google Group, or GitHub. Additionally, resources, such as the Quick Tour and Ballerina by Examples, can be found at https://ballerina.io/learn/by-example.

Sponsored and Developed by WSO2
WSO2 invested in the creation of Ballerina to address significant shortcomings that it saw in how middleware was evolving to play in the cloud-native world. WSO2’s founder, Dr. Sanjiva Weerawarana, created the project in August 2016 and led its technical design in collaboration with James Clark, bringing in their decades of software development and enterprise integration experience.

Sanjiva’s professional career has been focused on creating technology to facilitate large-scale distributed systems, including co-creating WSDL, BPEL4WS, and several domain-specific programming languages. James was a co-creator of XML and led the design of XPath, XSLT, and RELAX NG. WSO2’s engineering effort for Ballerina has included more than 300 person years of investment in its nearly five years of development.