mirror of
https://github.com/idris-lang/Idris2.git
synced 2024-12-27 13:43:28 +03:00
251d77b92d
It has always bothered me that 'False' got mapped to tag 1 and 'True' got mapped to tag 0. This doesn't change much in practice (except that perhaps a code generator might notice some useful things in intToBool) but I'm changing it now anyway. Also added a couple of inlinings of boolean operations.
18 lines
506 B
Plaintext
18 lines
506 B
Plaintext
1/1: Building Door (Door.idr)
|
|
Main> (val # y) => ?now_4
|
|
Main> (False # d) => ?now_4
|
|
(True # d) => ?now_5
|
|
Main> 0 m : Type -> Type
|
|
1 d : Door Open
|
|
x : Integer
|
|
0 r : Res Bool (\r => Door (if r then Open else Closed))
|
|
------------------------------
|
|
now_2 : Use Many m ()
|
|
Main> 0 m : Type -> Type
|
|
1 d : Door Closed
|
|
x : Integer
|
|
0 r : Res Bool (\r => Door (if r then Open else Closed))
|
|
------------------------------
|
|
now_3 : Use Many m ()
|
|
Main> Bye for now!
|