# Virgil

> fast and lightweight systems programming language

**Wikidata**: [Q138779924](https://www.wikidata.org/wiki/Q138779924)  
**Source**: https://4ort.xyz/entity/virgil-q138779924

## Summary
Virgil is a fast and lightweight systems programming language. It is an implementation of a programming language and is itself written in Virgil, Java, and another language identified as Q15777. The language was created by developer Ben L. Titzer, with its inception dated to March 17, 2012.

## Key Facts
*   **Creator and Developer:** Virgil was created and is developed by Ben L. Titzer.
*   **Inception:** The language's inception date is March 17, 2012, with a reference to an initial GitHub commit.
*   **Classification:** Virgil is an instance of a systems programming language, an implementation of a programming language, a reference implementation, and a compiler.
*   **License:** It is distributed under the Apache Software License 2.0 and is classified as free and open-source software.
*   **Platforms:** Virgil targets the Java platform, WebAssembly, IA-32, and an entity identified as Q272629.
*   **Operating Systems:** It is designed to run on Linux, Darwin, and is cross-platform.
*   **Implementation Languages:** The project is implemented in Virgil, Java, and Q15777.
*   **Source Code:** The source code repository is hosted on GitHub at https://github.com/titzer/virgil.
*   **Copyright Status:** The software is copyrighted.

## FAQs
### Q: Who created Virgil and when was it started?
A: Virgil was created by Ben L. Titzer. The project's inception is marked as March 17, 2012, based on an initial commit to its source code repository.

### Q: What kind of programming language is Virgil?
A: Virgil is formally classified as a systems programming language. It is also considered an implementation of a programming language, a reference implementation, and a compiler.

### Q: What are the technical specifications and licensing for Virgil?
A: Virgil is distributed as free and open-source software under the Apache Software License 2.0. It is designed to be cross-platform, targeting systems including the Java platform, WebAssembly, IA-32, and Linux.

## Why It Matters
Virgil represents a specific tool within the broader class of systems programming languages, a category fundamental to low-level computing and machine instruction. Its creation by Ben L. Titzer, a co-creator of WebAssembly, situates it within a context of advanced systems-level innovation. By providing a fast and lightweight option that compiles to platforms like WebAssembly and the JVM, Virgil offers a specialized approach for systems programming tasks. Its existence as a reference implementation and a compiler demonstrates a practical application of the systems programming language classification, contributing to the diversity of tools available for foundational software development.

## Notable For
*   **Creator's Profile:** Its creator, Ben L. Titzer, is also noted as a co-creator of WebAssembly.
*   **Multi-Target Compiler:** It compiles to multiple target platforms, including the Java platform and WebAssembly.
*   **Self-Hosting Implementation:** The project is implemented partially in its own language, Virgil.

## Body

### Classification and Type
Virgil is categorically defined as a systems programming language, placing it in a class of languages designed for low-level system instruction. Beyond this primary classification, it is also an instance of several other entities: an implementation of a programming language, a reference implementation, a compiler, and free and open-source software.

### Creation and Development
The language was created and is developed by Ben L. Titzer. The project's inception is officially recorded as March 17, 2012, with a specific reference to an early commit (`6a17326d455e7e873b5248fc7ec72318c5858291`) in its GitHub repository.

### Technical Specifications
Virgil is characterized as fast and lightweight. It is engineered to be cross-platform, with support for operating systems including Linux and Darwin. The language implementation targets several platforms:
*   Java platform
*   WebAssembly
*   IA-32
*   An entity identified by the Wikidata ID Q272629

### Implementation and Licensing
The Virgil project is itself written in multiple programming languages: Virgil, Java, and another language referenced as Q15777. It is released as free and open-source software under the Apache Software License 2.0, with a copyright status of "copyrighted". The primary source code repository is available on GitHub.

### External Documentation
A descriptive article about Virgil is documented at the URL `https://thenewstack.io/introduction-to-virgil-a-new-language-by-wasms-co-creator/`, with the language of the article noted as English.

## References

1. [Source](https://github.com/titzer/virgil/commit/6a17326d455e7e873b5248fc7ec72318c5858291)