An open API service indexing awesome lists of open source software.

https://github.com/jfdm/velo-lang

Velo is a tiny language (STLC + Hutton's Razor with Bools) to showcase & explore efficient verified implementations in Idris2.
https://github.com/jfdm/velo-lang

dependent-types idris2

Last synced: 5 months ago
JSON representation

Velo is a tiny language (STLC + Hutton's Razor with Bools) to showcase & explore efficient verified implementations in Idris2.

Awesome Lists containing this project

README

          

# Velo.

[![Build Status](https://github.com/jfdm/velo-lang/actions/workflows/ci-ubuntu.yml/badge.svg)](https://github.com/jfdm/velo-lang/actions/workflows/ci-ubuntu.yml)

A tiny language to explore efficient verified implementations of functional languages in Idris2.

## Artefact

We also include scripts to generate a reproducible artefact.

Please consult the following project to generate the base virtual box image required, and how we approach the building of the artefact.

https://github.com/jfdm/packer-idris

You will also need to have working installations of [Katla](https://github.com/idris-community/katla) to facilitate source code highlighting.

Once you have generated the image you can generate the artefact as follows:

```bash
SOURCE_VM="" make artefact
```

This will generate in `artefact` the following files:

1. `velo.box` :: A Virtual Box virtual machine that contains Velo's source code & test suite;
2. `velo.tar.gz` :: A copy of Velo's source code, and generated IdrisDoc;
3. `velo_doc.tar.gz` :: A copy of the IdrisDoc for the coding project;
4. `velo_html.tar.gz` :: A copy of the katla generated html showing semantically highlighted code;
4. `velo.pdf` :: A copy of the submitted paper;