• Stars
    star
    550
  • Rank 77,914 (Top 2 %)
  • Language
    Haskell
  • License
    BSD 3-Clause "New...
  • Created about 8 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Minimal implementations for dependent type checking and elaboration

elaboration-zoo

This repo includes a series of Haskell implementations for elaborating dependently typed languages, where packages add progressively more power and functionality. Currently, packages focus on basics of unification, inference and implicit argument handling, and we don't have any inductive types or modules (yet).

Here are some video recordings from a seminar, covering some of the packages here plus additional topics. Note though that the contents of this repo keep changing and they may not be in sync with the recordings.

Work in progress. Each numbered directory contains a stack package. In each directory, the stack build command builds the executable, stack install additionally copies the executable to a PATH-visible stack folder, and stack ghci can be used to load the package.

Generally, every package has a main function which takes some command line flags and reads input from stdin, intended for command line usage, and a main' function with the same functionality which takes flags and input as plain strings, intended for interactive usage in ghci.

More Repositories

1

smalltt

Demo for high-performance type theory elaboration
Lean
489
star
2

flatparse

Fast parsing from bytestrings
Haskell
136
star
3

staged

Staged compilation with dependent types
TeX
119
star
4

setoidtt

Prototype implementations of systems based on setoid type theory
Haskell
64
star
5

cctt

high-performance cubical evaluation
TeX
58
star
6

staged-fusion

Staged push/pull fusion with typed Template Haskell
Haskell
55
star
7

system-f-omega

System F-omega normalization by hereditary substitution in Agda
Agda
54
star
8

normalization-bench

Lambda normalization and conversion checking benchmarks for various implementations
Haskell
51
star
9

implicit-fun-elaboration

Implementation for ICFP 2020 paper
TeX
48
star
10

sett

Setoid type theory implementation
Haskell
38
star
11

polynomial-model

A polynomial model of a Martin-Löf type theory + a bit of game semantics
Agda
29
star
12

universes

Generalized syntax & semantics for universe hierarchies
TeX
28
star
13

thesis

my phd thesis
TeX
26
star
14

stlc-nbe

Correctness of normalization-by-evaluation for STLC
Agda
21
star
15

misc-stuff

Code for tutorials, papers and experiments. Mostly Agda, Coq and Haskell.
Agda
19
star
16

flat-maybe

Rust-style strict Maybe in Haskell: no space/indirection overhead.
Haskell
16
star
17

preordertt

Experiments with preordered set models of (directed) type theories
Agda
15
star
18

SemanticsWithApplications

Formal semantics in Agda.
Agda
14
star
19

pny1-assignment

College assignment writing in which I ramble about type classes and dependent types.
Agda
12
star
20

qiit-generalizations

Extending small finitary QIITs to non-small non-finitary
TeX
9
star
21

dawg

Generation and traversal of highly compressed directed acyclic word graphs.
Haskell
7
star
22

singleton-nats

Unary natural numbers relying on the singletons infrastructure
Haskell
7
star
23

trie-vector

Clojure-style persistent vector for Haskell.
Haskell
6
star
24

BasicHs

Basic Haskell ("funkcionális programozás gyakorlat") lecture notes
Haskell
4
star
25

HaladoHs

2018 Spring "Haladó Haskell" ("Advanced Haskell") course materials (in Hungarian)
Haskell
4
star
26

array-primops

Extra foreign primops for primitive arrays.
Haskell
4
star
27

primdata

Haskell
3
star
28

ind-ind-types

Materials for TYPES 2019 submissions about inductive-inductive types
TeX
3
star
29

dynamic-array

Haskell
3
star
30

dynamic-mvector

A wrapper around MVector that enables push/pop/append functionality.
Haskell
3
star
31

AndrasKovacs.github.io

My github page
HTML
2
star
32

func-lang-2019-1

Funkcionális nyelvek (IPM-18sztKVFPNYEG), 2019 tavasz, EA + GY
Haskell
2
star
33

dawg-gen

Creates highly compressed directed acyclic word graphs from word lists.
Python
2
star
34

elements-of-compsys

Projects for the book "The Elements of Computing Systems"
Assembly
1
star
35

glue

Glued models of type theory, using internal languages
Agda
1
star
36

scrabble-bot

Scrabble move generation
Haskell
1
star
37

elte-cbsd

"Component based software development" course assignments.
Haskell
1
star
38

bi-zipper

Simple bidirectional zipper from any Traversable.
Haskell
1
star
39

sysF-NbE

Normalization by evaluation for intrinsic System F
Agda
1
star
40

haskell-performance

Miscellaneous Haskell benchmarks
Haskell
1
star
41

bf

Fast Haskell brainfuck interpreter
Brainfuck
1
star
42

while-hs

Translation of an undergrad course compiler to Haskell.
Haskell
1
star