lean4-htt/tests/lean/PPRoundtrip.lean.expected.out
Leonardo de Moura 483f32edd8 feat: in pure code, do use assume Id monad at do notation
This feature produced counterintuitive behavior and confused users.
See discussion at #770.

As pointed out by @tydeu, it is not too much work to write `Id.run <|`
before the `do` when we want to use the `do` notation in pure code.

closes #770
2021-12-10 12:55:14 -08:00

66 lines
871 B
Text
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Prop
Type
Type
Type 1
Nat
List Nat
id Nat
id (id (id Nat))
List Nat
@id Type Nat
List.{0} Nat
id.{2} Nat
Sum.{0, 0} Nat Nat
id (@id Type Nat)
fun a => a
fun a => a
fun a b => a
fun a b => a
fun {a b} => a
typeAs
({α : Type} →
αα)
fun {α} a => a
fun {α}
[inst :
ToString α]
a =>
@toString α inst a
(α : Type) → α
(α β : Type) → α
Type → Type → Type
(α : Type) → αα
{α : Type} → α
{α : Type} →
[inst :
ToString α] →
α
∀ (x : Nat), x = x
∀ {x : Nat}
[inst :
ToString Nat],
x = x
∀ x, x = x
0
1
42
"hi"
{ type := Nat,
val := 0 :
PointedType }
(1, 2, 3)
(1, 2).fst
decide (1 < 2) ||
true
id (fun a => a) 0
typeAs (Id Nat)
(let x := 1;
do
discard (pure 2)
let y : Nat := 3
pure (x + y))
typeAs (Id Nat)
(pure 1 >>= pure)
(0 ≤ 1) = False
(0 = 1) = False
- -0