rems-project / sail

Sail architecture definition language
Other
617 stars 112 forks source link

Add kind-inference algorithm #641

Closed Alasdair closed 3 months ago

Alasdair commented 3 months ago

Previously kinds needed to be annotated on type synonyms, i.e.

type option_syn('a : Type) -> Type = option('a)

and on type constructors

struct S('a : Int, 'b : Type) = ...

This commit adds a kind-inference algorithm, so that these can become

type option_syn('a) = option('a)

struct S('a, 'b) = ...
github-actions[bot] commented 3 months ago

Test Results

    9 files  ± 0     20 suites  ±0   0s :stopwatch: ±0s   662 tests + 5    662 :white_check_mark: + 5  0 :zzz: ±0  0 :x: ±0  2 111 runs  +15  2 110 :white_check_mark: +15  1 :zzz: ±0  0 :x: ±0 

Results for commit 0588c2e4. ± Comparison against base commit 13d94588.

:recycle: This comment has been updated with latest results.