Changeset 35497 in project


Ignore:
Timestamp:
04/30/18 15:35:10 (4 weeks ago)
Author:
kooda
Message:

Update CHICKEN 5's srfi-1 egg

Location:
release/5/srfi-1
Files:
6 edited
1 copied

Legend:

Unmodified
Added
Removed
  • release/5/srfi-1/tags/1.3/srfi-1.egg

    r34025 r35497  
    1 ;; -*- Scheme -*-
    2 
     1;; -*- scheme -*-
    32((synopsis "SRFI-1 list library")
    43 (author "Olin Shivers")
     
    76 (test-dependencies test)
    87 (license "BSD")
    9  (components (extension srfi-1 (types-file))))
     8 (components (extension srfi-1 (types-file (predefined)))))
  • release/5/srfi-1/tags/1.3/srfi-1.scm

    r33767 r35497  
    4040   span break span! break!)
    4141
    42 (import (except scheme member assoc) chicken)
     42(import (except (scheme) member assoc)
     43        (chicken base)
     44        (chicken fixnum)
     45        (chicken platform))
    4346
    4447(register-feature! 'srfi-1)
  • release/5/srfi-1/tags/1.3/srfi-1.types

    r34718 r35497  
    1 ; GENERATED BY CHICKEN 5.0.0 FROM /home/sjamaan/src/chicken-eggs/release/5/srfi-1/trunk/srfi-1.scm
    2 
    3 ; END OF FILE
     1;; srfi-1 -*- Scheme -*-
     2
     3(srfi-1#alist-cons
     4 (forall (a b c) (#(procedure #:pure) srfi-1#alist-cons (a b (list-of c))
     5                  (pair (pair a b) (list-of c)))))
     6(srfi-1#alist-copy
     7 (forall (a b) (#(procedure #:clean #:enforce) srfi-1#alist-copy
     8                ((list-of (pair a b))) (list-of (pair a b)))))
     9(srfi-1#alist-delete
     10 (forall (a b c) (#(procedure #:clean) srfi-1#alist-delete
     11                  (a (list-of (pair b c)) #!optional (procedure (a b) *))
     12                  (list-of (pair b c)))))
     13(srfi-1#alist-delete!
     14 (forall (a b c) (#(procedure) srfi-1#alist-delete!
     15                  (a (list-of (pair b c)) #!optional (procedure (a b) *))
     16                  (list-of (pair b c)))))
     17(srfi-1#any (forall (a) (#(procedure #:enforce) srfi-1#any ((procedure (a #!rest) *) (list-of a) #!rest list) *)))
     18(srfi-1#append! (#(procedure #:enforce) srfi-1#append! (#!rest list) list))
     19
     20(srfi-1#append-map
     21 (forall (a b) (#(procedure #:enforce) srfi-1#append-map ((procedure (a #!rest) (list-of b)) (list-of a) #!rest list)
     22                           (list-of b))))
     23
     24(srfi-1#append-map!
     25 (forall (a b) (#(procedure #:enforce) srfi-1#append-map! ((procedure (a #!rest) (list-of b)) (list-of a) #!rest list)
     26                           (list-of b))))
     27
     28(srfi-1#append-reverse (#(procedure #:clean #:enforce) srfi-1#append-reverse (list list) list))
     29(srfi-1#append-reverse! (#(procedure #:enforce) srfi-1#append-reverse! (list list) list))
     30(srfi-1#assoc
     31 (forall (a b c) (#(procedure #:clean #:foldable) srfi-1#assoc
     32                  (a (list-of (pair b c)) #!optional (procedure (a b) *))
     33                  (or false (pair b c)))) ; sic
     34 ((* null) (let ((#(tmp) #(1))) '#f))
     35 (((or symbol procedure immediate) (list-of pair))
     36  (##core#inline "C_u_i_assq" #(1) #(2)))
     37 ((* (list-of (pair (or symbol procedure immediate) *)))
     38  (##core#inline "C_u_i_assq" #(1) #(2))))
     39
     40(srfi-1#break (forall (a) (#(procedure #:enforce) srfi-1#break ((procedure (a) *) (list-of a)) (list-of a) (list-of a))))
     41(srfi-1#break! (forall (a) (#(procedure #:enforce) srfi-1#break! ((procedure (a) *) (list-of a)) (list-of a) (list-of a))))
     42(srfi-1#car+cdr (forall (a b) (#(procedure #:clean #:enforce) srfi-1#car+cdr ((pair a b)) a b)))
     43(srfi-1#circular-list (#(procedure #:clean) srfi-1#circular-list (#!rest) list))
     44
     45(srfi-1#circular-list? (#(procedure #:clean #:foldable) srfi-1#circular-list? (*) boolean)
     46                ((null) (let ((#(tmp) #(1))) '#f)))
     47
     48(srfi-1#concatenate (#(procedure #:clean #:enforce) srfi-1#concatenate ((list-of list)) list))
     49(srfi-1#concatenate! (#(procedure #:enforce) srfi-1#concatenate! ((list-of list)) list))
     50(srfi-1#cons* (forall (a) (#(procedure #:clean) srfi-1#cons* (a #!rest) (pair a *))))
     51(srfi-1#count (forall (a) (#(procedure #:enforce) srfi-1#count ((procedure (a #!rest) *) (list-of a) #!rest list) fixnum)))
     52(srfi-1#delete (forall (a b) (#(procedure #:enforce) srfi-1#delete (a (list-of b) #!optional (procedure (a *) *)) (list-of b))))
     53(srfi-1#delete! (forall (a b) (#(procedure #:enforce) srfi-1#delete! (a (list-of b) #!optional (procedure (a *) *)) (list-of b))))
     54
     55(srfi-1#delete-duplicates
     56 (forall (a) (#(procedure #:enforce) srfi-1#delete-duplicates ((list-of a) #!optional (procedure (a *) *)) (list-of a))))
     57
     58(srfi-1#delete-duplicates!
     59 (forall (a) (#(procedure #:enforce) srfi-1#delete-duplicates! ((list-of a) #!optional (procedure (a *) *)) (list-of a))))
     60
     61(srfi-1#dotted-list? (#(procedure #:clean #:foldable) srfi-1#dotted-list? (*) boolean))
     62(srfi-1#drop (forall (a) (#(procedure #:enforce) srfi-1#drop ((list-of a) fixnum) (list-of a))))
     63(srfi-1#drop-right (forall (a) (#(procedure #:enforce) srfi-1#drop-right ((list-of a) fixnum) (list-of a))))
     64(srfi-1#drop-right! (forall (a) (#(procedure #:enforce) srfi-1#drop-right! ((list-of a) fixnum) (list-of a))))
     65(srfi-1#drop-while (forall (a) (#(procedure #:enforce) srfi-1#drop-while ((procedure (a) *) (list-of a)) (list-of a))))
     66(srfi-1#eighth (#(procedure #:clean #:enforce #:foldable) srfi-1#eighth (pair) *))
     67
     68(srfi-1#every
     69 (forall (a) (#(procedure #:enforce) srfi-1#every ((procedure (a #!rest) *) (list-of a) #!rest list) *)))
     70
     71(srfi-1#fifth (#(procedure #:clean #:enforce #:foldable) srfi-1#fifth (pair) *))
     72(srfi-1#filter (forall (a) (#(procedure #:enforce) srfi-1#filter ((procedure (a) *) (list-of a)) (list-of a))))
     73(srfi-1#filter! (forall (a) (#(procedure #:enforce) srfi-1#filter! ((procedure (a) *) (list-of a)) (list-of a))))
     74
     75(srfi-1#filter-map
     76 (forall (a b) (#(procedure #:enforce) srfi-1#filter-map ((procedure (a #!rest) b) (list-of a) #!rest list) (list-of b))))
     77
     78(srfi-1#find (forall (a) (#(procedure #:enforce) srfi-1#find ((procedure (a) *) (list-of a)) *)))
     79(srfi-1#find-tail (forall (a) (#(procedure #:enforce) srfi-1#find-tail ((procedure (a) *) (list-of a)) *)))
     80
     81(srfi-1#first (forall (a) (#(procedure #:clean #:enforce #:foldable) srfi-1#first ((pair a *)) a))
     82       ((pair) (##core#inline "C_u_i_car" #(1))))
     83
     84(srfi-1#fold (#(procedure #:enforce) srfi-1#fold ((procedure (* #!rest) *) * #!rest list) *)) ;XXX
     85(srfi-1#fold-right (#(procedure #:enforce) srfi-1#fold-right ((procedure (* #!rest) *) * #!rest list) *)) ;XXX
     86
     87(srfi-1#fourth (forall (a) (#(procedure #:clean #:enforce #:foldable) srfi-1#fourth ((pair * (pair * (pair * (pair a *))))) a))
     88        (((pair * (pair * (pair * (pair * *)))))
     89         (##core#inline "C_u_i_car"
     90                        (##core#inline "C_u_i_cdr"
     91                                       (##core#inline "C_u_i_cdr"
     92                                                      (##core#inline "C_u_i_cdr" #(1)))))))
     93
     94(srfi-1#iota (#(procedure #:clean #:enforce) srfi-1#iota (fixnum #!optional fixnum fixnum) (list-of number)))
     95(srfi-1#last (#(procedure #:clean #:enforce #:foldable) srfi-1#last (pair) *))
     96(srfi-1#last-pair (#(procedure #:clean #:enforce #:foldable) srfi-1#last-pair (pair) *))
     97(srfi-1#length+ (#(procedure #:clean #:enforce #:foldable) srfi-1#length+ (list) *))
     98(srfi-1#list-copy (forall (a) (#(procedure #:pure) srfi-1#list-copy (a) a)))
     99(srfi-1#list-index (forall (a) (#(procedure #:enforce) srfi-1#list-index ((procedure (a #!rest) *) (list-of a) #!rest list) *)))
     100(srfi-1#list-tabulate (forall (a) (#(procedure #:enforce) srfi-1#list-tabulate (fixnum (procedure (fixnum) a)) (list-of a))))
     101(srfi-1#list= (#(procedure #:clean #:enforce) srfi-1#list= (#!optional (procedure (list list) *) #!rest list) boolean)
     102       (() '#t)
     103       ((procedure) (let ((#(tmp) #(1))) '#t)))
     104
     105(srfi-1#lset-adjoin
     106 (forall (a) (#(procedure #:enforce) srfi-1#lset-adjoin ((procedure (a a) *) (list-of a) #!rest a) (list-of a)))
     107 ((procedure list) (let ((#(tmp) #(1))) #(2))))
     108
     109(srfi-1#lset-diff+intersection
     110 (forall (a)
     111         (#(procedure #:enforce) srfi-1#lset-diff+intersection ((procedure (a a) *) (list-of a) #!rest (list-of a))
     112                     (list-of a) (list-of a)))
     113 ((procedure list) (let ((#(tmp) #(1))) (##sys#values #(2) '()))))
     114
     115(srfi-1#lset-diff+intersection!
     116 (forall (a)
     117         (#(procedure #:enforce) srfi-1#lset-diff+intersection! ((procedure (a a) *) (list-of a) #!rest (list-of a))
     118                     (list-of a) (list-of a)))
     119 ((procedure list) (let ((#(tmp) #(1))) (##sys#values #(2) '()))))
     120
     121(srfi-1#lset-difference
     122 (forall (a) (#(procedure #:enforce) srfi-1#lset-difference ((procedure (a a) *) (list-of a) #!rest (list-of a)) (list-of a)))
     123 ((procedure list) (let ((#(tmp) #(1))) #(2))))
     124
     125(srfi-1#lset-difference!
     126 (forall (a) (#(procedure #:enforce) srfi-1#lset-difference! ((procedure (a a) *) (list-of a) #!rest (list-of a)) (list-of a)))
     127 ((procedure list) (let ((#(tmp) #(1))) #(2))))
     128
     129(srfi-1#lset-intersection
     130 (forall (a) (#(procedure #:enforce) srfi-1#lset-intersection ((procedure (a a) *) (list-of a) #!rest (list-of a)) (list-of a)))
     131 ((procedure list) (let ((#(tmp) #(1))) #(2))))
     132
     133(srfi-1#lset-intersection!
     134 (forall (a) (#(procedure #:enforce) srfi-1#lset-intersection! ((procedure (a a) *) (list-of a) #!rest (list-of a)) (list-of a)))
     135 ((procedure list) (let ((#(tmp) #(1))) #(2))))
     136
     137(srfi-1#lset-union
     138 (forall (a) (#(procedure #:enforce) srfi-1#lset-union ((procedure (a a) *) #!rest (list-of a)) (list-of a)))
     139 ((procedure) (let ((#(tmp) #(1))) '()))
     140 ((procedure list) (let ((#(tmp) #(1))) #(2))))
     141
     142(srfi-1#lset-union!
     143 (forall (a) (#(procedure #:enforce) srfi-1#lset-union! ((procedure (a a) *) #!rest (list-of a)) (list-of a)))
     144 ((procedure) (let ((#(tmp) #(1))) '()))
     145 ((procedure list) (let ((#(tmp) #(1))) #(2))))
     146
     147(srfi-1#lset-xor
     148 (forall (a) (#(procedure #:enforce) srfi-1#lset-xor ((procedure (a a) *) #!rest (list-of a)) (list-of a)))
     149 ((procedure) (let ((#(tmp) #(1))) '()))
     150 ((procedure list) (let ((#(tmp) #(1))) #(2))))
     151
     152(srfi-1#lset-xor!
     153 (forall (a) (#(procedure #:enforce) srfi-1#lset-xor! ((procedure (a a) *) #!rest (list-of a)) (list-of a)))
     154 ((procedure) (let ((#(tmp) #(1))) '()))
     155 ((procedure list) (let ((#(tmp) #(1))) #(2))))
     156
     157(srfi-1#lset<=
     158 (forall (a) (#(procedure #:enforce) srfi-1#lset<= ((procedure (a a) *) #!rest (list-of a)) boolean))
     159 ((procedure) (let ((#(tmp) #(1))) '#t))
     160 ((procedure list) (let ((#(tmp1) #(1)) (#(tmp2) #(2))) '#t)))
     161
     162(srfi-1#lset=
     163 (forall (a) (#(procedure #:enforce) srfi-1#lset= ((procedure (a a) *) #!rest (list-of a)) boolean))
     164 ((procedure) (let ((#(tmp) #(1))) '#t))
     165 ((procedure list) (let ((#(tmp1) #(1)) (#(tmp2) #(2))) '#t)))
     166
     167(srfi-1#make-list (forall (a) (#(procedure #:clean #:enforce) srfi-1#make-list (fixnum #!optional a) (list-of a))))
     168
     169(srfi-1#map!
     170 (forall (a b) (#(procedure #:enforce) srfi-1#map! ((procedure (a #!rest) b) (list-of a) #!rest list) (list-of b))))
     171
     172(srfi-1#map-in-order
     173 (forall
     174  (a b)
     175  (#(procedure #:enforce) srfi-1#map-in-order ((procedure (a #!rest) b) (list-of a) #!rest list) (list-of b))))
     176
     177(srfi-1#member
     178 (forall (a b) (#(procedure #:clean #:foldable) srfi-1#member
     179                (a (list-of b) #!optional (procedure (a b) *)) ; sic
     180                (or false (list-of b))))
     181 ((* null) (let ((#(tmp) #(1))) '#f))
     182 (((or symbol procedure immediate) list)
     183  (##core#inline "C_u_i_memq" #(1) #(2)))
     184 ((* (list-of (or symbol procedure immediate)))
     185  (##core#inline "C_u_i_memq" #(1) #(2))))
     186
     187(srfi-1#ninth (#(procedure #:clean #:enforce #:foldable) srfi-1#ninth (pair) *))
     188
     189(srfi-1#not-pair? (#(procedure #:clean #:foldable) srfi-1#not-pair? (*) boolean)
     190           ((pair) (let ((#(tmp) #(1))) '#f))
     191           (((not (or pair list))) (let ((#(tmp) #(1))) '#t)))
     192
     193(srfi-1#null-list? (#(procedure #:clean #:enforce #:foldable) srfi-1#null-list? (list) boolean)
     194            ((pair) (let ((#(tmp) #(1))) '#f))
     195            ((list) (let ((#(tmp) #(1))) '#f))
     196            ((null) (let ((#(tmp) #(1))) '#t)))
     197
     198(srfi-1#pair-fold (#(procedure #:enforce) srfi-1#pair-fold (procedure * list #!rest list) *)) ;XXX do this
     199(srfi-1#pair-fold-right (#(procedure #:enforce) srfi-1#pair-fold-right (procedure * list #!rest list) *)) ;XXX
     200(srfi-1#pair-for-each (#(procedure #:enforce) srfi-1#pair-for-each ((procedure (#!rest) . *) list #!rest list) undefined)) ;XXX
     201(srfi-1#partition (forall (a) (#(procedure #:enforce) srfi-1#partition ((procedure (a) *) (list-of a)) (list-of a) (list-of a))))
     202(srfi-1#partition! (forall (a) (#(procedure #:enforce) srfi-1#partition! ((procedure (a) *) (list-of a)) (list-of a) (list-of a))))
     203
     204(srfi-1#proper-list? (#(procedure #:clean #:foldable) proper-list? (*) boolean)
     205              ((null) (let ((#(tmp) #(1))) '#t)))
     206
     207(srfi-1#reduce (#(procedure #:enforce) srfi-1#reduce ((procedure (* *) *) * list) *)) ;XXX
     208(srfi-1#reduce-right (#(procedure #:enforce) srfi-1#reduce-right ((procedure (* *) *) * list) *)) ;XXX
     209(srfi-1#remove (forall (a) (#(procedure #:enforce) srfi-1#remove ((procedure (a) *) (list-of a)) (list-of a))))
     210(srfi-1#remove! (forall (a) (#(procedure #:enforce) srfi-1#remove! ((procedure (a) *) (list-of a)) (list-of a))))
     211(srfi-1#reverse! (forall (a) (#(procedure #:enforce) srfi-1#reverse! ((list-of a)) (list-of a))))
     212
     213(srfi-1#second (forall (a) (#(procedure #:clean #:enforce #:foldable) srfi-1#second ((pair * (pair a *))) a))
     214        (((pair * (pair * *))) (##core#inline "C_u_i_car" (##core#inline "C_u_i_cdr" #(1)))))
     215
     216(srfi-1#seventh (#(procedure #:clean #:enforce #:foldable) srfi-1#seventh (pair) *))
     217(srfi-1#sixth (#(procedure #:clean #:enforce #:foldable) srfi-1#sixth (pair) *))
     218(srfi-1#span (forall (a) (#(procedure #:enforce) srfi-1#span ((procedure (a) *) (list-of a)) (list-of a) (list-of a))))
     219(srfi-1#span! (forall (a) (#(procedure #:enforce) srfi-1#span! ((procedure (a) *) (list-of a)) (list-of a) (list-of a))))
     220(srfi-1#split-at (forall (a) (#(procedure #:enforce) srfi-1#split-at ((list-of a) fixnum) (list-of a) (list-of a))))
     221(srfi-1#split-at! (forall (a) (#(procedure #:enforce) srfi-1#split-at! ((list-of a) fixnum) (list-of a) (list-of a))))
     222(srfi-1#take (forall (a) (#(procedure #:enforce) srfi-1#take ((list-of a) fixnum) (list-of a))))
     223(srfi-1#take! (forall (a) (#(procedure #:enforce) srfi-1#take! ((list-of a) fixnum) (list-of a))))
     224(srfi-1#take-right (forall (a) (#(procedure #:enforce) srfi-1#take-right ((list-of a) fixnum) (list-of a))))
     225(srfi-1#take-while (forall (a) (#(procedure #:enforce) srfi-1#take-while ((procedure (a) *) (list-of a)) (list-of a))))
     226(srfi-1#take-while! (forall (a) (#(procedure #:enforce) srfi-1#take-while! ((procedure (a) *) (list-of a)) (list-of a))))
     227(srfi-1#tenth (#(procedure #:clean #:enforce #:foldable) srfi-1#tenth (pair) *))
     228
     229(srfi-1#third (forall (a) (#(procedure #:clean #:enforce #:foldable) srfi-1#third ((pair * (pair * (pair a *)))) a))
     230       (((pair * (pair * (pair * *))))
     231        (##core#inline "C_u_i_car"
     232                       (##core#inline "C_u_i_cdr" (##core#inline "C_u_i_cdr" #(1))))))
     233
     234(srfi-1#unfold (#(procedure #:enforce) srfi-1#unfold ((procedure (*) *) (procedure (*) *) (procedure (*) *) * #!optional (procedure (*) *)) *)) ;XXX
     235(srfi-1#unfold-right (#(procedure #:enforce) srfi-1#unfold-right ((procedure (*) *) (procedure (*) *) (procedure (*) *) * #!optional (procedure (*) *)) *)) ;XXX
     236(srfi-1#unzip1 (forall (a) (#(procedure #:clean #:enforce) srfi-1#unzip1 ((list-of (pair a *))) (list-of a))))
     237(srfi-1#unzip2 (forall (a b) (#(procedure #:clean #:enforce) srfi-1#unzip2 ((list-of (pair a (pair b *)))) (list-of a) (list-of b))))
     238
     239(srfi-1#unzip3
     240 (forall (a b c) (#(procedure #:clean #:enforce) srfi-1#unzip3 ((list-of (pair a (pair b (pair c *))))) (list-of a) (list-of b) (list-of c))))
     241
     242(srfi-1#unzip4 (#(procedure #:clean #:enforce) srfi-1#unzip4 (list) list list list list)) ; yeah
     243(srfi-1#unzip5 (#(procedure #:clean #:enforce) srfi-1#unzip5 (list) list list list list list)) ; yeah, too
     244(srfi-1#xcons (forall (a b) (#(procedure #:pure) srfi-1#xcons (a b) (pair b a))))
     245(srfi-1#zip (forall (a) (#(procedure #:clean #:enforce) srfi-1#zip ((list-of a) #!rest list) (list-of (pair a *)))))
  • release/5/srfi-1/trunk/srfi-1.egg

    r34025 r35497  
    1 ;; -*- Scheme -*-
    2 
     1;; -*- scheme -*-
    32((synopsis "SRFI-1 list library")
    43 (author "Olin Shivers")
     
    76 (test-dependencies test)
    87 (license "BSD")
    9  (components (extension srfi-1 (types-file))))
     8 (components (extension srfi-1 (types-file (predefined)))))
  • release/5/srfi-1/trunk/srfi-1.scm

    r33767 r35497  
    4040   span break span! break!)
    4141
    42 (import (except scheme member assoc) chicken)
     42(import (except (scheme) member assoc)
     43        (chicken base)
     44        (chicken fixnum)
     45        (chicken platform))
    4346
    4447(register-feature! 'srfi-1)
  • release/5/srfi-1/trunk/srfi-1.types

    r34718 r35497  
    1 ; GENERATED BY CHICKEN 5.0.0 FROM /home/sjamaan/src/chicken-eggs/release/5/srfi-1/trunk/srfi-1.scm
    2 
    3 ; END OF FILE
     1;; srfi-1 -*- Scheme -*-
     2
     3(srfi-1#alist-cons
     4 (forall (a b c) (#(procedure #:pure) srfi-1#alist-cons (a b (list-of c))
     5                  (pair (pair a b) (list-of c)))))
     6(srfi-1#alist-copy
     7 (forall (a b) (#(procedure #:clean #:enforce) srfi-1#alist-copy
     8                ((list-of (pair a b))) (list-of (pair a b)))))
     9(srfi-1#alist-delete
     10 (forall (a b c) (#(procedure #:clean) srfi-1#alist-delete
     11                  (a (list-of (pair b c)) #!optional (procedure (a b) *))
     12                  (list-of (pair b c)))))
     13(srfi-1#alist-delete!
     14 (forall (a b c) (#(procedure) srfi-1#alist-delete!
     15                  (a (list-of (pair b c)) #!optional (procedure (a b) *))
     16                  (list-of (pair b c)))))
     17(srfi-1#any (forall (a) (#(procedure #:enforce) srfi-1#any ((procedure (a #!rest) *) (list-of a) #!rest list) *)))
     18(srfi-1#append! (#(procedure #:enforce) srfi-1#append! (#!rest list) list))
     19
     20(srfi-1#append-map
     21 (forall (a b) (#(procedure #:enforce) srfi-1#append-map ((procedure (a #!rest) (list-of b)) (list-of a) #!rest list)
     22                           (list-of b))))
     23
     24(srfi-1#append-map!
     25 (forall (a b) (#(procedure #:enforce) srfi-1#append-map! ((procedure (a #!rest) (list-of b)) (list-of a) #!rest list)
     26                           (list-of b))))
     27
     28(srfi-1#append-reverse (#(procedure #:clean #:enforce) srfi-1#append-reverse (list list) list))
     29(srfi-1#append-reverse! (#(procedure #:enforce) srfi-1#append-reverse! (list list) list))
     30(srfi-1#assoc
     31 (forall (a b c) (#(procedure #:clean #:foldable) srfi-1#assoc
     32                  (a (list-of (pair b c)) #!optional (procedure (a b) *))
     33                  (or false (pair b c)))) ; sic
     34 ((* null) (let ((#(tmp) #(1))) '#f))
     35 (((or symbol procedure immediate) (list-of pair))
     36  (##core#inline "C_u_i_assq" #(1) #(2)))
     37 ((* (list-of (pair (or symbol procedure immediate) *)))
     38  (##core#inline "C_u_i_assq" #(1) #(2))))
     39
     40(srfi-1#break (forall (a) (#(procedure #:enforce) srfi-1#break ((procedure (a) *) (list-of a)) (list-of a) (list-of a))))
     41(srfi-1#break! (forall (a) (#(procedure #:enforce) srfi-1#break! ((procedure (a) *) (list-of a)) (list-of a) (list-of a))))
     42(srfi-1#car+cdr (forall (a b) (#(procedure #:clean #:enforce) srfi-1#car+cdr ((pair a b)) a b)))
     43(srfi-1#circular-list (#(procedure #:clean) srfi-1#circular-list (#!rest) list))
     44
     45(srfi-1#circular-list? (#(procedure #:clean #:foldable) srfi-1#circular-list? (*) boolean)
     46                ((null) (let ((#(tmp) #(1))) '#f)))
     47
     48(srfi-1#concatenate (#(procedure #:clean #:enforce) srfi-1#concatenate ((list-of list)) list))
     49(srfi-1#concatenate! (#(procedure #:enforce) srfi-1#concatenate! ((list-of list)) list))
     50(srfi-1#cons* (forall (a) (#(procedure #:clean) srfi-1#cons* (a #!rest) (pair a *))))
     51(srfi-1#count (forall (a) (#(procedure #:enforce) srfi-1#count ((procedure (a #!rest) *) (list-of a) #!rest list) fixnum)))
     52(srfi-1#delete (forall (a b) (#(procedure #:enforce) srfi-1#delete (a (list-of b) #!optional (procedure (a *) *)) (list-of b))))
     53(srfi-1#delete! (forall (a b) (#(procedure #:enforce) srfi-1#delete! (a (list-of b) #!optional (procedure (a *) *)) (list-of b))))
     54
     55(srfi-1#delete-duplicates
     56 (forall (a) (#(procedure #:enforce) srfi-1#delete-duplicates ((list-of a) #!optional (procedure (a *) *)) (list-of a))))
     57
     58(srfi-1#delete-duplicates!
     59 (forall (a) (#(procedure #:enforce) srfi-1#delete-duplicates! ((list-of a) #!optional (procedure (a *) *)) (list-of a))))
     60
     61(srfi-1#dotted-list? (#(procedure #:clean #:foldable) srfi-1#dotted-list? (*) boolean))
     62(srfi-1#drop (forall (a) (#(procedure #:enforce) srfi-1#drop ((list-of a) fixnum) (list-of a))))
     63(srfi-1#drop-right (forall (a) (#(procedure #:enforce) srfi-1#drop-right ((list-of a) fixnum) (list-of a))))
     64(srfi-1#drop-right! (forall (a) (#(procedure #:enforce) srfi-1#drop-right! ((list-of a) fixnum) (list-of a))))
     65(srfi-1#drop-while (forall (a) (#(procedure #:enforce) srfi-1#drop-while ((procedure (a) *) (list-of a)) (list-of a))))
     66(srfi-1#eighth (#(procedure #:clean #:enforce #:foldable) srfi-1#eighth (pair) *))
     67
     68(srfi-1#every
     69 (forall (a) (#(procedure #:enforce) srfi-1#every ((procedure (a #!rest) *) (list-of a) #!rest list) *)))
     70
     71(srfi-1#fifth (#(procedure #:clean #:enforce #:foldable) srfi-1#fifth (pair) *))
     72(srfi-1#filter (forall (a) (#(procedure #:enforce) srfi-1#filter ((procedure (a) *) (list-of a)) (list-of a))))
     73(srfi-1#filter! (forall (a) (#(procedure #:enforce) srfi-1#filter! ((procedure (a) *) (list-of a)) (list-of a))))
     74
     75(srfi-1#filter-map
     76 (forall (a b) (#(procedure #:enforce) srfi-1#filter-map ((procedure (a #!rest) b) (list-of a) #!rest list) (list-of b))))
     77
     78(srfi-1#find (forall (a) (#(procedure #:enforce) srfi-1#find ((procedure (a) *) (list-of a)) *)))
     79(srfi-1#find-tail (forall (a) (#(procedure #:enforce) srfi-1#find-tail ((procedure (a) *) (list-of a)) *)))
     80
     81(srfi-1#first (forall (a) (#(procedure #:clean #:enforce #:foldable) srfi-1#first ((pair a *)) a))
     82       ((pair) (##core#inline "C_u_i_car" #(1))))
     83
     84(srfi-1#fold (#(procedure #:enforce) srfi-1#fold ((procedure (* #!rest) *) * #!rest list) *)) ;XXX
     85(srfi-1#fold-right (#(procedure #:enforce) srfi-1#fold-right ((procedure (* #!rest) *) * #!rest list) *)) ;XXX
     86
     87(srfi-1#fourth (forall (a) (#(procedure #:clean #:enforce #:foldable) srfi-1#fourth ((pair * (pair * (pair * (pair a *))))) a))
     88        (((pair * (pair * (pair * (pair * *)))))
     89         (##core#inline "C_u_i_car"
     90                        (##core#inline "C_u_i_cdr"
     91                                       (##core#inline "C_u_i_cdr"
     92                                                      (##core#inline "C_u_i_cdr" #(1)))))))
     93
     94(srfi-1#iota (#(procedure #:clean #:enforce) srfi-1#iota (fixnum #!optional fixnum fixnum) (list-of number)))
     95(srfi-1#last (#(procedure #:clean #:enforce #:foldable) srfi-1#last (pair) *))
     96(srfi-1#last-pair (#(procedure #:clean #:enforce #:foldable) srfi-1#last-pair (pair) *))
     97(srfi-1#length+ (#(procedure #:clean #:enforce #:foldable) srfi-1#length+ (list) *))
     98(srfi-1#list-copy (forall (a) (#(procedure #:pure) srfi-1#list-copy (a) a)))
     99(srfi-1#list-index (forall (a) (#(procedure #:enforce) srfi-1#list-index ((procedure (a #!rest) *) (list-of a) #!rest list) *)))
     100(srfi-1#list-tabulate (forall (a) (#(procedure #:enforce) srfi-1#list-tabulate (fixnum (procedure (fixnum) a)) (list-of a))))
     101(srfi-1#list= (#(procedure #:clean #:enforce) srfi-1#list= (#!optional (procedure (list list) *) #!rest list) boolean)
     102       (() '#t)
     103       ((procedure) (let ((#(tmp) #(1))) '#t)))
     104
     105(srfi-1#lset-adjoin
     106 (forall (a) (#(procedure #:enforce) srfi-1#lset-adjoin ((procedure (a a) *) (list-of a) #!rest a) (list-of a)))
     107 ((procedure list) (let ((#(tmp) #(1))) #(2))))
     108
     109(srfi-1#lset-diff+intersection
     110 (forall (a)
     111         (#(procedure #:enforce) srfi-1#lset-diff+intersection ((procedure (a a) *) (list-of a) #!rest (list-of a))
     112                     (list-of a) (list-of a)))
     113 ((procedure list) (let ((#(tmp) #(1))) (##sys#values #(2) '()))))
     114
     115(srfi-1#lset-diff+intersection!
     116 (forall (a)
     117         (#(procedure #:enforce) srfi-1#lset-diff+intersection! ((procedure (a a) *) (list-of a) #!rest (list-of a))
     118                     (list-of a) (list-of a)))
     119 ((procedure list) (let ((#(tmp) #(1))) (##sys#values #(2) '()))))
     120
     121(srfi-1#lset-difference
     122 (forall (a) (#(procedure #:enforce) srfi-1#lset-difference ((procedure (a a) *) (list-of a) #!rest (list-of a)) (list-of a)))
     123 ((procedure list) (let ((#(tmp) #(1))) #(2))))
     124
     125(srfi-1#lset-difference!
     126 (forall (a) (#(procedure #:enforce) srfi-1#lset-difference! ((procedure (a a) *) (list-of a) #!rest (list-of a)) (list-of a)))
     127 ((procedure list) (let ((#(tmp) #(1))) #(2))))
     128
     129(srfi-1#lset-intersection
     130 (forall (a) (#(procedure #:enforce) srfi-1#lset-intersection ((procedure (a a) *) (list-of a) #!rest (list-of a)) (list-of a)))
     131 ((procedure list) (let ((#(tmp) #(1))) #(2))))
     132
     133(srfi-1#lset-intersection!
     134 (forall (a) (#(procedure #:enforce) srfi-1#lset-intersection! ((procedure (a a) *) (list-of a) #!rest (list-of a)) (list-of a)))
     135 ((procedure list) (let ((#(tmp) #(1))) #(2))))
     136
     137(srfi-1#lset-union
     138 (forall (a) (#(procedure #:enforce) srfi-1#lset-union ((procedure (a a) *) #!rest (list-of a)) (list-of a)))
     139 ((procedure) (let ((#(tmp) #(1))) '()))
     140 ((procedure list) (let ((#(tmp) #(1))) #(2))))
     141
     142(srfi-1#lset-union!
     143 (forall (a) (#(procedure #:enforce) srfi-1#lset-union! ((procedure (a a) *) #!rest (list-of a)) (list-of a)))
     144 ((procedure) (let ((#(tmp) #(1))) '()))
     145 ((procedure list) (let ((#(tmp) #(1))) #(2))))
     146
     147(srfi-1#lset-xor
     148 (forall (a) (#(procedure #:enforce) srfi-1#lset-xor ((procedure (a a) *) #!rest (list-of a)) (list-of a)))
     149 ((procedure) (let ((#(tmp) #(1))) '()))
     150 ((procedure list) (let ((#(tmp) #(1))) #(2))))
     151
     152(srfi-1#lset-xor!
     153 (forall (a) (#(procedure #:enforce) srfi-1#lset-xor! ((procedure (a a) *) #!rest (list-of a)) (list-of a)))
     154 ((procedure) (let ((#(tmp) #(1))) '()))
     155 ((procedure list) (let ((#(tmp) #(1))) #(2))))
     156
     157(srfi-1#lset<=
     158 (forall (a) (#(procedure #:enforce) srfi-1#lset<= ((procedure (a a) *) #!rest (list-of a)) boolean))
     159 ((procedure) (let ((#(tmp) #(1))) '#t))
     160 ((procedure list) (let ((#(tmp1) #(1)) (#(tmp2) #(2))) '#t)))
     161
     162(srfi-1#lset=
     163 (forall (a) (#(procedure #:enforce) srfi-1#lset= ((procedure (a a) *) #!rest (list-of a)) boolean))
     164 ((procedure) (let ((#(tmp) #(1))) '#t))
     165 ((procedure list) (let ((#(tmp1) #(1)) (#(tmp2) #(2))) '#t)))
     166
     167(srfi-1#make-list (forall (a) (#(procedure #:clean #:enforce) srfi-1#make-list (fixnum #!optional a) (list-of a))))
     168
     169(srfi-1#map!
     170 (forall (a b) (#(procedure #:enforce) srfi-1#map! ((procedure (a #!rest) b) (list-of a) #!rest list) (list-of b))))
     171
     172(srfi-1#map-in-order
     173 (forall
     174  (a b)
     175  (#(procedure #:enforce) srfi-1#map-in-order ((procedure (a #!rest) b) (list-of a) #!rest list) (list-of b))))
     176
     177(srfi-1#member
     178 (forall (a b) (#(procedure #:clean #:foldable) srfi-1#member
     179                (a (list-of b) #!optional (procedure (a b) *)) ; sic
     180                (or false (list-of b))))
     181 ((* null) (let ((#(tmp) #(1))) '#f))
     182 (((or symbol procedure immediate) list)
     183  (##core#inline "C_u_i_memq" #(1) #(2)))
     184 ((* (list-of (or symbol procedure immediate)))
     185  (##core#inline "C_u_i_memq" #(1) #(2))))
     186
     187(srfi-1#ninth (#(procedure #:clean #:enforce #:foldable) srfi-1#ninth (pair) *))
     188
     189(srfi-1#not-pair? (#(procedure #:clean #:foldable) srfi-1#not-pair? (*) boolean)
     190           ((pair) (let ((#(tmp) #(1))) '#f))
     191           (((not (or pair list))) (let ((#(tmp) #(1))) '#t)))
     192
     193(srfi-1#null-list? (#(procedure #:clean #:enforce #:foldable) srfi-1#null-list? (list) boolean)
     194            ((pair) (let ((#(tmp) #(1))) '#f))
     195            ((list) (let ((#(tmp) #(1))) '#f))
     196            ((null) (let ((#(tmp) #(1))) '#t)))
     197
     198(srfi-1#pair-fold (#(procedure #:enforce) srfi-1#pair-fold (procedure * list #!rest list) *)) ;XXX do this
     199(srfi-1#pair-fold-right (#(procedure #:enforce) srfi-1#pair-fold-right (procedure * list #!rest list) *)) ;XXX
     200(srfi-1#pair-for-each (#(procedure #:enforce) srfi-1#pair-for-each ((procedure (#!rest) . *) list #!rest list) undefined)) ;XXX
     201(srfi-1#partition (forall (a) (#(procedure #:enforce) srfi-1#partition ((procedure (a) *) (list-of a)) (list-of a) (list-of a))))
     202(srfi-1#partition! (forall (a) (#(procedure #:enforce) srfi-1#partition! ((procedure (a) *) (list-of a)) (list-of a) (list-of a))))
     203
     204(srfi-1#proper-list? (#(procedure #:clean #:foldable) proper-list? (*) boolean)
     205              ((null) (let ((#(tmp) #(1))) '#t)))
     206
     207(srfi-1#reduce (#(procedure #:enforce) srfi-1#reduce ((procedure (* *) *) * list) *)) ;XXX
     208(srfi-1#reduce-right (#(procedure #:enforce) srfi-1#reduce-right ((procedure (* *) *) * list) *)) ;XXX
     209(srfi-1#remove (forall (a) (#(procedure #:enforce) srfi-1#remove ((procedure (a) *) (list-of a)) (list-of a))))
     210(srfi-1#remove! (forall (a) (#(procedure #:enforce) srfi-1#remove! ((procedure (a) *) (list-of a)) (list-of a))))
     211(srfi-1#reverse! (forall (a) (#(procedure #:enforce) srfi-1#reverse! ((list-of a)) (list-of a))))
     212
     213(srfi-1#second (forall (a) (#(procedure #:clean #:enforce #:foldable) srfi-1#second ((pair * (pair a *))) a))
     214        (((pair * (pair * *))) (##core#inline "C_u_i_car" (##core#inline "C_u_i_cdr" #(1)))))
     215
     216(srfi-1#seventh (#(procedure #:clean #:enforce #:foldable) srfi-1#seventh (pair) *))
     217(srfi-1#sixth (#(procedure #:clean #:enforce #:foldable) srfi-1#sixth (pair) *))
     218(srfi-1#span (forall (a) (#(procedure #:enforce) srfi-1#span ((procedure (a) *) (list-of a)) (list-of a) (list-of a))))
     219(srfi-1#span! (forall (a) (#(procedure #:enforce) srfi-1#span! ((procedure (a) *) (list-of a)) (list-of a) (list-of a))))
     220(srfi-1#split-at (forall (a) (#(procedure #:enforce) srfi-1#split-at ((list-of a) fixnum) (list-of a) (list-of a))))
     221(srfi-1#split-at! (forall (a) (#(procedure #:enforce) srfi-1#split-at! ((list-of a) fixnum) (list-of a) (list-of a))))
     222(srfi-1#take (forall (a) (#(procedure #:enforce) srfi-1#take ((list-of a) fixnum) (list-of a))))
     223(srfi-1#take! (forall (a) (#(procedure #:enforce) srfi-1#take! ((list-of a) fixnum) (list-of a))))
     224(srfi-1#take-right (forall (a) (#(procedure #:enforce) srfi-1#take-right ((list-of a) fixnum) (list-of a))))
     225(srfi-1#take-while (forall (a) (#(procedure #:enforce) srfi-1#take-while ((procedure (a) *) (list-of a)) (list-of a))))
     226(srfi-1#take-while! (forall (a) (#(procedure #:enforce) srfi-1#take-while! ((procedure (a) *) (list-of a)) (list-of a))))
     227(srfi-1#tenth (#(procedure #:clean #:enforce #:foldable) srfi-1#tenth (pair) *))
     228
     229(srfi-1#third (forall (a) (#(procedure #:clean #:enforce #:foldable) srfi-1#third ((pair * (pair * (pair a *)))) a))
     230       (((pair * (pair * (pair * *))))
     231        (##core#inline "C_u_i_car"
     232                       (##core#inline "C_u_i_cdr" (##core#inline "C_u_i_cdr" #(1))))))
     233
     234(srfi-1#unfold (#(procedure #:enforce) srfi-1#unfold ((procedure (*) *) (procedure (*) *) (procedure (*) *) * #!optional (procedure (*) *)) *)) ;XXX
     235(srfi-1#unfold-right (#(procedure #:enforce) srfi-1#unfold-right ((procedure (*) *) (procedure (*) *) (procedure (*) *) * #!optional (procedure (*) *)) *)) ;XXX
     236(srfi-1#unzip1 (forall (a) (#(procedure #:clean #:enforce) srfi-1#unzip1 ((list-of (pair a *))) (list-of a))))
     237(srfi-1#unzip2 (forall (a b) (#(procedure #:clean #:enforce) srfi-1#unzip2 ((list-of (pair a (pair b *)))) (list-of a) (list-of b))))
     238
     239(srfi-1#unzip3
     240 (forall (a b c) (#(procedure #:clean #:enforce) srfi-1#unzip3 ((list-of (pair a (pair b (pair c *))))) (list-of a) (list-of b) (list-of c))))
     241
     242(srfi-1#unzip4 (#(procedure #:clean #:enforce) srfi-1#unzip4 (list) list list list list)) ; yeah
     243(srfi-1#unzip5 (#(procedure #:clean #:enforce) srfi-1#unzip5 (list) list list list list list)) ; yeah, too
     244(srfi-1#xcons (forall (a b) (#(procedure #:pure) srfi-1#xcons (a b) (pair b a))))
     245(srfi-1#zip (forall (a) (#(procedure #:clean #:enforce) srfi-1#zip ((list-of a) #!rest list) (list-of (pair a *)))))
Note: See TracChangeset for help on using the changeset viewer.