mirror of
https://github.com/HigherOrderCO/Bend.git
synced 2024-08-15 23:00:46 +03:00
34 lines
1.3 KiB
Plaintext
34 lines
1.3 KiB
Plaintext
---
|
|
source: tests/golden_tests.rs
|
|
input_file: tests/golden_tests/encode_pattern_match/definition_merge.bend
|
|
---
|
|
Scott
|
|
(Foo) = λa (a λb (b λc (c λf (f 1 1) λg (g 2 2)) λh (h λk (k 1 1) λl (l 2 2))) λm (m λn (n λq (q 3 3) λr (r 3 3)) λs (s λv (v 3 3) λw (w 3 3))))
|
|
|
|
(Either/Left) = λa λb λ* (b a)
|
|
|
|
(Either/Right) = λa λ* λc (c a)
|
|
|
|
(Bool/True) = λa λ* a
|
|
|
|
(Bool/False) = λ* λb b
|
|
|
|
NumScott
|
|
(Foo) = λa (a λb switch b { 0: λc (c λd switch d { 0: λe (e λh switch h { 0: λi (i λj switch j { 0: 1; _: λ* 1; }); _: λ* λk (k λl switch l { 0: 2; _: λ* 2; }); }); _: λ* λm (m λp switch p { 0: λq (q λr switch r { 0: 1; _: λ* 1; }); _: λ* λs (s λt switch t { 0: 2; _: λ* 2; }); }); }); _: λ* λu (u λv switch v { 0: λw (w λz switch z { 0: λab (ab λbb switch bb { 0: 3; _: λ* 3; }); _: λ* λcb (cb λdb switch db { 0: 3; _: λ* 3; }); }); _: λ* λeb (eb λhb switch hb { 0: λib (ib λjb switch jb { 0: 3; _: λ* 3; }); _: λ* λkb (kb λlb switch lb { 0: 3; _: λ* 3; }); }); }); })
|
|
|
|
(Either/Left) = λa λb (b Either/Left/tag a)
|
|
|
|
(Either/Right) = λa λb (b Either/Right/tag a)
|
|
|
|
(Bool/True) = λa (a Bool/True/tag)
|
|
|
|
(Bool/False) = λa (a Bool/False/tag)
|
|
|
|
(Either/Left/tag) = 0
|
|
|
|
(Either/Right/tag) = 1
|
|
|
|
(Bool/True/tag) = 0
|
|
|
|
(Bool/False/tag) = 1
|