~ chicken-core (chicken-5) 3e0f3d880a2c3248809f1ddad0597a9f05437480
commit 3e0f3d880a2c3248809f1ddad0597a9f05437480 Author: felix <felix@call-with-current-continuation.org> AuthorDate: Sat Aug 20 04:55:26 2011 +0200 Commit: felix <felix@call-with-current-continuation.org> CommitDate: Sat Aug 20 04:55:26 2011 +0200 types.db.new usable diff --git a/types.db.new b/types.db.new index 2b011b81..b1e00026 100644 --- a/types.db.new +++ b/types.db.new @@ -489,8 +489,11 @@ (procedure? (procedure? procedure procedure? (*) boolean)) (vector-copy! (procedure! vector-copy! (vector vector #!optional fixnum) undefined)) -(map (procedure! map ((procedure (#!rest) *) #!rest list) list)) -(for-each (procedure! for-each (procedure #!rest list) undefined)) +(map (forall (a b) (procedure! map ((procedure (a #!rest) b) (list a) #!rest list) (list b)))) + +(for-each + (forall (a) (procedure! for-each ((procedure (a #!rest) . *) (list a) #!rest list) undefined))) + (apply (procedure! apply (procedure #!rest) . *)) (##sys#apply (procedure! ##sys#apply (procedure #!rest) . *)) @@ -1291,7 +1294,7 @@ ((locative locative fixnum fixnum fixnum) (##core#inline "C_copy_ptr_memory" #(2) #(1) #(3) #(5) #(4)))) -(mutate-procedure (procedure! mutate-procedure (procedure procedure) procedure)) +(mutate-procedure (procedure! mutate-procedure (procedure (procedure (procedure) . *)) procedure)) (null-pointer deprecated) (null-pointer? deprecated) @@ -1638,76 +1641,120 @@ (alist-cons (forall (a b c) (procedure alist-cons (a b (list c)) (pair a (pair b (list c)))))) (alist-copy (forall (a) (procedure! alist-copy ((list a)) (list a))) - -;;XXX continue ... -(alist-delete (procedure! alist-delete (* list #!optional (procedure (* *) *)) list)) -(alist-delete! (procedure! alist-delete! (* list #!optional (procedure (* *) *)) undefined)) -(any (procedure! any ((procedure (* #!rest) *) list #!rest list) *)) +(alist-delete (forall (a b) (procedure! alist-delete (a (list b) #!optional (procedure (a b) *)) list))) +(alist-delete! (forall (a b) (procedure! alist-delete! (a (list b) #!optional (procedure (a b) *)) undefined))) +(any (forall (a) (procedure! any ((procedure (a #!rest) *) (list a) #!rest list) *))) (append! (procedure! append! (#!rest list) list)) -(append-map (procedure! append-map ((procedure (#!rest) *) list #!rest list) pair)) -(append-map! (procedure! append-map! ((procedure (#!rest) *) list #!rest list) pair)) + +(append-map + (forall (a b) (procedure! append-map ((procedure (a #!rest) (list b)) (list a) #!rest list) + (list b)))) + +(append-map! + (forall (a b) (procedure! append-map! ((procedure (a #!rest) (list b)) (list a) #!rest list) + (list b)))) + (append-reverse (procedure! append-reverse (list list) list)) (append-reverse! (procedure! append-reverse! (list list) list)) -(break (procedure! break ((procedure (*) *) list) list list)) -(break! (procedure! break! ((procedure (*) *) list) list list)) -(car+cdr (procedure! car+cdr (pair) * *)) +(break (forall (a) (procedure! break ((procedure (a) *) (list a)) (list a) (list a)))) +(break! (forall (a) (procedure! break! ((procedure (a) *) (list a)) (list a) (list a)))) +(car+cdr (forall (a b) (procedure! car+cdr ((pair a b)) a b))) (circular-list (procedure circular-list (#!rest) list)) (circular-list? (procedure circular-list? (*) boolean) ((null) (let ((#(tmp) #(1))) '#f))) -(concatenate (procedure! concatenate (list) list)) -(concatenate! (procedure! concatenate! (list) list)) -(cons* (procedure cons* (* #!rest) pair)) -(count (procedure! count ((procedure (*) *) list #!rest list) fixnum)) -(delete (procedure! delete (* list #!optional (procedure (* *) *)) list)) -(delete! (procedure! delete! (* list #!optional (procedure (* *) *)) list)) -(delete-duplicates (procedure! delete-duplicates (list #!optional (procedure (* *) *)) list)) -(delete-duplicates! (procedure! delete-duplicates! (list #!optional (procedure (* *) *)) list)) +(concatenate (procedure! concatenate ((list list)) list)) +(concatenate! (procedure! concatenate! ((list list)) list)) +(cons* (forall (a) (procedure cons* (a #!rest) (pair a *)))) +(count (forall (a) (procedure! count ((procedure (a #!rest) *) (list a) #!rest list) fixnum))) +(delete (forall (a b) (procedure! delete (a (list b) #!optional (procedure (a *) *)) (list b)))) +(delete! (forall (a b) (procedure! delete! (a (list b) #!optional (procedure (a *) *)) (list b))) + +(delete-duplicates + (forall (a) (procedure! delete-duplicates ((list a) #!optional (procedure (a *) *)) (list a)))) + +(delete-duplicates! + (forall (a) (procedure! delete-duplicates! ((list a) #!optional (procedure (a *) *)) (list a)))) + (dotted-list? (procedure dotted-list? (*) boolean)) -(drop (procedure! drop (list fixnum) list)) -(drop-right (procedure! drop-right (list fixnum) list)) -(drop-right! (procedure! drop-right! (list fixnum) list)) -(drop-while (procedure! drop-while ((procedure (*) *) list) list)) +(drop (forall (a) (procedure! drop ((list a) fixnum) (list a)))) +(drop-right (forall (a) (procedure! drop-right ((list a) fixnum) (list a)))) +(drop-right! (forall (a) (procedure! drop-right! ((list a) fixnum) (list a)))) +(drop-while (forall (a) (procedure! drop-while ((procedure (a) *) (list a)) (list a)))) (eighth (procedure! eighth (pair) *)) -(every (procedure! every ((procedure (* #!rest) *) list #!rest list) *)) + +(every + (forall (a) (procedure! every ((procedure (a #!rest) *) (list a) #!rest list) *))) + (fifth (procedure! fifth (pair) *)) -(filter (procedure! filter ((procedure (*) *) list) list)) -(filter! (procedure! filter! ((procedure (*) *) list) list)) -(filter-map (procedure! filter-map ((procedure (* #!rest) *) list #!rest list) list)) -(find (procedure! find ((procedure (*) *) list) *)) -(find-tail (procedure! find-tail ((procedure (*) *) list) *)) +(filter (forall (a) (procedure! filter ((procedure (a) *) (list a)) (list a)))) +(filter! (forall (a) (procedure! filter! ((procedure (a) *) (list a)) (list a)))) + +(filter-map + (forall (a b) (procedure! filter-map ((procedure (a #!rest) b) (list a) #!rest list) (list b)))) -(first (procedure! first (pair) *) +(find (forall (a) (procedure! find ((procedure (a) *) (list a)) a))) +(find-tail (forall (a) (procedure! find-tail ((procedure (a) *) (list a)) *))) + +(first (forall (a) (procedure! first ((pair a *)) a)) ((pair) (##core#inline "C_u_i_car" #(1)))) -(fold (procedure! fold ((procedure (* #!rest) *) * #!rest list) *)) +(fold (procedure! fold ((procedure (* #!rest) *) * #!rest list) *)) ; oh, what the hell... (fold-right (procedure! fold-right ((procedure (* #!rest) *) * #!rest list) *)) -(fourth (procedure! fourth (pair) *)) -(iota (procedure! iota (fixnum #!optional fixnum fixnum) list)) + +(fourth (forall (a) (procedure! fourth ((pair * (pair * (pair * (pair a *))))) a))) +(iota (procedure! iota (fixnum #!optional fixnum fixnum) (list number))) (last (procedure! last (pair) *)) (last-pair (procedure! last-pair (pair) *)) (length+ (procedure! length+ (list) *)) -(list-copy (procedure! list-copy (list) list)) -(list-index (procedure! list-index ((procedure (* #!rest) *) list #!rest list) *)) -(list-tabulate (procedure! list-tabulate (fixnum (procedure (fixnum) *)) list)) +(list-copy (forall (a) (procedure! list-copy ((list a)) (list a)))) +(list-index (forall (a) (procedure! list-index ((procedure (a #!rest) *) (list a) #!rest list) *))) +(list-tabulate (forall (a) (procedure! list-tabulate (fixnum (procedure (fixnum) a)) (list a)))) (list= (procedure! list= (#!rest list) boolean)) -(lset-adjoin (procedure! lset-adjoin ((procedure (* *) *) list #!rest) list)) -(lset-diff+intersection (procedure! lset-diff+intersection ((procedure (* *) *) list #!rest list) list)) -(lset-diff+intersection! (procedure! lset-diff+intersection! ((procedure (* *) *) list #!rest list) list)) -(lset-difference (procedure! lset-difference ((procedure (* *) *) list #!rest list) list)) -(lset-difference! (procedure! lset-difference! ((procedure (* *) *) list #!rest list) list)) -(lset-intersection (procedure! lset-intersection ((procedure (* *) *) list #!rest list) list)) -(lset-intersection! (procedure! lset-intersection! ((procedure (* *) *) list #!rest list) list)) -(lset-union (procedure! lset-union ((procedure (* *) *) list #!rest list) list)) -(lset-union! (procedure! lset-union! ((procedure (* *) *) list #!rest list) list)) -(lset-xor (procedure! lset-xor ((procedure (* *) *) list #!rest list) list)) -(lset-xor! (procedure! lset-xor! ((procedure (* *) *) list #!rest list) list)) -(lset<= (procedure! lset<= ((procedure (* *) *) list #!rest list) boolean)) -(lset= (procedure! lset= ((procedure (* *) *) list #!rest list) boolean)) -(make-list (procedure! make-list (fixnum #!optional *) list)) -(map! (procedure! map! ((procedure (*) *) list #!rest list) list)) -(map-in-order (procedure! map-in-order ((procedure (*) *) list #!rest list) list)) +(lset-adjoin (foreall (a) (procedure! lset-adjoin ((procedure (a a) *) (list a) #!rest a) (list a)))) +(lset-diff+intersection + (forall (a) (procedure! lset-diff+intersection ((procedure (a a) *) (list a) #!rest (list a)) + (list a)))) +(lset-diff+intersection! + (forall (a) (procedure! lset-diff+intersection! ((procedure (a a) *) (list a) #!rest (list a)) + (list a)))) +(lset-difference + (forall (a) (procedure! lset-difference ((procedure (a a) *) (list a) #!rest (list a)) (list a)))) + +(lset-difference! + (forall (a) (procedure! lset-difference! ((procedure (a a) *) (list a) #!rest (list a)) (list a)))) + +(lset-intersection + (forall (a) (procedure! lset-intersection ((procedure (a a) *) (list a) #!rest (list a)) (list a)))) + +(lset-intersection! + (forall (a) (procedure! lset-intersection! ((procedure (a a) *) (list a) #!rest (list a)) (list a)))) + +(lset-union + (forall (a) (procedure! lset-union ((procedure (a a) *) (list a) #!rest (list a)) (list a)))) + +(lset-union! + (forall (a) (procedure! lset-union! ((procedure (a a) *) (list a) #!rest (list a)) (list a)))) + +(lset-xor + (forall (a) (procedure! lset-xor ((procedure (a a) *) (list a) #!rest (list a)) (list a)))) + +(lset-xor! + (forall (a) (procedure! lset-xor! ((procedure (a a) *) (list a) #!rest (list a)) (list a)))) + +(lset<= + (forall (a) (procedure! lset<= ((procedure (a a) *) (list a) #!rest (list a)) boolean))) + +(lset= + (forall (a) (procedure! lset= ((procedure (a a) *) (list a) #!rest (list a)) boolean))) + +(make-list (forall (a) (procedure! make-list (fixnum #!optional a) (list a)))) +(map! (forall (a b) (procedure! map! ((procedure (a #!rest) b) (list a) #!rest list) (list b)))) + +(map-in-order + (forall (a b) (procedure! map-in-order ((procedure (a #!rest) b) (list a) #!rest list) (list b)))) + (ninth (procedure! ninth (pair) *)) (not-pair? (procedure not-pair? (*) boolean) @@ -1719,50 +1766,59 @@ ((list) (let ((#(tmp) #(1))) '#f)) ((null) (let ((#(tmp) #(1))) '#t))) -(pair-fold (procedure! pair-fold (procedure * list #!rest list) *)) -(pair-fold-right (procedure! pair-fold-right (procedure * list #!rest list) *)) -(pair-for-each (procedure! pair-for-each ((procedure (#!rest) . *) list #!rest list) undefined)) -(partition (procedure! partition ((procedure (*) *) list) list list)) -(partition! (procedure! partition! ((procedure (*) *) list) list list)) +(pair-fold (procedure! pair-fold (procedure * list #!rest list) *)) ;XXX do this +(pair-fold-right (procedure! pair-fold-right (procedure * list #!rest list) *)) ;XXX +(pair-for-each (procedure! pair-for-each ((procedure (#!rest) . *) list #!rest list) undefined)) ;XXX +(partition (forall (a) (procedure! partition ((procedure (a) *) (list a)) (list a) (list a)))) +(partition! (forall (a) (procedure! partition! ((procedure (a) *) (list a)) (list a) (list a)))) (proper-list? (procedure proper-list? (*) boolean) ((null) (let ((#(tmp) #(1))) '#t))) -(reduce (procedure! reduce ((procedure (* *) *) * list) *)) -(reduce-right (procedure! reduce-right ((procedure (* *) *) * list) *)) -(remove (procedure! remove ((procedure (*) *) list) list)) -(remove! (procedure! remove! ((procedure (*) *) list) list)) -(reverse! (procedure! reverse! (list) list)) -(second (procedure! second (pair) *)) +(reduce (procedure! reduce ((procedure (* *) *) * list) *)) ;XXX +(reduce-right (procedure! reduce-right ((procedure (* *) *) * list) *)) ;XXX +(remove (forall (a) (procedure! remove ((procedure (a) *) (list a)) (list a)))) +(remove! (forall (a) (procedure! remove! ((procedure (a) *) (list a)) (list a)))) +(reverse! (forall (a) (procedure! reverse! ((list a)) (list a)))) +(second (forall (a) (procedure! second ((pair * (pair a *))) a))) (seventh (procedure! seventh (pair) *)) (sixth (procedure! sixth (pair) *)) -(span (procedure! span ((procedure (*) *) list) list list)) -(span! (procedure! span! ((procedure (*) *) list) list list)) -(split-at (procedure! split-at (list fixnum) list list)) -(split-at! (procedure! split-at! (list fixnum) list list)) -(take (procedure! take (list fixnum) list)) -(take! (procedure! take! (list fixnum) list)) -(take-right (procedure! take-right (list fixnum) list)) -(take-while (procedure! take-while ((procedure (*) *) list) list)) -(take-while! (procedure! take-while! ((procedure (*) *) list) list)) +(span (forall (a) (procedure! span ((procedure (a) *) (list a)) (list a) (list a)))) +(span! (forall (a) (procedure! span! ((procedure (a) *) (list a)) (list a) (list a)))) +(split-at (forall (a) (procedure! split-at ((list a) fixnum) (list a) (list a)))) +(split-at! (forall (a) (procedure! split-at! ((list a) fixnum) (list a) (list a)))) +(take (forall (a) (procedure! take ((list a) fixnum) (list a)))) +(take! (forall (a) (procedure! take! ((list a) fixnum) (list a)))) +(take-right (forall (a) (procedure! take-right ((list a) fixnum) (list a)))) +(take-while (forall (a) (procedure! take-while ((procedure (a) *) (list a)) (list a)))) +(take-while! (forall (a) (procedure! take-while! ((procedure (a) *) (list a)) (list a)))) (tenth (procedure! tenth (pair) *)) -(third (procedure! third (pair) *)) -(unfold (procedure! unfold ((procedure (*) *) (procedure (*) *) (procedure (*) *) * #!optional (procedure (*) *)) *)) -(unfold-right (procedure! unfold-right ((procedure (*) *) (procedure (*) *) (procedure (*) *) * #!optional (procedure (*) *)) *)) -(unzip1 (procedure! unzip1 (list) list)) -(unzip2 (procedure! unzip2 (list) list list)) -(unzip3 (procedure! unzip3 (list) list list list)) -(unzip4 (procedure! unzip4 (list) list list list list)) -(unzip5 (procedure! unzip5 (list) list list list list list)) -(xcons (procedure xcons (* *) pair)) -(zip (procedure! zip (list #!rest list) list)) +(third (forall (a) (procedure! third ((pair * (pair * (pair a *)))) a))) +(unfold (procedure! unfold ((procedure (*) *) (procedure (*) *) (procedure (*) *) * #!optional (procedure (*) *)) *)) ;XXX +(unfold-right (procedure! unfold-right ((procedure (*) *) (procedure (*) *) (procedure (*) *) * #!optional (procedure (*) *)) *)) ;XXX +(unzip1 (forall (a) (procedure! unzip1 ((list (pair a *))) (list a)))) +(unzip2 (forall (a b) (procedure! unzip2 ((list (pair a (pair b *)))) (list a) (list b)))) + +(unzip3 + (forall (a b c) (procedure! unzip3 ((list (pair a (pair b (pair c *))))) (list a) (list b) (list c)))) + +(unzip4 (procedure! unzip4 (list) list list list list)) ; yeah +(unzip5 (procedure! unzip5 (list) list list list list list)) ; yeah, too +(xcons (forall (a b) (procedure xcons (a b) (pair b a)))) +(zip (forall (a) (procedure! zip ((list a) #!rest list) (list (pair a *))))) + ;; srfi-13 (check-substring-spec (procedure! check-substring-spec (* string fixnum fixnum) undefined)) (kmp-step (procedure! kmp-step (string vector char fixnum (procedure (char char) *) fixnum) fixnum)) (make-kmp-restart-vector (procedure! make-kmp-restart-vector (string #!optional (procedure (* *) *) fixnum fixnum) vector)) -(string-any (procedure! string-any (* string #!optional fixnum fixnum) boolean)) + +(string-any + (procedure! + string-any + ((or char (struct char-set) (procedure (char) *)) string #!optional fixnum fixnum) + boolean)) (string-append/shared (procedure! string-append/shared (#!rest string) string) ((string string) (##sys#string-append #(1) #(2)))) @@ -1787,10 +1843,10 @@ (string-compare (procedure! string-compare (string string (procedure (fixnum) *) (procedure (fixnum) *) (procedure (fixnum) *) #!optional fixnum fixnum fixnum fixnum) *)) (string-compare-ci (procedure! string-compare (string string (procedure (fixnum) *) (procedure (fixnum) *) (procedure (fixnum) *) #!optional fixnum fixnum fixnum fixnum) *)) -(string-concatenate (procedure! string-concatenate (list) string)) -(string-concatenate-reverse (procedure! string-concatenate-reverse (list #!optional string fixnum) string)) -(string-concatenate-reverse/shared (procedure! string-concatenate-reverse/shared (list #!optional string fixnum) string)) -(string-concatenate/shared (procedure! string-concatenate/shared (list) string)) +(string-concatenate (procedure! string-concatenate ((list string)) string)) +(string-concatenate-reverse (procedure! string-concatenate-reverse ((list string) #!optional string fixnum) string)) +(string-concatenate-reverse/shared (procedure! string-concatenate-reverse/shared ((list string) #!optional string fixnum) string)) +(string-concatenate/shared (procedure! string-concatenate/shared ((list string)) string)) (string-contains (procedure! string-contains (string string #!optional fixnum fixnum fixnum fixnum) (or fixnum boolean))) (string-contains-ci (procedure! string-contains-ci (string string #!optional fixnum fixnum fixnum fixnum) (or fixnum boolean))) (string-copy (procedure! string-copy (string #!optional fixnum fixnum) string)) @@ -1801,15 +1857,39 @@ (string-downcase! (procedure! string-downcase! (string #!optional fixnum fixnum) string)) (string-drop (procedure! string-drop (string fixnum) string)) (string-drop-right (procedure! string-drop-right (string fixnum) string)) -(string-every (procedure! string-every (* string #!optional fixnum fixnum) boolean)) + +(string-every + (procedure! + string-every + ((or char (struct char-set) (procedure (char) *)) string #!optional fixnum fixnum) + boolean)) + (string-fill! (procedure! string-fill! (string char #!optional fixnum fixnum) string)) -(string-filter (procedure! string-filter (* string #!optional fixnum fixnum) string)) -(string-fold (procedure! string-fold ((procedure (char *) *) * string #!optional fixnum fixnum) *)) -(string-fold-right (procedure! string-fold-right ((procedure (char *) *) * string #!optional fixnum fixnum) *)) + +(string-filter + (procedure! + string-filter + ((or char (struct char-set) (procedure (char) *)) string #!optional fixnum fixnum) + string)) + +(string-fold (procedure! string-fold ((procedure (char *) *) * string #!optional fixnum fixnum) *)) ;XXX + +(string-fold-right (procedure! string-fold-right ((procedure (char *) *) * string #!optional fixnum fixnum) *)) ;XXX (string-for-each (procedure! string-for-each ((procedure (char) . *) string #!optional fixnum fixnum) undefined)) (string-for-each-index (procedure! string-for-each-index ((procedure (fixnum) . *) string #!optional fixnum fixnum) undefined)) -(string-index (procedure! string-index (string * #!optional fixnum fixnum) (or fixnum boolean))) -(string-index-right (procedure! string-index-right (string * #!optional fixnum fixnum) (or fixnum boolean))) + +(string-index + (procedure! + string-index + (string (or char (struct char-set) (procedure (char) *)) #!optional fixnum fixnum) + (or fixnum boolean))) + +(string-index-right + (procedure! + string-index-right + (string (or char (struct char-set) (procedure (char) *)) #!optional fixnum fixnum) + (or fixnum boolean))) + (string-join (procedure! string-join (list #!optional string symbol) string)) (string-kmp-partial-search (procedure! string-kmp-partial-search (string vector string fixnum #!optional (procedure (char char) *) fixnum fixnum fixnum) fixnum)) (string-map (procedure! string-map ((procedure (char) char) string #!optional fixnum fixnum) string)) @@ -1829,8 +1909,19 @@ (string-replace (procedure! string-replace (string string fixnum fixnum #!optional fixnum fixnum) string)) (string-reverse (procedure! string-reverse (string #!optional fixnum fixnum) string)) (string-reverse! (procedure! string-reverse! (string #!optional fixnum fixnum) string)) -(string-skip (procedure! string-skip (string * #!optional fixnum fixnum) (or fixnum boolean))) -(string-skip-right (procedure! string-skip-right (string * #!optional fixnum fixnum) (or fixnum boolean))) + +(string-skip + (procedure! + string-skip + (string (or char (struct char-set) (procedure (char) *)) #!optional fixnum fixnum) + (or fixnum boolean))) + +(string-skip-right + (procedure! + string-skip-right + (string (or char (struct char-set) (procedure (char) *)) #!optional fixnum fixnum) + (or fixnum boolean))) + (string-suffix-ci? (procedure! string-suffix-ci? (string string #!optional fixnum fixnum fixnum fixnum) boolean)) (string-suffix-length (procedure! string-suffix-length (string string #!optional fixnum fixnum fixnum fixnum) fixnum)) (string-suffix-length-ci (procedure! string-suffix-length-ci (string string #!optional fixnum fixnum fixnum fixnum) fixnum)) @@ -1840,12 +1931,30 @@ (string-take-right (procedure! string-take-right (string fixnum) string)) (string-titlecase (procedure! string-titlecase (string #!optional fixnum fixnum) string)) (string-titlecase! (procedure! string-titlecase! (string #!optional fixnum fixnum) string)) -(string-tokenize (procedure! string-tokenize (string #!optional * fixnum fixnum) list)) -(string-trim (procedure! string-trim (string #!optional * fixnum fixnum) string)) -(string-trim-both (procedure! string-trim-both (string #!optional * fixnum fixnum) string)) -(string-trim-right (procedure! string-trim-right (string #!optional * fixnum fixnum) string)) -(string-unfold (procedure! string-unfold (procedure procedure procedure * #!optional * procedure) string)) -(string-unfold-right (procedure! string-unfold-right (procedure procedure procedure * #!optional * procedure) string)) + +(string-tokenize + (procedure! string-tokenize (string #!optional (struct char-set) fixnum fixnum) list)) + +(string-trim + (procedure! + string-trim + (string #!optional (or char (struct char-set) (procedure (char) *)) fixnum fixnum) + string)) + +(string-trim-both + (procedure! + string-trim-both + (string #!optional (or char (struct char-set) (procedure (char) *)) fixnum fixnum) + string)) + +(string-trim-right + (procedure! + string-trim-right + (string #!optional (or char (struct char-set) (procedure (char) *)) fixnum fixnum) + string)) + +(string-unfold (procedure! string-unfold (procedure procedure procedure * #!optional * procedure) string)) ;XXX +(string-unfold-right (procedure! string-unfold-right (procedure procedure procedure * #!optional * procedure) string)) ;XXX (string-upcase (procedure! string-upcase (string #!optional fixnum fixnum) string)) (string-upcase! (procedure! string-upcase! (string #!optional fixnum fixnum) string)) (string-xcopy! (procedure! string-xcopy! (string string string fixnum #!optional fixnum fixnum fixnum) string)) @@ -1872,6 +1981,7 @@ (substring/shared (procedure! substring/shared (string fixnum #!optional fixnum) string)) (xsubstring (procedure! xsubstring (string fixnum #!optional fixnum fixnum fixnum) string)) + ;; srfi-14 (->char-set (procedure ->char-set (*) (struct char-set)) @@ -1945,6 +2055,7 @@ (ucs-range->char-set (procedure! ucs-range->char-set (fixnum fixnum #!optional * (struct char-set)) (struct char-set))) (ucs-range->char-set! (procedure! ucs-range->char-set! (fixnum fixnum #!optional * (struct char-set)) (struct char-set))) + ;; srfi-18 (abandoned-mutex-exception? (procedure abandoned-mutex-exception? (*) boolean)) @@ -2023,6 +2134,7 @@ (uncaught-exception-reason (procedure! uncaught-exception-reason ((struct condition)) *)) (uncaught-exception? (procedure uncaught-exception? (*) boolean)) + ;; srfi-4 (blob->f32vector (procedure! blob->f32vector (blob) (struct f32vector))) @@ -2067,14 +2179,14 @@ (f64vector? (procedure? (struct f64vector) f64vector? (*) boolean)) -(list->f32vector (procedure! list->f32vector (list) (struct f32vector))) -(list->f64vector (procedure! list->f64vector (list) (struct f64vector))) -(list->s16vector (procedure! list->s16vector (list) (struct s16vector))) -(list->s32vector (procedure! list->s32vector (list) (struct s32vector))) -(list->s8vector (procedure! list->s8vector (list) (struct s8vector))) -(list->u16vector (procedure! list->u16vector (list) (struct u16vector))) -(list->u32vector (procedure! list->u32vector (list) (struct u32vector))) -(list->u8vector (procedure! list->u8vector (list) (struct u8vector))) +(list->f32vector (procedure! list->f32vector ((list number)) (struct f32vector))) +(list->f64vector (procedure! list->f64vector ((list number)) (struct f64vector))) +(list->s16vector (procedure! list->s16vector ((list fixnum)) (struct s16vector))) +(list->s32vector (procedure! list->s32vector ((list number)) (struct s32vector))) +(list->s8vector (procedure! list->s8vector ((list fixnum)) (struct s8vector))) +(list->u16vector (procedure! list->u16vector ((list fixnum)) (struct u16vector))) +(list->u32vector (procedure! list->u32vector ((list number)) (struct u32vector))) +(list->u8vector (procedure! list->u8vector ((list fixnum)) (struct u8vector))) (make-f32vector (procedure! make-f32vector (fixnum #!optional * * *) (struct f32vector))) (make-f64vector (procedure! make-f64vector (fixnum #!optional * * *) (struct f64vector))) (make-s16vector (procedure! make-s16vector (fixnum #!optional * * *) (struct s16vector))) @@ -2089,7 +2201,7 @@ (s16vector (procedure! s16vector (#!rest fixnum) (struct s16vector))) (s16vector->blob (procedure! s16vector->blob ((struct s16vector)) blob)) (s16vector->blob/shared (procedure! s16vector->blob/shared ((struct s16vector)) blob)) -(s16vector->list (procedure! s16vector->list ((struct s16vector)) list)) +(s16vector->list (procedure! s16vector->list ((struct s16vector)) (list fixnum))) (s16vector-length (procedure! s16vector-length ((struct s16vector)) fixnum) (((struct s16vector)) (##core#inline "C_u_i_16vector_length" #(1)))) @@ -2102,7 +2214,7 @@ (s32vector (procedure! s32vector (#!rest number) (struct s32vector))) (s32vector->blob (procedure! s32vector->blob ((struct 32vector)) blob)) (s32vector->blob/shared (procedure! s32vector->blob/shared ((struct s32vector)) blob)) -(s32vector->list (procedure! s32vector->list ((struct s32vector)) list)) +(s32vector->list (procedure! s32vector->list ((struct s32vector)) (list number))) (s32vector-length (procedure! s32vector-length ((struct s32vector)) fixnum) (((struct s32vector)) (##core#inline "C_u_i_32vector_length" #(1)))) @@ -2115,7 +2227,7 @@ (s8vector (procedure! s8vector (#!rest fixnum) (struct s8vector))) (s8vector->blob (procedure! s8vector->blob ((struct s8vector)) blob)) (s8vector->blob/shared (procedure! s8vector->blob/shared ((struct s8vector)) blob)) -(s8vector->list (procedure! s8vector->list ((struct s8vector)) list)) +(s8vector->list (procedure! s8vector->list ((struct s8vector)) (list fixnum))) (s8vector-length (procedure! s8vector-length ((struct s8vector)) fixnum) (((struct s8vector)) (##core#inline "C_u_i_8vector_length" #(1)))) @@ -2136,7 +2248,7 @@ (u16vector (procedure! u16vector (#!rest fixnum) (struct u16vector))) (u16vector->blob (procedure! u16vector->blob ((struct u16vector)) blob)) (u16vector->blob/shared (procedure! u16vector->blob/shared ((struct u16vector)) blob)) -(u16vector->list (procedure! u16vector->list ((struct u16vector)) list)) +(u16vector->list (procedure! u16vector->list ((struct u16vector)) (list fixnum))) (u16vector-length (procedure! u16vector-length ((struct u16vector)) fixnum) (((struct u16vector)) (##core#inline "C_u_i_16vector_length" #(1)))) @@ -2149,7 +2261,7 @@ (u32vector (procedure! u32vector (#!rest number) (struct u32vector))) (u32vector->blob (procedure! u32vector->blob ((struct u32vector)) blob)) (u32vector->blob/shared (procedure! u32vector->blob/shared ((struct u32vector)) blob)) -(u32vector->list (procedure! u32vector->list ((struct u32vector)) list)) +(u32vector->list (procedure! u32vector->list ((struct u32vector)) (list number))) (u32vector-length (procedure! u32vector-length ((struct u32vector)) fixnum) (((struct u32vector)) (##core#inline "C_u_i_32vector_length" #(1)))) @@ -2162,7 +2274,7 @@ (u8vector (procedure! u8vector (#!rest fixnum) (struct u8vector))) (u8vector->blob (procedure! u8vector->blob ((struct u8vector)) blob)) (u8vector->blob/shared (procedure! u8vector->blob/shared ((struct u8vector)) blob)) -(u8vector->list (procedure! u8vector->list ((struct u8vector)) list)) +(u8vector->list (procedure! u8vector->list ((struct u8vector)) (list fixnum))) (u8vector-length (procedure! u8vector-length ((struct u8vector)) fixnum) (((struct u8vector)) (##core#inline "C_u_i_8vector_length" #(1)))) @@ -2174,15 +2286,16 @@ (write-u8vector (procedure! write-u8vector ((struct u8vector) #!optional port fixnum fixnum) undefined)) + ;; srfi-69 -(alist->hash-table (procedure! alist->hash-table (list #!rest) (struct hash-table))) +(alist->hash-table (procedure! alist->hash-table ((list pair) #!rest) (struct hash-table))) (eq?-hash (procedure! eq?-hash (* #!optional fixnum) fixnum)) (equal?-hash (procedure! equal?-hash (* #!optional fixnum) fixnum)) (eqv?-hash (procedure! eqv?-hash (* #!optional fixnum) fixnum)) (hash (procedure! hash (* #!optional fixnum) fixnum)) (hash-by-identity (procedure! hash-by-identity (* #!optional fixnum) fixnum)) -(hash-table->alist (procedure! hash-table->alist ((struct hash-table)) list)) +(hash-table->alist (procedure! hash-table->alist ((struct hash-table)) (list pair))) (hash-table-clear! (procedure! hash-table-clear! ((struct hash-table)) undefined)) (hash-table-copy (procedure! hash-table-copy ((struct hash-table)) (struct hash-table))) (hash-table-delete! (procedure! hash-table-delete! ((struct hash-table) *) boolean)) @@ -2243,6 +2356,7 @@ (string-hash-ci (procedure! string-hash-ci (string #!optional fixnum fixnum fixnum) number)) (string-ci-hash (procedure! string-ci-hash (string #!optional fixnum fixnum fixnum) number)) + ;; tcp (tcp-abandon-port (procedure! tcp-abandon-port (port) undefined)) @@ -2267,6 +2381,7 @@ (tcp-read-timeout (procedure! tcp-read-timeout (#!optional number) number)) (tcp-write-timeout (procedure! tcp-write-timeout (#!optional number) number)) + ;; utils (for-each-argv-line deprecated) @@ -2275,6 +2390,6 @@ (system* (procedure! system* (string #!rest) undefined)) (qs (procedure! qs (string) string)) (compile-file (procedure! compile-file (string #!rest) (or boolean string))) -(compile-file-options (procedure! compile-file-options (#!optional list) list)) +(compile-file-options (procedure! compile-file-options (#!optional (list string)) (list string))) (scan-input-lines (procedure! scan-input-lines (* #!optional port) *)) (yes-or-no? (procedure! yes-or-no? (string #!rest) *))Trap