github.com/SwirlLang/Swirl ↗

An LLVM-based systems programming language for learning and experimentation.

An animated visualization of SwirlLang/Swirl's Git history from August 2021 to March 2023, built by 16 contributors. The codebase reached 1,252 lines, mostly C++. The video runs 1 minute 3 seconds.

Render your own repo

Turn any GitHub repository into a video like this — free sample in seconds.

Visualize your own →

Open this visualization on its own page →

Language

C++

Contributors

16

Lines of Code

1,252

From

2021-08-20

To

2023-03-06

Advertisement

About SwirlLang/Swirl

Swirl is a statically and strongly-typed systems programming language built on LLVM for native code generation. It is designed as a learning and experimentation platform rather than for production use. The language features a module system with export controls, allowing developers to organize code across multiple files while managing symbol visibility between them.

The compiler architecture implements a traditional multi-stage pipeline starting with lexical analysis and parsing to build abstract syntax trees, followed by semantic analysis that spans symbol registration, symbol resolution, and type resolution. The compiler performs semantic analysis and subsequent passes in parallel for independent module batches to improve efficiency. After semantic analysis, the compiler handles compile-time evaluation for constexpr-like constructs and monomorphizes generic types based on their usage.

The project provides documentation, a VS Code extension for language support, and maintains an active Discord community for contributors. Development follows a standard open-source workflow with a GitHub issue tracker for bug reports and feature requests, welcoming forks and pull requests from the community.

Advertisement

Share this video