polarity-lang/polarity

A language with dependent data and codata types

Rust

140

1,061 commits

updated Sep 13, 2026

See the code

README

The polarity logo

Polarity

A programming language with dependent data and codata types.

Website Rust CI Codecov Coverage


Community

Feel welcome to join our Discord server.

Quickstart

Before installing anything on your machine you can try out polarity in the browser on polarity-lang.github.io. The website also contains complete installation instructions, language documentation and a guide on how to configure editor support using our language server. If you want to install polarity locally on your system then you can use the nix setup documented here, or follow these steps:

  • Install a Rust toolchain using rustup.rs.
  • Clone the repository on your machine:
    git clone https://github.com/polarity-lang/polarity.git
    
  • To locally install the executable, run:
    make install
    
    The binary pol gets installed to ~/.cargo/bin/pol; make sure that this directory is in your $PATH.
  • From the root of this repository, run:
    $ pol run --normalize examples/example.pol
    S(S(S(S(S(Z)))))
    
  • For more information about available subcommands, run:
    pol --help
    

Contributing

Pull requests, bug reports and feature requests are highly welcomed and encouraged! If you want to contribute yourself, understand the code, or run the testsuite, then you can find more developer-focused documentation in the CONTRIBUTING.md.

Licenses

This project is distributed under the terms of both the MIT license and the Apache License 2.0. See LICENSE-APACHE and LICENSE-MIT for details.

Contributors

timsueberkrueb

463 commits

BinderDavid

443 commits

rabuu

69 commits

dependabot[bot]

43 commits

polarity-lang/polarity

A language with dependent data and codata types

Rust

140

1,061 commits

updated Sep 13, 2026

See the code

README

The polarity logo

Polarity

A programming language with dependent data and codata types.

Website Rust CI Codecov Coverage


Community

Feel welcome to join our Discord server.

Quickstart

Before installing anything on your machine you can try out polarity in the browser on polarity-lang.github.io. The website also contains complete installation instructions, language documentation and a guide on how to configure editor support using our language server. If you want to install polarity locally on your system then you can use the nix setup documented here, or follow these steps:

  • Install a Rust toolchain using rustup.rs.
  • Clone the repository on your machine:
    git clone https://github.com/polarity-lang/polarity.git
    
  • To locally install the executable, run:
    make install
    
    The binary pol gets installed to ~/.cargo/bin/pol; make sure that this directory is in your $PATH.
  • From the root of this repository, run:
    $ pol run --normalize examples/example.pol
    S(S(S(S(S(Z)))))
    
  • For more information about available subcommands, run:
    pol --help
    

Contributing

Pull requests, bug reports and feature requests are highly welcomed and encouraged! If you want to contribute yourself, understand the code, or run the testsuite, then you can find more developer-focused documentation in the CONTRIBUTING.md.

Licenses

This project is distributed under the terms of both the MIT license and the Apache License 2.0. See LICENSE-APACHE and LICENSE-MIT for details.

Contributors

timsueberkrueb

463 commits

BinderDavid

443 commits

rabuu

69 commits

dependabot[bot]

43 commits

Languages

Rust

95.1%

TypeScript

3.1%