Skip to content

Commit

Permalink
feat: initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
david-christiansen committed Feb 28, 2024
0 parents commit 304dc71
Show file tree
Hide file tree
Showing 8 changed files with 82 additions and 0 deletions.
45 changes: 45 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
on:
push:
pull_request:

name: Continuous Integration

jobs:
build:
strategy:
matrix:
toolchain:
- "leanprover/lean4:4.5.0"
- "leanprover/lean4:4.6.0-rc1"
name: Build and test
runs-on: ubuntu-latest
steps:
- name: Install elan
run: |
set -o pipefail
curl -sSfL https://github.com/leanprover/elan/releases/download/v3.0.0/elan-x86_64-unknown-linux-gnu.tar.gz | tar xz
./elan-init -y --default-toolchain none
echo "$HOME/.elan/bin" >> $GITHUB_PATH
- uses: actions/checkout@v3

- name: List all files
run: |
find . -name "*.lean" -type f
- name: Select Lean version
run: |
echo "${{ matrix.toolchain }}" > lean-toolchain
- name: Lean version
run: |
lean --version
- name: Cache .lake
uses: actions/cache@v3
with:
path: .lake
key: ${{ runner.os }}-${{ hashFiles('lake-manifest.json') }}-${{ hashFiles('lean-toolchain') }}

- name: Build the project
run: |
lake build
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
/build
/lakefile.olean
/lake-packages/*
4 changes: 4 additions & 0 deletions Main.lean
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
import «Subverso»

def main : IO Unit :=
IO.println s!"Hello, {hello}!"
9 changes: 9 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Subverso - Verso's Library for Subprocesses

Subverso is a support library that allows a
[Verso](https://github.com/leanprover/verso) document to describe Lean
code written in multiple versions of Lean. Verso itself may be tied to
new Lean versions, because it makes use of new compiler features. This
library will maintain broader compatibility with various Lean versions.


3 changes: 3 additions & 0 deletions Subverso.lean
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
-- This module serves as the root of the `Subverso` library.
-- Import modules here that should be built as part of the library.
import «Subverso».Basic
1 change: 1 addition & 0 deletions Subverso/Basic.lean
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
def hello := "world"
16 changes: 16 additions & 0 deletions lakefile.lean
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import Lake
open Lake DSL

package «subverso» where
-- add package configuration options here

lean_lib «Subverso» where
-- add library configuration options here

@[default_target]
lean_exe «subverso» where
root := `Main
-- Enables the use of the Lean interpreter by the executable (e.g.,
-- `runFrontend`) at the expense of increased binary size on Linux.
-- Remove this line if you do not need such functionality.
supportInterpreter := true
1 change: 1 addition & 0 deletions lean-toolchain
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
stable

0 comments on commit 304dc71

Please sign in to comment.