diff options
author | Greg Brown <greg.brown01@ed.ac.uk> | 2023-01-07 21:10:30 +0000 |
---|---|---|
committer | Greg Brown <greg.brown01@ed.ac.uk> | 2023-01-07 21:58:30 +0000 |
commit | ff65d1e285a97295708899bebdcc83ec214cd347 (patch) | |
tree | 7a786ef895ff2dea0ba31b3c7cd7397024214a10 /src/Obs/NormalForm.idr | |
parent | f38761fd38207a6d9a6cc2134384cb7115a5e998 (diff) |
Add containers types.
Containers are syntactic sugar. They are also completely untested.
Diffstat (limited to 'src/Obs/NormalForm.idr')
-rw-r--r-- | src/Obs/NormalForm.idr | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/Obs/NormalForm.idr b/src/Obs/NormalForm.idr index 0b9d2b6..b4b9f94 100644 --- a/src/Obs/NormalForm.idr +++ b/src/Obs/NormalForm.idr @@ -2,6 +2,7 @@ module Obs.NormalForm import Data.List.Elem +import Obs.Logging import Obs.Pretty import Obs.Substitution import Obs.Universe @@ -265,3 +266,11 @@ PointedRename Relevance (\r => Maybe String) NormalForm where point {s = Irrelevant} _ _ = Irrel point {s = Relevant} var i = Ntrl (Var {var = maybe "" id var, i}) + +-- Useful Constructors --------------------------------------------------------- + +public export +record ContainerTy (ctx : List Relevance) where + constructor MkContainerTy + inputSort, shapeSort, positionSort, outputSort : Universe + input, output : TypeNormalForm ctx |