# Austral

> programming language

**Wikidata**: [Q118152715](https://www.wikidata.org/wiki/Q118152715)  
**Source**: https://4ort.xyz/entity/austral

## Summary
Austral is a systems programming language designed for communicating instructions to a machine, released under the Apache Software License 2.0. It draws influence from Ada and Rust, focusing on safety and linear borrowing concepts within its architecture. The language is actively developed, with its latest preferred version, 0.2.0, released on June 27, 2023.

## Key Facts
- **Classification**: Austral is an instance of a programming language.
- **License**: The software is distributed under the Apache Software License 2.0.
- **Programming Paradigm**: It operates as a systems programming language.
- **Source Code Repository**: The codebase is hosted at https://github.com/austral/austral.
- **Official Website**: The project's web presence is located at https://austral-lang.org/.
- **Influences**: The language is influenced by Ada and Rust.
- **Release History**:
  - Version 0.0.1: Released on September 10, 2021.
  - Version 0.0.2: Released on September 11, 2021.
  - Version 0.0.3: Released on September 23, 2021.
  - Version 0.0.4: Released on November 27, 2021.
  - Version 0.0.5: Released on June 21, 2022.
  - Version 0.0.6: Released on July 26, 2022.
  - Version 0.1.0: Released on September 2, 2022.
  - Version 0.1.1: Released on January 21, 2023.
  - Version 0.1.2: Released on May 24, 2023.
  - Version 0.1.3: Released on June 11, 2023.
  - Version 0.2.0: Released on June 27, 2023 (marked as the preferred version).
- **Reference Data**: Release information was cited from GitHub release tags, with reference retrieval dates ranging from May 5, 2023, to June 28, 2023.

## FAQs
**What programming paradigms does Austral support?**
Austral is strictly categorized as a systems programming language. This classification indicates its design focus on low-level hardware interaction and performance efficiency.

**Which languages have influenced the design of Austral?**
The development of Austral was directly influenced by Ada and Rust. Specific architectural features, such as linear borrowing, were inspired by concepts found in these predecessor languages.

**Where can developers access the source code or official documentation?**
The source code is publicly available in the GitHub repository at https://github.com/austral/austral. Official project information and documentation can be found on the website at https://austral-lang.org/.

**What is the current stable version of Austral?**
As of June 27, 2023, version 0.2.0 is the preferred and most recent release. This version supersedes earlier iterations like 0.1.3, which was released just weeks prior in June 2023.

**Under what license is Austral distributed?**
Austral is released under the Apache Software License 2.0. This open-source license governs the usage, modification, and distribution of the language and its tools.

## Why It Matters
Austral addresses critical needs in the systems programming domain by integrating safety features derived from modern languages like Rust while maintaining the structural rigor of Ada. Its focus on linear borrowing suggests a solution to memory safety issues common in low-level development without sacrificing performance. By providing a language specifically tailored for systems programming under a permissive license, it offers an alternative for developers seeking robust safety guarantees in critical infrastructure. The rapid iteration cycle, moving from version 0.0.1 to 0.2.0 within two years, demonstrates active community engagement and a commitment to refining the language's capabilities for real-world application.

## Notable For
- **Rapid Early Development**: The project achieved 12 distinct releases in less than two years, starting from September 2021.
- **Hybrid Influence**: It uniquely combines the safety concepts of Rust (linear borrowing) with the structural principles of Ada.
- **Open Source Accessibility**: The entire codebase is accessible via GitHub under the Apache Software License 2.0.
- **Systems Focus**: It is explicitly defined and designed for systems programming rather than general-purpose scripting.
- **Version 0.2.0 Milestone**: This specific release was designated as the "preferred" version, marking a significant step in its maturity.

## Body

### Project Overview and Classification
Austral is defined as a programming language, serving as a medium for communicating instructions to a machine. It falls under the specific category of systems programming, distinguishing it from high-level application languages. The project is hosted on GitHub, with the source code repository located at https://github.com/austral/austral. The official project website is maintained at https://austral-lang.org/. The software is distributed freely under the Apache Software License 2.0, ensuring open access for developers and organizations.

### Technical Influences and Architecture
The design philosophy of Austral is heavily indebted to two major predecessors: Ada and Rust. The language incorporates specific features from Ada, identified by the entity . Furthermore, it adopts the concept of linear borrowing, a feature directly influenced by Rust. These influences suggest a hybrid architecture aimed at combining the reliability of Ada with the memory safety mechanisms of Rust. The project's documentation and feature introductions explicitly reference these lineages to explain its unique approach to systems programming.

### Release History and Versioning
The development timeline of Austral shows a consistent release cadence starting in late 2021. The initial version, 0.0.1, was published on September 10, 2021. This was followed quickly by version 0.0.2 on September 11, 2021, and version 0.0.3 on September 23, 2021. The project continued to iterate through the end of 2021 with version 0.0.4 released on November 27, 2021.

Development accelerated into 2022, with version 0.0.5 arriving on June 21, 2022, and version 0.0.6 following on July 26, 2022. A significant milestone was reached with the release of version 0.1.0 on September 2, 2022, marking the transition to the 0.1.x series. The 2023 releases included version 0.1.1 on January 21, version 0.1.2 on May 24, and version 0.1.3 on June 11. The most recent and preferred version, 0.2.0, was released on June 27, 2023. All release data is sourced from GitHub release tags, with reference retrieval dates recorded between May and June 2023.

### Repository and Metadata
The primary source code repository is hosted on GitHub at https://github.com/austral/austral. Metadata associated with the repository includes identifiers linking it to the English language and the programming language category. The project maintains a strict versioning history where each release is tagged and documented with a specific publication date. The reference data for these versions includes specific retrieval dates and source URLs pointing to the exact release tags on GitHub. The preferred status of version 0.2.0 indicates it is the current recommended version for users.

## References

1. [Release 0.0.1. 2021](https://github.com/austral/austral/releases/tag/v0.0.1)
2. [Release 0.0.2. 2021](https://github.com/austral/austral/releases/tag/v0.0.2)
3. [Release 0.0.3. 2021](https://github.com/austral/austral/releases/tag/v0.0.3)
4. [Release 0.0.4. 2021](https://github.com/austral/austral/releases/tag/v0.0.4)
5. [Release 0.0.5. 2022](https://github.com/austral/austral/releases/tag/v0.0.5)
6. [Release 0.0.6. 2022](https://github.com/austral/austral/releases/tag/v0.0.6)
7. [Release 0.1.0. 2022](https://github.com/austral/austral/releases/tag/v0.1.0)
8. [Release 0.1.1. 2023](https://github.com/austral/austral/releases/tag/v0.1.1)
9. [Release 0.1.2. 2023](https://github.com/austral/austral/releases/tag/v0.1.2)
10. [Release 0.1.3. 2023](https://github.com/austral/austral/releases/tag/v0.1.3)
11. [Release 0.2.0. 2023](https://github.com/austral/austral/releases/tag/v0.2.0)
12. [Source](https://borretti.me/article/introducing-austral#features)
13. [Source](https://borretti.me/article/introducing-austral#linear-borrowing)