Skip to content
/ mist Public
forked from ucsd-progsys/mist

A tiny language for teaching and experimenting with Refinement Types

License

Notifications You must be signed in to change notification settings

atondwal/mist

 
 

Repository files navigation

Mist

A tiny language for teaching and experimenting with refinement types, in the style of LiquidHaskell.

TODO

  • BUILD initial code
  • STEAL make grammar more Haskelly
  • PARSE in all Nano tests (but using Garter representation)
  • PORT all the garter tests (using Haskelly syntax)
  • PRINT all inferred (top-level) types
  • ADD elaboration @a @b etc.
  • PRINT "elaborated" expressions
  • TYPE refinement type constraints
  • GEN refinement type constraints
  • SOLVE refinement type constraints (with fixpoint)

Modules

  • Language.Mist.Utils.Misc
  • Language.Mist.Utils.UX
  • Language.Mist.Utils.Test
  • Language.Mist.Basic.Types
  • Language.Mist.Basic.ANF
  • Language.Mist.Basic.WellFormed
  • Language.Mist.Basic.Check
  • Language.Mist.Liquid.Types
  • Language.Mist.Liquid.Check

About

A tiny language for teaching and experimenting with Refinement Types

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Haskell 83.4%
  • SMT 12.6%
  • F* 1.8%
  • Racket 1.3%
  • OCaml 0.9%