namespace http://github.com/ComFreek/mmtpygments ❚
meta ?purpose "screenshot for readme" ❚
theory Lists =
	list: type ⟶ type ❙
	nil:    {A: type} list A                ❘ # [] %I1 prec 150 ❙
	cons:   {A: type} A ⟶ list A ⟶ list A ❘ # 2 :: 3 prec 100 ❙
	append: {A: type} A ⟶ list A ⟶ list A ❘ # 3 ;; 2 prec 80  ❙
	
	concat: {A: type} list A ⟶ list A ⟶ list A
		❘ meta ?purpose "for concatenation"
		❘ // comment: choose a better notation?
		❘ # 2 ::: 3 prec 50
	❙
❚
view reverse: ?Lists -> ?Lists =
	list = list ❙
	nil = nil ❙
	cons = [A, a, l] l ;; a ❘ meta ?coolness "beyond imagination" ❙
	append = [A, a, l] a :: l ❙
	concat = ??? ❘ // missing ❙
❚