README.md 1.05 KB
Newer Older
André Pacak's avatar
readme  
André Pacak committed
1
## iTypes
André Pacak's avatar
André Pacak committed
2

André Pacak's avatar
readme  
André Pacak committed
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
It is crucial that developers receive instantaneous feedback while writing 
programs, e.g. type errors of a program.

The goal of this project is to see how type checkers can be incrementalized in 
order to provide immediate feedback for the developer.
As a starting point we are investigating bidirectional type systems.

We want to provide a domain-specific language that enables language designers to define
bidirectional type systems.
Additionally, we want to implement a compiler that translates bidirectional
type systems into a format that can be incrementalized.

Currently, we are exploring how to manually transform bidirectional type system systematically 
in order to figure out how to structure the compilation pipeline.

## Getting Started

20 21 22 23 24
To build the type checkers in Haskell, install the [Stack](https://www.haskellstack.org) build tool and run `stack build` within 
the directory `haskell` of the project. 

To build the type checkers in IncA, install [IncA](https://github.com/szabta89/IncA) and open the directory `inca-translation` with MPS.