Added type signatures to more pair accessors in typed Scheme's base env.
This commit is contained in:
parent
b64fb126f6
commit
849ee86c85
|
@ -78,8 +78,54 @@
|
||||||
(cl->* [->acc (list (-pair a (-pair b (-pair c d)))) d (list -cdr -cdr -cdr)]
|
(cl->* [->acc (list (-pair a (-pair b (-pair c d)))) d (list -cdr -cdr -cdr)]
|
||||||
[-> (-lst a) (-lst a)]))]
|
[-> (-lst a) (-lst a)]))]
|
||||||
|
|
||||||
[cadddr (-poly (a) (-> (-lst a) a))]
|
[caaaar (-poly (a b c d e)
|
||||||
[cddddr (-poly (a) (-> (-lst a) (-lst a)))]
|
(cl->* [->acc (list (-pair (-pair (-pair (-pair a b) c) d) e)) a (list -car -car -car -car)]
|
||||||
|
[-> (-lst (-lst (-lst (-lst a)))) a]))]
|
||||||
|
[cdaaar (-poly (a b c d e)
|
||||||
|
(cl->* [->acc (list (-pair (-pair (-pair (-pair a b) c) d) e)) b (list -cdr -car -car -car)]
|
||||||
|
[-> (-lst (-lst (-lst (-lst a)))) (-lst a)]))]
|
||||||
|
[cadaar (-poly (a b c d e)
|
||||||
|
(cl->* [->acc (list (-pair (-pair (-pair a (-pair b c)) d) e)) b (list -car -cdr -car -car)]
|
||||||
|
[-> (-lst (-lst (-lst a))) a]))]
|
||||||
|
[cddaar (-poly (a b c d e)
|
||||||
|
(cl->* [->acc (list (-pair (-pair (-pair b (-pair b c)) d) e)) c (list -cdr -cdr -car -car)]
|
||||||
|
[-> (-lst (-lst (-lst a))) (-lst a)]))]
|
||||||
|
[caadar (-poly (a b c d e)
|
||||||
|
(cl->* [->acc (list (-pair (-pair a (-pair (-pair b c) d)) e)) b (list -car -car -cdr -car)]
|
||||||
|
[-> (-lst (-lst (-lst a))) a]))]
|
||||||
|
[cdadar (-poly (a b c d e)
|
||||||
|
(cl->* [->acc (list (-pair (-pair a (-pair (-pair b c) d)) e)) c (list -cdr -car -cdr -car)]
|
||||||
|
[-> (-lst (-lst (-lst a))) (-lst a)]))]
|
||||||
|
[caddar (-poly (a b c d e)
|
||||||
|
(cl->* [->acc (list (-pair (-pair a (-pair b (-pair c d))) e)) c (list -car -cdr -cdr -car)]
|
||||||
|
[-> (-lst (-lst a)) a]))]
|
||||||
|
[cdddar (-poly (a b c d e)
|
||||||
|
(cl->* [->acc (list (-pair (-pair a (-pair b (-pair c d))) e)) d (list -cdr -cdr -cdr -car)]
|
||||||
|
[-> (-lst (-lst a)) (-lst a)]))]
|
||||||
|
[caaadr (-poly (a b c d e)
|
||||||
|
(cl->* [->acc (list (-pair a (-pair (-pair (-pair b c) d) e))) b (list -car -car -car -cdr)]
|
||||||
|
[-> (-lst (-lst (-lst a))) a]))]
|
||||||
|
[cdaadr (-poly (a b c d e)
|
||||||
|
(cl->* [->acc (list (-pair a (-pair (-pair (-pair b c) d) e))) c (list -cdr -car -car -cdr)]
|
||||||
|
[-> (-lst (-lst (-lst a))) (-lst a)]))]
|
||||||
|
[cadadr (-poly (a b c d e)
|
||||||
|
(cl->* [->acc (list (-pair a (-pair (-pair b (-pair c d)) e))) c (list -car -cdr -car -cdr)]
|
||||||
|
[-> (-lst (-lst a)) a]))]
|
||||||
|
[cddadr (-poly (a b c d e)
|
||||||
|
(cl->* [->acc (list (-pair a (-pair (-pair b (-pair c d)) e))) d (list -cdr -cdr -car -cdr)]
|
||||||
|
[-> (-lst (-lst a)) (-lst a)]))]
|
||||||
|
[caaddr (-poly (a b c d e)
|
||||||
|
(cl->* [->acc (list (-pair a (-pair b (-pair (-pair c d) e)))) c (list -car -car -cdr -cdr)]
|
||||||
|
[-> (-lst (-lst a)) a]))]
|
||||||
|
[cdaddr (-poly (a b c d e)
|
||||||
|
(cl->* [->acc (list (-pair a (-pair b (-pair (-pair c d) e)))) d (list -cdr -car -cdr -cdr)]
|
||||||
|
[-> (-lst (-lst a)) (-lst a)]))]
|
||||||
|
[cadddr (-poly (a b c d e)
|
||||||
|
(cl->* [->acc (list (-pair a (-pair b (-pair c (-pair d e))))) d (list -car -cdr -cdr -cdr)]
|
||||||
|
[-> (-lst a) a]))]
|
||||||
|
[cddddr (-poly (a b c d e)
|
||||||
|
(cl->* [->acc (list (-pair a (-pair b (-pair c (-pair d e))))) e (list -cdr -cdr -cdr -cdr)]
|
||||||
|
[-> (-lst a) (-lst a)]))]
|
||||||
|
|
||||||
|
|
||||||
[first (-poly (a b)
|
[first (-poly (a b)
|
||||||
|
@ -92,9 +138,13 @@
|
||||||
[third (-poly (a b c d)
|
[third (-poly (a b c d)
|
||||||
(cl->* [->acc (list (-pair a (-pair b (-pair c (-lst d))))) c (list -car -cdr -cdr)]
|
(cl->* [->acc (list (-pair a (-pair b (-pair c (-lst d))))) c (list -car -cdr -cdr)]
|
||||||
[->* (list (-lst a)) a]))]
|
[->* (list (-lst a)) a]))]
|
||||||
[fourth (-poly (a) ((-lst a) . -> . a))]
|
[fourth (-poly (a) ((-lst a) . -> . a))]
|
||||||
[fifth (-poly (a) ((-lst a) . -> . a))]
|
[fifth (-poly (a) ((-lst a) . -> . a))]
|
||||||
[sixth (-poly (a) ((-lst a) . -> . a))]
|
[sixth (-poly (a) ((-lst a) . -> . a))]
|
||||||
|
[seventh (-poly (a) ((-lst a) . -> . a))]
|
||||||
|
[eigth (-poly (a) ((-lst a) . -> . a))]
|
||||||
|
[ninth (-poly (a) ((-lst a) . -> . a))]
|
||||||
|
[tenth (-poly (a) ((-lst a) . -> . a))]
|
||||||
[rest (-poly (a b)
|
[rest (-poly (a b)
|
||||||
(cl->*
|
(cl->*
|
||||||
(->acc (list (-pair a (-lst b))) (-lst b) (list -cdr))
|
(->acc (list (-pair a (-lst b))) (-lst b) (list -cdr))
|
||||||
|
|
Loading…
Reference in New Issue
Block a user