From 7525c89d50be36467c6444d0687f61bcb61e20e1 Mon Sep 17 00:00:00 2001 From: Ciprian Dorin Craciun Date: Mon, 23 Jul 2018 19:14:12 +0300 Subject: [PATCH] [documentation] Extract VS categories from R7RS and move them to the proper library [#3] [#23] --- documentation/libraries-r7rs.ss | 348 +----- documentation/libraries-vs.ss | 1991 ++++++++++++++++++++++++------- 2 files changed, 1568 insertions(+), 771 deletions(-) diff --git a/documentation/libraries-r7rs.ss b/documentation/libraries-r7rs.ss index 69f51ff4..df1530d3 100644 --- a/documentation/libraries-r7rs.ss +++ b/documentation/libraries-r7rs.ss @@ -18,11 +18,6 @@ - (use-categories vonuvoli) - - - - (categories @@ -1038,7 +1033,6 @@ (define-syntax - (category vs:syntaxes vs:unsupported) (type syntax) (export scheme:base) (syntax-rules @@ -1114,7 +1108,6 @@ >>>#)) (let-syntax - (category vs:syntaxes vs:unsupported) (type syntax) (export scheme:base) (syntax-rules @@ -1176,7 +1169,6 @@ >>>#)) (letrec-syntax - (category vs:syntaxes vs:unsupported) (type syntax) (export scheme:base) (syntax-rules @@ -1241,7 +1233,6 @@ (syntax-rules - (category vs:syntaxes vs:unsupported) (type syntax) (export scheme:base) (description @@ -1471,7 +1462,6 @@ >>>#)) (syntax-error - (category vs:syntaxes vs:unsupported) (type syntax) (export scheme:base) (syntax-rules @@ -1521,7 +1511,6 @@ (_ - (category vs:syntaxes) (type auxiliary-syntax) (export scheme:base) (description @@ -1532,7 +1521,6 @@ >>>#)) (... - (category vs:syntaxes) (type auxiliary-syntax) (export scheme:base) (description @@ -1543,7 +1531,6 @@ >>>#)) (=> - (category vs:syntaxes) (type auxiliary-syntax) (export scheme:base) (description @@ -1554,7 +1541,6 @@ >>>#)) (else - (category vs:syntaxes) (type auxiliary-syntax) (export scheme:base) (description @@ -1568,7 +1554,6 @@ (quote - (category vs:syntaxes vs:quotation) (type syntax) (export scheme:base) (syntax-rules ((token value any)) (_ token)) @@ -1637,7 +1622,6 @@ >>>#)) (quasiquote - (category vs:syntaxes vs:quotation) (type syntax) (export scheme:base) (syntax-rules ((token value any)) (_ token)) @@ -1789,7 +1773,6 @@ )) (unquote - (category vs:syntaxes vs:quotation) (type syntax) (export scheme:base) (syntax-rules ((token value any)) (_ token)) @@ -1801,7 +1784,6 @@ >>>#)) (unquote-splicing - (category vs:syntaxes vs:quotation) (type syntax) (export scheme:base) (syntax-rules ((token value any)) (_ token)) @@ -1816,7 +1798,6 @@ (lambda - (category vs:lambda) (type syntax) (export scheme:base) (syntax-rules @@ -1918,7 +1899,6 @@ >>>#)) (case-lambda - (category vs:lambda) (type syntax) (export scheme:case-lambda) (syntax-rules @@ -1985,7 +1965,6 @@ (define - (category vs:contexts) (type syntax) (export scheme:base) (syntax-rules @@ -2072,7 +2051,6 @@ (let - (category vs:contexts) (type syntax) (export scheme:base) (syntax-rules @@ -2170,7 +2148,6 @@ >>>#)) (let* - (category vs:contexts) (type syntax) (export scheme:base) (syntax-rules @@ -2224,7 +2201,6 @@ >>>#)) (letrec - (category vs:contexts) (type syntax) (export scheme:base) (syntax-rules @@ -2299,7 +2275,6 @@ >>>#)) (letrec* - (category vs:contexts) (type syntax) (export scheme:base) (syntax-rules @@ -2373,7 +2348,6 @@ (set! - (category vs:contexts) (type syntax) (export scheme:base) (syntax-rules @@ -2415,7 +2389,6 @@ (define-values - (category vs:contexts vs:values) (type syntax) (export scheme:base) (syntax-rules @@ -2460,7 +2433,6 @@ >>>#)) (let-values - (category vs:contexts vs:values) (type syntax) (export scheme:base) (syntax-rules @@ -2521,7 +2493,6 @@ >>>#)) (let*-values - (category vs:contexts vs:values) (type syntax) (export scheme:base) (syntax-rules @@ -2578,7 +2549,6 @@ (define-record-type - (category vs:contexts vs:records) (type syntax) (export scheme:base) (syntax-rules @@ -2702,7 +2672,6 @@ (begin - (category vs:control) (type syntax) (export scheme:base) (syntax-rules @@ -2767,7 +2736,6 @@ (and - (category vs:control) (type syntax) (export scheme:base) (syntax-rules @@ -2804,7 +2772,6 @@ >>>#)) (or - (category vs:control) (type syntax) (export scheme:base) (syntax-rules @@ -2842,7 +2809,6 @@ (if - (category vs:control) (type syntax) (export scheme:base) (syntax-rules @@ -2889,7 +2855,6 @@ >>>#)) (unless - (category vs:control) (type syntax) (export scheme:base) (syntax-rules @@ -2927,7 +2892,6 @@ >>>#)) (when - (category vs:control) (type syntax) (export scheme:base) (syntax-rules @@ -2966,7 +2930,6 @@ (cond - (category vs:control) (type syntax) (export scheme:base) (syntax-rules @@ -3049,7 +3012,6 @@ >>>#)) (case - (category vs:control) (type syntax) (export scheme:base) (syntax-rules @@ -3138,7 +3100,6 @@ (do - (category vs:control vs:loops) (type syntax) (export scheme:base) (syntax-rules @@ -3230,7 +3191,6 @@ (eq? - (category vs:equivalence) (type comparator=) (export scheme:base) (signature @@ -3244,6 +3204,15 @@ (eq? obj_1 obj_2) ```` + A **predicate** is a procedure that always returns a boolean + value (`#t` or `#f`). An **equivalence predicate** is + the computational analogue of a mathematical equivalence relation; it is + symmetric, reflexive, and transitive. + + Of the equivalence predicates + described in this section, `eq?` is the finest or most + discriminating, `equal?` is the coarsest, and `eqv?` is + slightly less discriminating than `eq?`. The `eq?` procedure is similar to `eqv?` except that in some cases it is capable of discerning distinctions finer than those detectable by @@ -3295,7 +3264,6 @@ >>>#)) (eqv? - (category vs:equivalence) (type comparator=) (export scheme:base) (signature @@ -3454,7 +3422,6 @@ >>>#)) (equal? - (category vs:equivalence) (type comparator=) (export scheme:base) (signature @@ -3515,7 +3482,6 @@ (boolean? - (category vs:booleans vs:types) (type type-predicate) (export scheme:base) (signature @@ -3546,7 +3512,6 @@ >>>#)) (boolean=? - (category vs:booleans vs:comparisons vs:equivalence) (type comparator=) (export scheme:base) (signature @@ -3571,7 +3536,6 @@ (not - (category vs:booleans) (type predicate) (export scheme:base) (signature @@ -3609,7 +3573,6 @@ (symbol? - (category vs:symbols vs:types) (type type-predicate) (export scheme:base) (signature @@ -3642,7 +3605,6 @@ >>>#)) (symbol=? - (category vs:symbols vs:comparisons vs:equivalence) (type comparator=) (export scheme:base) (signature @@ -3672,7 +3634,6 @@ (number? - (category vs:arithmetic vs:types) (type type-predicate) (export scheme:base) (signature @@ -3742,7 +3703,6 @@ >>>#)) (integer? - (category vs:arithmetic vs:types) (type type-predicate) (export scheme:base) (signature @@ -3761,7 +3721,6 @@ >>>#)) (real? - (category vs:arithmetic vs:types) (type type-predicate) (export scheme:base) (signature @@ -3780,7 +3739,6 @@ >>>#)) (rational? - (category vs:arithmetic vs:types) (type type-predicate) (export scheme:base) (signature @@ -3799,7 +3757,6 @@ >>>#)) (complex? - (category vs:arithmetic vs:types) (type type-predicate) (export scheme:base) (signature @@ -3819,7 +3776,6 @@ (exact? - (category vs:arithmetic vs:types) (type type-predicate) (export scheme:base) (signature @@ -3853,7 +3809,6 @@ >>>#)) (inexact? - (category vs:arithmetic vs:types) (type type-predicate) (export scheme:base) (signature @@ -3869,7 +3824,6 @@ >>>#)) (exact-integer? - (category vs:arithmetic vs:types) (type type-predicate) (export scheme:base) (signature @@ -3903,7 +3857,6 @@ (zero? - (category vs:arithmetic) (type predicate) (export scheme:base) (signature @@ -3932,7 +3885,6 @@ >>>#)) (positive? - (category vs:arithmetic) (type predicate) (export scheme:base) (signature @@ -3949,7 +3901,6 @@ >>>#)) (negative? - (category vs:arithmetic) (type predicate) (export scheme:base) (signature @@ -3966,7 +3917,6 @@ >>>#)) (odd? - (category vs:arithmetic) (type predicate) (export scheme:base) (signature @@ -3983,7 +3933,6 @@ >>>#)) (even? - (category vs:arithmetic) (type predicate) (export scheme:base) (signature @@ -4001,7 +3950,6 @@ (= - (category vs:arithmetic vs:comparisons) (type comparator=) (export scheme:base) (signature @@ -4054,7 +4002,6 @@ >>>#)) (< - (category vs:arithmetic vs:comparisons) (type comparator<) (export scheme:base) (signature @@ -4069,7 +4016,6 @@ >>>#)) (> - (category vs:arithmetic vs:comparisons) (type comparator>) (export scheme:base) (signature @@ -4084,7 +4030,6 @@ >>>#)) (<= - (category vs:arithmetic vs:comparisons) (type comparator<=) (export scheme:base) (signature @@ -4099,7 +4044,6 @@ >>>#)) (>= - (category vs:arithmetic vs:comparisons) (type comparator>=) (export scheme:base) (signature @@ -4115,7 +4059,6 @@ (+ - (category vs:arithmetic) (type procedure) (export scheme:base) (signature @@ -4149,7 +4092,6 @@ >>>#)) (- - (category vs:arithmetic) (type procedure) (export scheme:base) (signature @@ -4191,7 +4133,6 @@ >>>#)) (* - (category vs:arithmetic) (type procedure) (export scheme:base) (signature @@ -4207,7 +4148,6 @@ >>>#)) (/ - (category vs:arithmetic) (type procedure) (export scheme:base) (signature @@ -4224,7 +4164,6 @@ (abs - (category vs:arithmetic) (type procedure) (export scheme:base) (signature @@ -4253,7 +4192,6 @@ (floor/ - (category vs:arithmetic) (type procedure) (export scheme:base) (signature @@ -4340,7 +4278,6 @@ >>>#)) (floor-quotient - (category vs:arithmetic) (type procedure) (export scheme:base) (signature @@ -4354,7 +4291,6 @@ >>>#)) (floor-remainder - (category vs:arithmetic) (type procedure) (export scheme:base) (alias modulo) @@ -4369,7 +4305,6 @@ >>>#)) (truncate/ - (category vs:arithmetic) (type procedure) (export scheme:base) (signature @@ -4383,7 +4318,6 @@ >>>#)) (truncate-quotient - (category vs:arithmetic) (type procedure) (export scheme:base) (alias quotient) @@ -4398,7 +4332,6 @@ >>>#)) (truncate-remainder - (category vs:arithmetic) (type procedure) (export scheme:base) (alias remainder) @@ -4414,7 +4347,6 @@ (floor - (category vs:arithmetic) (type procedure) (export scheme:base) (signature @@ -4472,7 +4404,6 @@ >>>#)) (ceiling - (category vs:arithmetic) (type procedure) (export scheme:base) (signature @@ -4487,7 +4418,6 @@ >>>#)) (truncate - (category vs:arithmetic) (type procedure) (export scheme:base) (signature @@ -4502,7 +4432,6 @@ >>>#)) (round - (category vs:arithmetic) (type procedure) (export scheme:base) (signature @@ -4518,7 +4447,6 @@ (min - (category vs:arithmetic) (type procedure) (export scheme:base) (signature @@ -4556,7 +4484,6 @@ >>>#)) (max - (category vs:arithmetic) (type procedure) (export scheme:base) (signature @@ -4572,7 +4499,6 @@ (gcd - (category vs:arithmetic) (type procedure) (export scheme:base) (signature @@ -4607,7 +4533,6 @@ >>>#)) (lcm - (category vs:arithmetic) (type procedure) (export scheme:base) (signature @@ -4624,7 +4549,6 @@ (expt - (category vs:arithmetic) (type procedure) (export scheme:base) (signature @@ -4651,7 +4575,6 @@ >>>#)) (square - (category vs:arithmetic) (type procedure) (export scheme:base) (signature @@ -4680,7 +4603,6 @@ >>>#)) (exact-integer-sqrt - (category vs:arithmetic) (type procedure) (export scheme:base) (signature @@ -4711,7 +4633,6 @@ (rationalize - (category vs:arithmetic vs:unsupported) (type procedure) (export scheme:base) (signature @@ -4748,7 +4669,6 @@ >>>#)) (numerator - (category vs:arithmetic vs:unsupported) (type procedure) (export scheme:base) (signature @@ -4782,7 +4702,6 @@ >>>#)) (denominator - (category vs:arithmetic vs:unsupported) (type procedure) (export scheme:base) (signature @@ -4797,7 +4716,6 @@ (inexact - (category vs:arithmetic) (type converter) (export scheme:complex) (signature @@ -4851,7 +4769,6 @@ >>>#)) (exact - (category vs:arithmetic) (type converter) (export scheme:complex) (signature @@ -4865,7 +4782,6 @@ (make-rectangular - (category vs:arithmetic vs:unsupported) (type procedure) (export scheme:complex) (signature @@ -4917,7 +4833,6 @@ >>>#)) (real-part - (category vs:arithmetic vs:unsupported) (type procedure) (export scheme:complex) (signature @@ -4930,7 +4845,6 @@ >>>#)) (imag-part - (category vs:arithmetic vs:unsupported) (type procedure) (export scheme:complex) (signature @@ -4943,7 +4857,6 @@ >>>#)) (make-polar - (category vs:arithmetic vs:unsupported) (type procedure) (export scheme:complex) (signature @@ -4957,7 +4870,6 @@ >>>#)) (magnitude - (category vs:arithmetic vs:unsupported) (type procedure) (export scheme:complex) (signature @@ -4970,7 +4882,6 @@ >>>#)) (angle - (category vs:arithmetic vs:unsupported) (type procedure) (export scheme:complex) (signature @@ -4984,7 +4895,6 @@ (sqrt - (category vs:arithmetic) (type procedure) (export scheme:inexact) (signature @@ -5016,7 +4926,6 @@ >>>#)) (exp - (category vs:arithmetic) (type procedure) (export scheme:inexact) (signature @@ -5107,7 +5016,6 @@ >>>#)) (log - (category vs:arithmetic) (type procedure) (export scheme:inexact) (signature @@ -5123,7 +5031,6 @@ (sin - (category vs:arithmetic) (type procedure) (export scheme:inexact) (signature @@ -5137,7 +5044,6 @@ >>>#)) (cos - (category vs:arithmetic) (type procedure) (export scheme:inexact) (signature @@ -5151,7 +5057,6 @@ >>>#)) (tan - (category vs:arithmetic) (type procedure) (export scheme:inexact) (signature @@ -5165,7 +5070,6 @@ >>>#)) (asin - (category vs:arithmetic) (type procedure) (export scheme:inexact) (signature @@ -5179,7 +5083,6 @@ >>>#)) (acos - (category vs:arithmetic) (type procedure) (export scheme:inexact) (signature @@ -5193,7 +5096,6 @@ >>>#)) (atan - (category vs:arithmetic) (type procedure) (export scheme:inexact) (signature @@ -5209,7 +5111,6 @@ (finite? - (category vs:arithmetic) (type predicate) (export scheme:inexact) (signature @@ -5242,7 +5143,6 @@ >>>#)) (infinite? - (category vs:arithmetic) (type predicate) (export scheme:inexact) (signature @@ -5276,7 +5176,6 @@ >>>#)) (nan? - (category vs:arithmetic) (type predicate) (export scheme:inexact) (signature @@ -5312,7 +5211,6 @@ (pair? - (category vs:pairs vs:lists vs:types) (type type-predicate) (export scheme:base) (signature @@ -5345,7 +5243,6 @@ >>>#)) (cons - (category vs:pairs vs:lists) (type constructor) (export scheme:base) (signature @@ -5377,7 +5274,6 @@ >>>#)) (car - (category vs:pairs vs:lists) (type accessor) (export scheme:base) (signature @@ -5407,7 +5303,6 @@ >>>#)) (cdr - (category vs:pairs vs:lists) (type accessor) (export scheme:base) (signature @@ -5436,7 +5331,6 @@ >>>#)) (set-car! - (category vs:pairs vs:lists) (type mutator!) (export scheme:base) (signature @@ -5465,7 +5359,6 @@ >>>#)) (set-cdr! - (category vs:pairs vs:lists) (type mutator!) (export scheme:base) (signature @@ -5489,7 +5382,6 @@ (caar - (category vs:pairs vs:lists) (type accessor) (export scheme:base) (signature (any -> any)) @@ -5520,7 +5412,6 @@ >>>#)) (cadr - (category vs:pairs vs:lists) (type accessor) (export scheme:base) (signature (any -> any)) @@ -5533,7 +5424,6 @@ (cdar - (category vs:pairs vs:lists) (type accessor) (export scheme:base) (signature (any -> any)) @@ -5545,7 +5435,6 @@ >>>#)) (cddr - (category vs:pairs vs:lists) (type accessor) (export scheme:base) (signature (any -> any)) @@ -5558,7 +5447,6 @@ (caaar - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5591,7 +5479,6 @@ >>>#)) (caadr - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5603,7 +5490,6 @@ >>>#)) (cadar - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5615,7 +5501,6 @@ >>>#)) (caddr - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5628,7 +5513,6 @@ (cdaar - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5640,7 +5524,6 @@ >>>#)) (cdadr - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5652,7 +5535,6 @@ >>>#)) (cddar - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5664,7 +5546,6 @@ >>>#)) (cdddr - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5677,7 +5558,6 @@ (caaaar - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5689,7 +5569,6 @@ >>>#)) (caaadr - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5701,7 +5580,6 @@ >>>#)) (caadar - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5713,7 +5591,6 @@ >>>#)) (caaddr - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5725,7 +5602,6 @@ >>>#)) (cadaar - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5737,7 +5613,6 @@ >>>#)) (cadadr - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5749,7 +5624,6 @@ >>>#)) (caddar - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5761,7 +5635,6 @@ >>>#)) (cadddr - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5774,7 +5647,6 @@ (cdaaar - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5786,7 +5658,6 @@ >>>#)) (cdaadr - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5798,7 +5669,6 @@ >>>#)) (cdadar - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5810,7 +5680,6 @@ >>>#)) (cdaddr - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5822,7 +5691,6 @@ >>>#)) (cddaar - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5834,7 +5702,6 @@ >>>#)) (cddadr - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5846,7 +5713,6 @@ >>>#)) (cdddar - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5858,7 +5724,6 @@ >>>#)) (cddddr - (category vs:pairs vs:lists) (type accessor) (export scheme:cxr) (signature (any -> any)) @@ -5873,7 +5738,6 @@ (null? - (category vs:lists vs:types) (type type-predicate) (export scheme:base) (signature @@ -5899,7 +5763,6 @@ >>>#)) (list? - (category vs:lists vs:types) (type type-predicate) (export scheme:base) (signature @@ -5938,7 +5801,6 @@ (list - (category vs:lists) (type constructor) (export scheme:base) (signature @@ -5966,7 +5828,6 @@ >>>#)) (make-list - (category vs:lists) (type constructor) (export scheme:base) (signature @@ -5999,7 +5860,6 @@ (length - (category vs:lists) (type procedure) (export scheme:base) (signature @@ -6029,7 +5889,6 @@ (append - (category vs:lists) (type procedure) (export scheme:base) (signature @@ -6075,7 +5934,6 @@ >>>#)) (list-copy - (category vs:lists) (type procedure) (export scheme:base) (signature @@ -6114,7 +5972,6 @@ >>>#)) (reverse - (category vs:lists) (type procedure) (export scheme:base) (signature @@ -6144,7 +6001,6 @@ (list-ref - (category vs:lists) (type accessor) (export scheme:base) (signature @@ -6176,7 +6032,6 @@ >>>#)) (list-tail - (category vs:lists) (type accessor) (export scheme:base) (signature @@ -6210,7 +6065,6 @@ >>>#)) (list-set! - (category vs:lists) (type mutator!) (export scheme:base) (signature @@ -6246,7 +6100,6 @@ (map - (category vs:lists vs:functions vs:conversions vs:loops) (type map) (export scheme:base) (signature @@ -6295,7 +6148,6 @@ >>>#)) (for-each - (category vs:lists vs:functions vs:loops) (type for-each) (export scheme:base) (signature @@ -6341,7 +6193,6 @@ (member - (category vs:lists) (type procedure) (export scheme:base) (signature @@ -6388,7 +6239,6 @@ >>>#)) (memq - (category vs:lists) (type procedure) (export scheme:base) (signature @@ -6401,7 +6251,6 @@ >>>#)) (memv - (category vs:lists) (type procedure) (export scheme:base) (signature @@ -6417,7 +6266,6 @@ (assoc - (category vs:lists vs:associations) (type procedure) (export scheme:base) (signature @@ -6473,8 +6321,7 @@ >>>#)) - (assqc - (category vs:lists vs:associations) + (assq (type procedure) (export scheme:base) (signature @@ -6486,8 +6333,7 @@ >>>#)) - (assvc - (category vs:lists vs:associations) + (assv (type procedure) (export scheme:base) (signature @@ -6503,7 +6349,6 @@ (vector? - (category vs:vectors vs:types) (type type-predicate) (export scheme:base) (signature @@ -6528,7 +6373,6 @@ (vector - (category vs:vectors) (type constructor) (export scheme:base) (signature @@ -6556,7 +6400,6 @@ >>>#)) (make-vector - (category vs:vectors) (type constructor) (export scheme:base) (signature @@ -6585,7 +6428,6 @@ (vector-length - (category vs:vectors) (type procedure) (export scheme:base) (signature @@ -6609,7 +6451,6 @@ (vector-append - (category vs:vectors) (type procedure) (export scheme:base) (signature @@ -6637,7 +6478,6 @@ >>>#)) (vector-copy - (category vs:vectors) (type accessor) (export scheme:base) (signature @@ -6676,7 +6516,6 @@ >>>#)) (vector-copy! - (category vs:vectors) (type mutator!) (export scheme:base) (signature @@ -6719,7 +6558,6 @@ >>>#)) (vector-fill! - (category vs:vectors) (type mutator!) (export scheme:base) (signature @@ -6754,7 +6592,6 @@ (vector-ref - (category vs:vectors) (type accessor) (export scheme:base) (signature @@ -6787,7 +6624,6 @@ >>>#)) (vector-set! - (category vs:vectors) (type mutator!) (export scheme:base) (signature @@ -6820,7 +6656,6 @@ (vector->list - (category vs:vectors vs:lists vs:conversions) (type converter) (export scheme:base) (signature @@ -6859,7 +6694,6 @@ >>>#)) (list->vector - (category vs:vectors vs:lists vs:conversions) (type converter) (export scheme:base) (signature @@ -6874,7 +6708,6 @@ (vector-map - (category vs:vectors vs:functions vs:conversions vs:loops) (type map) (export scheme:base) (signature @@ -6923,7 +6756,6 @@ >>>#)) (vector-for-each - (category vs:vectors vs:functions vs:loops) (type for-each) (export scheme:base) (signature @@ -6968,7 +6800,6 @@ (string? - (category vs:strings vs:types) (type type-predicate) (export scheme:base) (signature @@ -6993,7 +6824,6 @@ (string - (category vs:strings) (type constructor) (export scheme:base) (signature @@ -7017,7 +6847,6 @@ >>>#)) (make-string - (category vs:strings) (type constructor) (export scheme:base) (signature @@ -7047,7 +6876,6 @@ (string-length - (category vs:strings) (type procedure) (export scheme:base) (signature @@ -7071,7 +6899,6 @@ (string-append - (category vs:strings) (type constructor) (export scheme:base) (signature @@ -7095,7 +6922,6 @@ >>>#)) (string-copy - (category vs:strings) (type accessor) (export scheme:base) (signature @@ -7122,7 +6948,6 @@ >>>#)) (string-copy! - (category vs:strings) (type mutator!) (export scheme:base) (signature @@ -7165,7 +6990,6 @@ >>>#)) (string-fill! - (category vs:strings) (type mutator!) (export scheme:base) (signature @@ -7195,7 +7019,6 @@ >>>#)) (substring - (category vs:strings) (type accessor) (export scheme:base) (signature @@ -7224,7 +7047,6 @@ (string-ref - (category vs:strings) (type accessor) (export scheme:base) (signature @@ -7251,7 +7073,6 @@ >>>#)) (string-set! - (category vs:strings) (type mutator!) (export scheme:base) (signature @@ -7291,7 +7112,6 @@ (string=? - (category vs:strings vs:comparisons vs:equivalence) (type comparator=) (export scheme:base) (signature @@ -7316,7 +7136,6 @@ >>>#)) (string>>#)) (string>? - (category vs:strings vs:comparisons vs:equivalence) (type comparator>) (export scheme:base) (signature @@ -7384,7 +7202,6 @@ >>>#)) (string<=? - (category vs:strings vs:comparisons vs:equivalence) (type comparator<=) (export scheme:base) (signature @@ -7398,7 +7215,6 @@ >>>#)) (string>=? - (category vs:strings vs:comparisons vs:equivalence) (type comparator>=) (export scheme:base) (signature @@ -7413,7 +7229,6 @@ (string-ci=? - (category vs:strings vs:comparisons vs:equivalence) (type comparator=) (export scheme:char) (signature @@ -7439,7 +7254,6 @@ >>>#)) (string-ci>>#)) (string-ci>? - (category vs:strings vs:comparisons) (type comparator>) (export scheme:char) (signature @@ -7467,7 +7280,6 @@ >>>#)) (string-ci<=? - (category vs:strings vs:comparisons) (type comparator<=) (export scheme:char) (signature @@ -7481,7 +7293,6 @@ >>>#)) (string-ci>=? - (category vs:strings vs:comparisons) (type comparator>=) (export scheme:char) (signature @@ -7496,7 +7307,6 @@ (number->string - (category vs:strings vs:conversions) (type converter) (export scheme:base) (signature @@ -7553,7 +7363,6 @@ >>>#)) (string->number - (category vs:strings vs:conversions) (type converter) (export scheme:base) (signature @@ -7617,7 +7426,6 @@ (symbol->string - (category vs:strings vs:symbols vs:conversions) (type converter) (export scheme:base) (signature @@ -7651,7 +7459,6 @@ >>>#)) (string->symbol - (category vs:strings vs:symbols vs:conversions) (type converter) (export scheme:base) (signature @@ -7688,7 +7495,6 @@ (string->list - (category vs:strings vs:lists vs:conversions) (type converter) (export scheme:base) (signature @@ -7726,7 +7532,6 @@ >>>#)) (list->string - (category vs:strings vs:lists vs:conversions) (type converter) (export scheme:base) (signature @@ -7741,7 +7546,6 @@ (string->vector - (category vs:strings vs:vectors vs:conversions) (type converter) (export scheme:base) (signature @@ -7787,7 +7591,6 @@ >>>#)) (vector->string - (category vs:strings vs:vectors vs:conversions) (type converter) (export scheme:base) (signature @@ -7804,7 +7607,6 @@ (string-map - (category vs:strings vs:functions vs:conversions vs:loops) (type map) (export scheme:base) (signature @@ -7853,7 +7655,6 @@ >>>#)) (string-for-each - (category vs:strings vs:functions vs:loops) (type for-each) (export scheme:base) (signature @@ -7896,7 +7697,6 @@ (string-upcase - (category vs:strings vs:conversions) (type procedure) (export scheme:char) (signature @@ -7932,7 +7732,6 @@ >>>#)) (string-downcase - (category vs:strings vs:conversions) (type procedure) (export scheme:char) (signature @@ -7946,7 +7745,6 @@ >>>#)) (string-foldcase - (category vs:strings vs:conversions) (type procedure) (export scheme:char) (signature @@ -7963,7 +7761,6 @@ (bytevector? - (category vs:bytes) (type type-predicate) (export scheme:base) (signature @@ -7989,7 +7786,6 @@ (bytevector - (category vs:bytes) (type constructor) (export scheme:base) (signature @@ -8017,7 +7813,6 @@ >>>#)) (make-bytevector - (category vs:bytes) (type constructor) (export scheme:base) (signature @@ -8051,7 +7846,6 @@ (bytevector-length - (category vs:bytes) (type procedure) (export scheme:base) (signature @@ -8075,7 +7869,6 @@ (bytevector-append - (category vs:bytes) (type procedure) (export scheme:base) (signature @@ -8103,7 +7896,6 @@ >>>#)) (bytevector-copy - (category vs:bytes) (type procedure) (export scheme:base) (signature @@ -8135,7 +7927,6 @@ >>>#)) (bytevector-copy! - (category vs:bytes) (type procedure!) (export scheme:base) (signature @@ -8182,7 +7973,6 @@ (bytevector-u8-ref - (category vs:bytes) (type accessor) (export scheme:base) (signature @@ -8210,7 +8000,6 @@ >>>#)) (bytevector-u8-set! - (category vs:bytes) (type mutator!) (export scheme:base) (signature @@ -8241,7 +8030,6 @@ (utf8->string - (category vs:bytes vs:strings) (type converter) (export scheme:base) (signature @@ -8285,7 +8073,6 @@ >>>#)) (string->utf8 - (category vs:bytes vs:strings) (type converter) (export scheme:base) (signature @@ -8304,7 +8091,6 @@ (port? - (category vs:ports vs:types) (type type-predicate) (export scheme:base) (signature @@ -8335,7 +8121,6 @@ (binary-port? - (category vs:ports) (type predicate) (export scheme:base) (signature @@ -8351,7 +8136,6 @@ >>>#)) (textual-port? - (category vs:ports) (type predicate) (export scheme:base) (signature @@ -8368,7 +8152,6 @@ (input-port? - (category vs:ports:input) (type predicate) (export scheme:base) (signature @@ -8384,7 +8167,6 @@ >>>#)) (input-port-open? - (category vs:ports:input vs:ports:open) (type predicate) (export scheme:base) (signature @@ -8413,7 +8195,6 @@ (output-port? - (category vs:ports:output) (type predicate) (export scheme:base) (signature @@ -8429,7 +8210,6 @@ >>>#)) (output-port-open? - (category vs:ports:output vs:ports:open) (type predicate) (export scheme:base) (signature @@ -8447,7 +8227,6 @@ (open-input-bytevector - (category vs:ports:input vs:ports:open vs:bytes) (type procedure) (export scheme:base) (signature @@ -8470,7 +8249,6 @@ >>>#)) (open-output-bytevector - (category vs:ports:output vs:ports:open vs:bytes) (type procedure) (export scheme:base) (signature @@ -8493,7 +8271,6 @@ >>>#)) (get-output-bytevector - (category vs:ports:output vs:bytes) (type procedure) (export scheme:base) (signature @@ -8521,7 +8298,6 @@ (open-input-string - (category vs:ports:input vs:ports:open vs:strings) (type procedure) (export scheme:base) (signature @@ -8545,7 +8321,6 @@ >>>#)) (open-output-string - (category vs:ports:output vs:ports:open vs:strings) (type procedure) (export scheme:base) (signature @@ -8568,7 +8343,6 @@ >>>#)) (get-output-string - (category vs:ports:output vs:strings) (type procedure) (export scheme:base) (signature @@ -8609,7 +8383,6 @@ (close-port - (category vs:ports) (type procedure) (export scheme:base) (signature @@ -8646,7 +8419,6 @@ >>>#)) (close-input-port - (category vs:ports:input) (type procedure) (export scheme:base) (signature @@ -8660,7 +8432,6 @@ >>>#)) (close-output-port - (category vs:ports:output) (type procedure) (export scheme:base) (signature @@ -8675,7 +8446,6 @@ (u8-ready? - (category vs:ports:input vs:bytes) (type predicate) (export scheme:base) (signature @@ -8704,7 +8474,6 @@ >>>#)) (peek-u8 - (category vs:ports:input vs:bytes) (type procedure) (export scheme:base) (signature @@ -8731,7 +8500,6 @@ >>>#)) (read-u8 - (category vs:ports:input vs:bytes) (type procedure) (export scheme:base) (signature @@ -8759,7 +8527,6 @@ >>>#)) (write-u8 - (category vs:ports:output vs:bytes) (type procedure) (export scheme:base) (signature @@ -8787,7 +8554,6 @@ (read-bytevector - (category vs:ports:input vs:bytes) (type procedure) (export scheme:base) (signature @@ -8817,7 +8583,6 @@ >>>#)) (read-bytevector! - (category vs:ports:input vs:bytes) (type procedure!) (export scheme:base) (signature @@ -8856,7 +8621,6 @@ >>>#)) (write-bytevector - (category vs:ports:output vs:bytes) (type procedure) (export scheme:base) (signature @@ -8888,7 +8652,6 @@ (char-ready? - (category vs:ports:input vs:strings vs:characters) (type predicate) (export scheme:base) (signature @@ -8925,7 +8688,6 @@ >>>#)) (peek-char - (category vs:ports:input vs:strings vs:characters) (type procedure) (export scheme:base) (signature @@ -8961,7 +8723,6 @@ >>>#)) (read-char - (category vs:ports:input vs:strings vs:characters) (type procedure) (export scheme:base) (signature @@ -8989,7 +8750,6 @@ >>>#)) (write-char - (category vs:ports:output vs:strings vs:characters) (type procedure) (export scheme:base) (signature @@ -9018,7 +8778,6 @@ (read-string - (category vs:ports:input vs:strings) (type procedure) (export scheme:base) (signature @@ -9048,7 +8807,6 @@ >>>#)) (write-string - (category vs:ports:output vs:strings) (type procedure) (export scheme:base) (signature @@ -9080,7 +8838,6 @@ (read-line - (category vs:ports:input vs:strings) (type procedure) (export scheme:base) (signature @@ -9117,7 +8874,6 @@ (newline - (category vs:ports:output vs:bytes vs:strings) (type procedure) (export scheme:base) (signature @@ -9143,7 +8899,6 @@ >>>#)) (flush-output-port - (category vs:ports:output) (type procedure) (export scheme:base) (signature @@ -9169,7 +8924,6 @@ (read - (category vs:ports:input vs:ports:values) (type procedure) (export scheme:read) (signature @@ -9211,7 +8965,6 @@ >>>#)) (write - (category vs:ports:output vs:ports:values) (type procedure) (export scheme:write) (signature @@ -9252,7 +9005,6 @@ >>>#)) (write-simple - (category vs:ports:output vs:ports:values) (type procedure) (export scheme:write) (signature @@ -9278,7 +9030,6 @@ >>>#)) (write-shared - (category vs:ports:output vs:ports:values) (type procedure) (export scheme:write) (signature @@ -9304,7 +9055,6 @@ >>>#)) (display - (category vs:ports:output vs:ports:values) (type procedure) (export scheme:write) (signature @@ -9349,7 +9099,6 @@ (open-input-file - (category vs:ports:input vs:ports:open) (type procedure) (export scheme:file) (signature @@ -9374,7 +9123,6 @@ >>>#)) (open-binary-input-file - (category vs:ports:input vs:ports:open) (type procedure) (export scheme:file) (signature @@ -9387,7 +9135,6 @@ >>>#)) (open-output-file - (category vs:ports:output vs:ports:open) (type procedure) (export scheme:file) (signature @@ -9417,7 +9164,6 @@ >>>#)) (open-binary-output-file - (category vs:ports:output vs:ports:open) (type procedure) (export scheme:file) (signature @@ -9431,7 +9177,6 @@ (call-with-port - (category vs:ports vs:functions) (type procedure) (export scheme:base) (signature @@ -9468,7 +9213,6 @@ >>>#)) (call-with-input-file - (category vs:ports:input vs:functions) (type procedure) (export scheme:file) (signature @@ -9497,7 +9241,6 @@ >>>#)) (call-with-output-file - (category vs:ports:output vs:functions) (type procedure) (export scheme:file) (signature @@ -9511,8 +9254,7 @@ (eof-object - (category vs:ports vs:globals) - (type constant) + (type constructor) (export scheme:base) (signature (() -> eof-object)) @@ -9533,7 +9275,6 @@ >>>#)) (eof-object? - (category vs:ports vs:globals) (type predicate) (export scheme:base) (signature @@ -9563,7 +9304,6 @@ (file-exists? - (category vs:file-system) (type procedure) (export scheme:file) (signature @@ -9589,7 +9329,6 @@ >>>#)) (delete-file - (category vs:file-system) (type procedure) (export scheme:file) (signature @@ -9869,7 +9608,6 @@ (char? - (category vs:characters vs:types) (type type-predicate) (export scheme:base) (signature @@ -9894,7 +9632,6 @@ (char=? - (category vs:characters vs:comparisons vs:equivalence) (type comparator=) (export scheme:base) (signature @@ -9927,7 +9664,6 @@ >>>#)) (char>>#)) (char>? - (category vs:characters vs:comparisons) (type comparator>) (export scheme:base) (signature @@ -9955,7 +9690,6 @@ >>>#)) (char<=? - (category vs:characters vs:comparisons) (type comparator<=) (export scheme:base) (signature @@ -9969,7 +9703,6 @@ >>>#)) (char>=? - (category vs:characters vs:comparisons) (type comparator>=) (export scheme:base) (signature @@ -9984,7 +9717,6 @@ (char-ci=? - (category vs:characters vs:comparisons vs:equivalence) (type comparator=) (export scheme:char) (signature @@ -10016,7 +9748,6 @@ >>>#)) (char-ci>>#)) (char-ci>? - (category vs:characters vs:comparisons) (type comparator>) (export scheme:char) (signature @@ -10044,7 +9774,6 @@ >>>#)) (char-ci<=? - (category vs:characters vs:comparisons) (type comparator<=) (export scheme:char) (signature @@ -10058,7 +9787,6 @@ >>>#)) (char-ci>=? - (category vs:characters vs:comparisons) (type comparator>=) (export scheme:char) (signature @@ -10073,7 +9801,6 @@ (char->integer - (category vs:characters) (type converter) (export scheme:base) (signature @@ -10109,7 +9836,6 @@ >>>#)) (integer->char - (category vs:characters) (type converter) (export scheme:base) (signature @@ -10123,7 +9849,6 @@ >>>#)) (digit-value - (category vs:characters) (type converter) (export scheme:char) (signature @@ -10157,7 +9882,6 @@ (char-alphabetic? - (category vs:characters) (type predicate) (export scheme:char) (signature @@ -10193,7 +9917,6 @@ >>>#)) (char-upper-case? - (category vs:characters) (type predicate) (export scheme:char) (signature @@ -10210,7 +9933,6 @@ >>>#)) (char-lower-case? - (category vs:characters) (type predicate) (export scheme:char) (signature @@ -10227,7 +9949,6 @@ >>>#)) (char-numeric? - (category vs:characters) (type predicate) (export scheme:char) (signature @@ -10242,7 +9963,6 @@ >>>#)) (char-whitespace? - (category vs:characters) (type predicate) (export scheme:char) (signature @@ -10258,7 +9978,6 @@ (char-upcase - (category vs:characters) (type procedure) (export scheme:char) (signature @@ -10303,7 +10022,6 @@ >>>#)) (char-downcase - (category vs:characters) (type procedure) (export scheme:char) (signature @@ -10316,7 +10034,6 @@ >>>#)) (char-foldcase - (category vs:characters) (type procedure) (export scheme:char) (signature @@ -10332,7 +10049,6 @@ (procedure? - (category vs:functions vs:types) (type type-predicate) (export scheme:base) (signature @@ -10368,7 +10084,6 @@ (apply - (category vs:functions) (type procedure) (export scheme:base) (signature @@ -10405,7 +10120,6 @@ (values - (category vs:functions vs:values) (type constructor) (export scheme:base) (signature @@ -10435,7 +10149,6 @@ >>>#)) (call-with-values - (category vs:functions vs:values) (type procedure) (export scheme:base) (signature @@ -10472,7 +10185,6 @@ (error-object? - (category vs:errors) (type type-predicate) (export scheme:base) (signature @@ -10501,7 +10213,6 @@ >>>#)) (read-error? - (category vs:errors) (type predicate) (export scheme:base) (signature @@ -10528,7 +10239,6 @@ >>>#)) (file-error? - (category vs:errors) (type predicate) (export scheme:base) (signature @@ -10543,7 +10253,6 @@ (error - (category vs:errors) (type constructor) (export scheme:base) (signature @@ -10582,7 +10291,6 @@ >>>#)) (error-object-message - (category vs:errors) (type accessor) (export scheme:base) (signature @@ -10604,7 +10312,6 @@ >>>#)) (error-object-irritants - (category vs:errors) (type accessor) (export scheme:base) (signature @@ -10629,7 +10336,6 @@ (guard - (category vs:errors vs:evaluator) (type syntax) (export scheme:base) (syntax-rules @@ -10696,7 +10402,6 @@ (with-exception-handler - (category vs:errors vs:evaluator) (type procedure) (export scheme:base) (signature @@ -10775,7 +10480,6 @@ (raise - (category vs:errors vs:evaluator) (type procedure) (export scheme:base) (signature @@ -10804,7 +10508,6 @@ >>>#)) (raise-continuable - (category vs:errors vs:evaluator vs:unsupported) (type procedure) (export scheme:base) (signature @@ -10853,7 +10556,6 @@ (parameterize - (category vs:parameters) (type syntax) (export scheme:base) (syntax-rules @@ -10940,7 +10642,6 @@ (make-parameter - (category vs:parameters) (type constructor) (export scheme:base) (signature @@ -10975,7 +10676,6 @@ (current-input-port - (category vs:parameters) (type parameter) (export scheme:base) (signature @@ -11003,7 +10703,6 @@ >>>#)) (current-output-port - (category vs:parameters) (type parameter) (export scheme:base) (signature @@ -11016,7 +10715,6 @@ >>>#)) (current-error-port - (category vs:parameters) (type parameter) (export scheme:base) (signature @@ -11030,7 +10728,6 @@ (with-input-from-file - (category vs:parameters vs:functions) (type procedure) (export scheme:file) (signature @@ -11064,8 +10761,7 @@ >>>#)) - (with-output-from-file - (category vs:parameters vs:functions) + (with-output-to-file (type procedure) (export scheme:file) (signature @@ -11081,7 +10777,6 @@ (delay - (category vs:promises vs:evaluator) (type syntax) (export scheme:lazy) (syntax-rules @@ -11113,7 +10808,6 @@ (delay-force - (category vs:promises vs:evaluator) (type syntax) (export scheme:lazy) (syntax-rules @@ -11149,7 +10843,6 @@ (promise? - (category vs:promises vs:evaluator) (type type-predicate) (export scheme:lazy) (signature @@ -11176,7 +10869,6 @@ >>>#)) (make-promise - (category vs:promises vs:evaluator) (type constructor) (export scheme:lazy) (signature @@ -11201,7 +10893,6 @@ >>>#)) (force - (category vs:promises vs:evaluator) (type procedure) (export scheme:lazy) (signature @@ -11328,7 +11019,6 @@ (eval - (category vs:evaluator vs:unsupported) (type procedure) (export scheme:eval) (signature @@ -11368,7 +11058,6 @@ (environment - (category vs:evaluator vs:unsupported) (type procedure) (export scheme:eval) (signature @@ -11396,7 +11085,6 @@ (interaction-environment - (category vs:evaluator vs:unsupported) (type procedure) (export scheme:repl scheme:r5rs) (signature @@ -11422,7 +11110,6 @@ >>>#)) (scheme-report-environment - (category vs:evaluator vs:unsupported) (type procedure) (export scheme:r5rs) (signature @@ -11460,7 +11147,6 @@ >>>#)) (null-environment - (category vs:evaluator vs:unsupported) (type procedure) (export scheme:r5rs) (signature @@ -11502,7 +11188,6 @@ (call-with-current-continuation - (category vs:continuations vs:unsupported) (type procedure) (export scheme:base) (alias call/cc) @@ -11617,7 +11302,6 @@ >>>#)) (dynamic-wind - (category vs:continuations vs:unsupported) (type procedure) (export scheme:base) (signature @@ -11707,7 +11391,6 @@ (cond-expand - (category vs:compiler vs:unsupported) (type syntax) (export scheme:base) (description @@ -11773,7 +11456,6 @@ >>>#)) (features - (category vs:evaluator vs:compiler vs:unsupported) (type procedure) (export scheme:base) (signature @@ -11807,7 +11489,6 @@ (include - (category vs:compiler vs:unsupported) (type syntax) (export scheme:base) (syntax-rules @@ -11846,7 +11527,6 @@ >>>#)) (include-ci - (category vs:compiler vs:unsupported) (type syntax) (export scheme:base) (syntax-rules @@ -11861,7 +11541,6 @@ (import - (category vs:compiler vs:unsupported) (type syntax) (export scheme:base) (syntax-rules @@ -11924,7 +11603,6 @@ (load - (category vs:compiler vs:unsupported) (type procedure) (export scheme:load) (signature diff --git a/documentation/libraries-vs.ss b/documentation/libraries-vs.ss index 68276ce6..4d8324c4 100644 --- a/documentation/libraries-vs.ss +++ b/documentation/libraries-vs.ss @@ -20,103 +20,53 @@ (categories - (vs - (description - #<<< - - **FIXME!** - - >>>#)) + (vs:arithmetic) - (vs:arithmetic - (parent vs)) + (vs:associations) - (vs:associations - (parent vs)) + (vs:bytes) - (vs:bytes - (parent vs)) + (vs:booleans) - (vs:booleans - (parent vs)) + (vs:conversions) - (vs:conversions - (parent vs)) + (vs:globals) - (vs:globals - (parent vs)) + (vs:file-system) - (vs:file-system - (parent vs)) + (vs:characters) - (vs:characters - (parent vs)) + (vs:comparisons) - (vs:comparisons - (parent vs)) + (vs:compiler) - (vs:compiler - (parent vs)) + (vs:contexts) - (vs:contexts - (parent vs)) + (vs:continuations) - (vs:continuations - (parent vs)) + (vs:control) - (vs:control - (parent vs)) + (vs:equivalence) - (vs:equivalence - (parent vs) - (description - #<<< - - A **predicate** is a procedure that always returns a boolean - value (`#t` or `#f`). An **equivalence predicate** is - the computational analogue of a mathematical equivalence relation; it is - symmetric, reflexive, and transitive. - - Of the equivalence predicates - described in this section, `eq?` is the finest or most - discriminating, `equal?` is the coarsest, and `eqv?` is - slightly less discriminating than `eq?`. - - - ---- - > *The text herein was sourced and adapted as described in the [[attribution]](#appendices) appendix.* - - >>>#)) + (vs:errors) - (vs:errors - (parent vs)) + (vs:evaluator) - (vs:evaluator - (parent vs)) + (vs:functions) - (vs:functions - (parent vs)) + (vs:lambda) - (vs:lambda - (parent vs)) + (vs:lists) - (vs:lists - (parent vs)) + (vs:loops) - (vs:loops - (parent vs)) + (vs:modules) - (vs:modules - (parent vs)) + (vs:pairs) - (vs:pairs - (parent vs)) + (vs:parameters) - (vs:parameters - (parent vs)) - - (vs:ports - (parent vs)) + (vs:ports) (vs:ports:input (parent vs:ports)) @@ -130,42 +80,31 @@ (vs:ports:values (parent vs:ports)) - (vs:promises - (parent vs)) + (vs:promises) - (vs:quotation - (parent vs)) + (vs:quotation) - (vs:records - (parent vs)) + (vs:records) - (vs:strings - (parent vs)) + (vs:strings) - (vs:symbols - (parent vs)) + (vs:symbols) - (vs:syntaxes - (parent vs)) + (vs:syntaxes) - (vs:system - (parent vs)) + (vs:system) - (vs:types - (parent vs)) + (vs:types) - (vs:unimplemented - (parent vs)) + (vs:unimplemented) - (vs:unsupported - (parent vs)) + (vs:unsupported) - (vs:values - (parent vs)) + (vs:values) - (vs:vectors - (parent vs)) + (vs:vectors) + (vs:r7rs) ) @@ -179,91 +118,211 @@ ;; ---- syntaxes - ;~ quote - ;~ quasiquote - ;~ unquote - ;~ unquote-splicing + ;+ quote + (quote + (category vs:r7rs vs:syntaxes vs:quotation) + (type syntax)) + + ;+ quasiquote + (quasiquote + (category vs:r7rs vs:syntaxes vs:quotation) + (type syntax)) + + ;+ unquote + (unquote + (category vs:r7rs vs:syntaxes vs:quotation) + (type syntax)) + + ;+ unquote-splicing + (unquote-splicing + (category vs:r7rs vs:syntaxes vs:quotation) + (type syntax)) + + + ;+ _ + (_ + (category vs:r7rs vs:syntaxes) + (type auxiliary-syntax)) + + ;+ ... + (... + (category vs:r7rs vs:syntaxes) + (type auxiliary-syntax)) + + ;+ => + (=> + (category vs:r7rs vs:syntaxes) + (type auxiliary-syntax)) + + ;+ else + (else + (category vs:r7rs vs:syntaxes) + (type auxiliary-syntax)) + + + ;+ begin + (begin + (category vs:r7rs vs:control) + (type syntax)) + + ;+ and + (and + (category vs:r7rs vs:control) + (type syntax)) + + ;+ or + (or + (category vs:r7rs vs:control) + (type syntax)) + + + ;+ if + (if + (category vs:r7rs vs:control) + (type syntax)) - ;~ ... - ;~ => - ;~ _ - ;~ else + ;+ when + (when + (category vs:r7rs vs:control) + (type syntax)) + ;+ unless + (unless + (category vs:r7rs vs:control) + (type syntax)) - ;~ begin - ;~ and - ;~ or + ;+ cond + (cond + (category vs:r7rs vs:control) + (type syntax)) - ;~ if - ;~ when - ;~ unless - ;~ cond - ;~ case + ;+ case + (case + (category vs:r7rs vs:control) + (type syntax)) - ;~ do + ;+ do + (do + (category vs:r7rs vs:control vs:loops) + (type syntax)) (while + (category vs:loops vs:syntaxes) (type syntax)) (until + (category vs:loops vs:syntaxes) (type syntax)) (do-cond + (category vs:loops vs:syntaxes) (type syntax)) (while-cond + (category vs:loops vs:syntaxes) (type syntax)) (until-cond + (category vs:loops vs:syntaxes) (type syntax)) (loop + (category vs:loops vs:syntaxes) (type syntax)) - ;~ guard + ;+ guard + (guard + (category vs:r7rs vs:errors vs:evaluator) + (type syntax)) (guard* + (category vs:syntaxes) (type syntax)) (locals + (category vs:contexts vs:syntaxes) (type syntax)) - ;~ let - ;~ let* - ;~ letrec - ;~ letrec* - ;~ let-values - ;~ let*-values + ;+ let + (let + (category vs:r7rs vs:contexts) + (type syntax)) + + ;+ let* + (let* + (category vs:r7rs vs:contexts) + (type syntax)) + ;+ letrec + (letrec + (category vs:r7rs vs:contexts) + (type syntax)) - ;~ define + ;+ letrec* + (letrec* + (category vs:r7rs vs:contexts) + (type syntax)) + + ;+ let-values + (let-values + (category vs:r7rs vs:contexts vs:values) + (type syntax)) + + ;+ let*-values + (let*-values + (category vs:r7rs vs:contexts vs:values) + (type syntax)) + + + ;+ define + (define + (category vs:r7rs vs:contexts) + (type syntax)) (redefine + (category vs:contexts vs:syntaxes) (type syntax)) - ;~ define-values + ;+ define-values + (define-values + (category vs:r7rs vs:contexts vs:values) + (type syntax)) (redefine-values + (category vs:contexts vs:values vs:syntaxes) (type syntax)) - ;~ set! + ;+ set! + (set! + (category vs:r7rs vs:contexts) + (type syntax)) (set!-values + (category vs:contexts vs:values vs:syntaxes) (type syntax)) - ;~ define-record + ;+ define-record + (define-record-type + (category vs:r7rs vs:contexts vs:records) + (type syntax)) - ;~ lambda + ;+ lambda + (lambda + (category vs:r7rs vs:lambda) + (type syntax)) - ;~ parameterize + ;+ parameterize + (parameterize + (category vs:r7rs vs:parameters) + (type syntax)) @@ -271,10 +330,16 @@ ;; ---- types - ;~ not + ;+ not + (not + (category vs:r7rs vs:booleans) + (type predicate)) - ;~ null? + ;+ null? + (null? + (category vs:r7rs vs:lists vs:types) + (type type-predicate)) (void? (type type-predicate)) @@ -283,7 +348,10 @@ (type type-predicate)) - ;~ boolean? + ;+ boolean? + (boolean? + (category vs:r7rs vs:booleans vs:types) + (type type-predicate)) (true? (type predicate)) @@ -298,19 +366,56 @@ (type predicate)) - ;~ number? - ;~ complex? - ;~ real? - ;~ rational? - ;~ integer? - ;~ exact-integer? + ;+ number? + (number? + (category vs:r7rs vs:arithmetic vs:types) + (type type-predicate)) - ;~ exact? - ;~ inexact? + ;+ complex? + (complex? + (category vs:r7rs vs:arithmetic vs:types) + (type type-predicate)) + + ;+ real? + (real? + (category vs:r7rs vs:arithmetic vs:types) + (type type-predicate)) + + ;+ rational? + (rational? + (category vs:r7rs vs:arithmetic vs:types) + (type type-predicate)) + ;+ integer? + (integer? + (category vs:r7rs vs:arithmetic vs:types) + (type type-predicate)) - ;~ char? - ;~ symbol? + ;+ exact-integer? + (exact-integer? + (category vs:r7rs vs:arithmetic vs:types) + (type type-predicate)) + + ;+ exact? + (exact? + (category vs:r7rs vs:arithmetic vs:types) + (type type-predicate)) + + ;+ inexact? + (inexact? + (category vs:r7rs vs:arithmetic vs:types) + (type type-predicate)) + + + ;+ char? + (char? + (category vs:r7rs vs:characters vs:types) + (type type-predicate)) + + ;+ symbol? + (symbol? + (category vs:r7rs vs:symbols vs:types) + (type type-predicate)) (keyword? (type type-predicate)) @@ -319,7 +424,10 @@ (type type-predicate)) - ;~ string? + ;+ string? + (string? + (category vs:r7rs vs:strings vs:types) + (type type-predicate)) (string-immutable? (type type-predicate)) @@ -337,7 +445,10 @@ (type predicate)) - ;~ bytevector? + ;+ bytevector? + (bytevector? + (category vs:r7rs vs:bytes) + (type type-predicate)) (bytevector-immutable? (type type-predicate)) @@ -362,7 +473,10 @@ (type type-predicate)) - ;~ pair? + ;+ pair? + (pair? + (category vs:r7rs vs:pairs vs:lists vs:types) + (type type-predicate)) (pair-immutable? (type type-predicate)) @@ -371,7 +485,10 @@ (type type-predicate)) - ;~ vector? + ;+ vector? + (vector? + (category vs:r7rs vs:vectors vs:types) + (type type-predicate)) (vector-immutable? (type type-predicate)) @@ -409,17 +526,26 @@ (type type-predicate)) - ;~ error-object? + ;+ error-object? + (error-object? + (category vs:r7rs vs:errors) + (type type-predicate)) (syntax-error? (type predicate)) - ;~ file-error? + ;+ file-error? + (file-error? + (category vs:r7rs vs:errors) + (type predicate)) (port-error? (type type-predicate)) - ;~ read-error? + ;+ read-error? + (read-error? + (category vs:r7rs vs:errors) + (type predicate)) (write-error? (type type-predicate)) @@ -441,7 +567,9 @@ (proper-list? (type predicate)) + ;+ list? (proper-or-empty-list? + (category vs:r7rs vs:lists vs:types) (type predicate) (alias list?)) @@ -460,17 +588,40 @@ (type predicate)) - ;~ procedure? + ;+ procedure? + (procedure? + (category vs:r7rs vs:functions vs:types) + (type type-predicate)) (syntax? (type predicate)) - ;~ port? - ;~ input-port? - ;~ output-port? - ;~ binary-port? - ;~ textual-port? + ;+ port? + (port? + (category vs:r7rs vs:ports vs:types) + (type type-predicate)) + + ;+ input-port? + (input-port? + (category vs:r7rs vs:ports:input) + (type predicate)) + + ;+ output-port? + (output-port? + (category vs:r7rs vs:ports:output) + (type predicate)) + + ;+ binary-port? + (binary-port? + (category vs:r7rs vs:ports) + (type predicate)) + + ;+ textual-port? + (textual-port? + (category vs:r7rs vs:ports) + (type predicate)) + (binary-input-port? (type predicate)) @@ -485,7 +636,10 @@ (type predicate)) - ;~ eof-object? + ;+ eof-object? + (eof-object? + (category vs:r7rs vs:ports vs:globals) + (type predicate)) (path? @@ -514,7 +668,10 @@ (parameter? (type type-predicate)) - ;~ promise? + ;+ promise? + (promise? + (category vs:r7rs vs:promises vs:evaluator) + (type type-predicate)) (resource? @@ -527,25 +684,74 @@ (type predicate)) - ;~ zero? - ;~ positive? - ;~ negative? - ;~ finite? - ;~ infinite? - ;~ nan? - ;~ even? - ;~ odd? + ;+ zero? + (zero? + (category vs:r7rs vs:arithmetic) + (type predicate)) + + ;+ positive? + (positive? + (category vs:r7rs vs:arithmetic) + (type predicate)) + + ;+ negative? + (negative? + (category vs:r7rs vs:arithmetic) + (type predicate)) + + ;+ finite? + (finite? + (category vs:r7rs vs:arithmetic) + (type predicate)) + + ;+ infinite? + (infinite? + (category vs:r7rs vs:arithmetic) + (type predicate)) + + ;+ nan? + (nan? + (category vs:r7rs vs:arithmetic) + (type predicate)) + + ;+ even? + (even? + (category vs:r7rs vs:arithmetic) + (type predicate)) + + ;+ odd? + (odd? + (category vs:r7rs vs:arithmetic) + (type predicate)) + + + ;+ char-numeric? + (char-numeric? + (category vs:r7rs vs:characters) + (type predicate)) + ;+ char-alphabetic? + (char-alphabetic? + (category vs:r7rs vs:characters) + (type predicate)) + + ;+ char-upper-case? + (char-upper-case? + (category vs:r7rs vs:characters) + (type predicate)) - ;~ char-numeric? - ;~ char-alphabetic? - ;~ char-upper-case? - ;~ char-lower-case? + ;+ char-lower-case? + (char-lower-case? + (category vs:r7rs vs:characters) + (type predicate)) (char-alphabetic-or-numeric? (type predicate)) - ;~ char-whitespace? + ;+ char-whitespace? + (char-whitespace? + (category vs:r7rs vs:characters) + (type predicate)) (char-control? (type predicate)) @@ -991,50 +1197,182 @@ (negative (type procedure)) - ;~ abs + ;+ abs + (abs + (category vs:r7rs vs:arithmetic) + (type procedure)) (signum (type procedure)) - ;~ floor - ;~ ceiling - ;~ round - ;~ truncate + ;+ floor + (floor + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ ceiling + (ceiling + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ round + (round + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ truncate + (truncate + (category vs:r7rs vs:arithmetic) + (type procedure)) (fractional (type procedure)) - ;~ exact - ;~ inexact - ;~ square - ;~ sqrt - ;~ exact-integer-sqrt - ;~ exp - ;~ log - ;~ sin - ;~ cos - ;~ tan - ;~ asin - ;~ acos - ;~ atan - ;~ floor/ - ;~ floor-quotient - ;~ floor-remainder - ;~ modulo (alias) - ;~ truncate/ - ;~ quotient (alias) - ;~ truncate-quotient - ;~ remainder (alias) - ;~ truncate-remainder - ;~ expt - ;~ + - ;~ - - ;~ * - ;~ / - ;~ gcd - ;~ lcm - ;~ min - ;~ max + ;+ exact + (exact + (category vs:r7rs vs:arithmetic) + (type converter)) + + ;+ inexact + (inexact + (category vs:r7rs vs:arithmetic) + (type converter)) + + ;+ square + (square + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ sqrt + (sqrt + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ exact-integer-sqrt + (exact-integer-sqrt + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ exp + (exp + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ log + (log + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ sin + (sin + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ cos + (cos + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ tan + (tan + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ asin + (asin + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ acos + (acos + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ atan + (atan + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ floor/ + (floor/ + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ floor-quotient + (floor-quotient + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ floor-remainder + ;+ modulo + (floor-remainder + (category vs:r7rs vs:arithmetic) + (type procedure) + (alias modulo)) + + ;+ truncate/ + (truncate/ + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ truncate-quotient + ;+ quotient + (truncate-quotient + (category vs:r7rs vs:arithmetic) + (type procedure) + (alias quotient)) + + ;+ truncate-remainder + ;+ remainder + (truncate-remainder + (category vs:r7rs vs:arithmetic) + (type procedure) + (alias remainder)) + + ;+ expt + (expt + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ + + (+ + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ - + (- + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ * + (* + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ / + (/ + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ gcd + (gcd + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ lcm + (lcm + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ min + (min + (category vs:r7rs vs:arithmetic) + (type procedure)) + + ;+ max + (max + (category vs:r7rs vs:arithmetic) + (type procedure)) @@ -1086,12 +1424,23 @@ ;; ---- comparisons - ;~ eq? - ;~ equivalent-by-identity? (alias) - ;~ eqv? - ;~ equivalent-by-value-strict? (alias) - ;~ equal? - ;~ equivalent-by-value-strict-recursive? (alias) + ;+ eq? + (equivalent-by-identity? + (category vs:r7rs vs:equivalence) + (type comparator=) + (alias eq?)) + + ;+ eqv? + (equivalent-by-value-strict? + (category vs:r7rs vs:equivalence) + (type comparator=) + (alias eqv?)) + + ;+ equal? + (equivalent-by-value-strict-recursive? + (category vs:r7rs vs:equivalence) + (type comparator=) + (alias equal?)) (equivalent-by-value-coerced? @@ -1123,7 +1472,10 @@ (boolean<=? (type procedure)) - ;~ boolean=? + ;+ boolean=? + (boolean=? + (category vs:r7rs vs:booleans vs:comparisons vs:equivalence) + (type comparator=)) (boolean>=? (type procedure)) @@ -1132,35 +1484,134 @@ (type procedure)) - ;~ < - ;~ <= - ;~ = - ;~ >= - ;~ > + ;+ < + (< + (category vs:r7rs vs:arithmetic vs:comparisons) + (type comparator<)) + + ;+ <= + (<= + (category vs:r7rs vs:arithmetic vs:comparisons) + (type comparator<=)) + + ;+ = + (= + (category vs:r7rs vs:arithmetic vs:comparisons vs:equivalence) + (type comparator=)) + + ;+ >= + (>= + (category vs:r7rs vs:arithmetic vs:comparisons) + (type comparator>=)) + + ;+ > + (> + (category vs:r7rs vs:arithmetic vs:comparisons) + (type comparator>)) + + + ;+ char=? + (char>=? + (category vs:r7rs vs:characters vs:comparisons) + (type comparator>=)) + + ;+ char>? + (char>? + (category vs:r7rs vs:characters vs:comparisons) + (type comparator>)) - ;~ char=? - ;~ char>? - ;~ char-ci=? - ;~ char-ci>? + ;+ char-ci=? - ;~ string>? + ;+ char-ci<=? + (char-ci<=? + (category vs:r7rs vs:characters vs:comparisons) + (type comparator<=)) - ;~ string-ci=? - ;~ string-ci>? + ;+ char-ci=? + (char-ci=? + (category vs:r7rs vs:characters vs:comparisons vs:equivalence) + (type comparator=)) + + ;+ char-ci>=? + (char-ci>=? + (category vs:r7rs vs:characters vs:comparisons) + (type comparator>=)) + + ;+ char-ci>? + (char-ci>? + (category vs:r7rs vs:characters vs:comparisons) + (type comparator>)) + + + ;+ string=? + (string>=? + (category vs:r7rs vs:strings vs:comparisons) + (type comparator>=)) + + ;+ string>? + (string>? + (category vs:r7rs vs:strings vs:comparisons) + (type comparator>)) + + + ;+ string-ci=? + (string-ci>=? + (category vs:r7rs vs:strings vs:comparisons) + (type comparator>=)) + + ;+ string-ci>? + (string-ci>? + (category vs:r7rs vs:strings vs:comparisons) + (type comparator>)) (symbol=? (type procedure)) @@ -1656,10 +2110,25 @@ ;; ---- lists - ;~ car - ;~ cdr - ;~ caar - ;~ cdar + ;+ car + (car + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) + + ;+ cdr + (cdr + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) + + ;+ caar + (caar + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) + + ;+ cdar + (cdar + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (first-pair @@ -1696,7 +2165,9 @@ (first (type procedure)) + ;+ cadr (second + (category vs:r7rs vs:pairs vs:lists) (type procedure) (alias cadr)) @@ -1728,7 +2199,9 @@ (first-tail (type procedure)) + ;+ cddr (second-tail + (category vs:r7rs vs:pairs vs:lists) (type procedure) (alias cddr)) @@ -1757,8 +2230,15 @@ (type procedure)) - ;~ length - ;~ reverse + ;+ length + (length + (category vs:r7rs vs:lists) + (type procedure)) + + ;+ reverse + (reverse + (category vs:r7rs vs:lists) + (type procedure)) (pair->immutable (type procedure)) @@ -1773,36 +2253,67 @@ (type procedure)) - ;~ cons + ;+ cons + (cons + (category vs:r7rs vs:pairs vs:lists) + (type constructor)) (xcons (type procedure)) - ;~ set-car! - ;~ set-cdr! + ;+ set-car! + (set-car! + (category vs:r7rs vs:pairs vs:lists) + (type mutator!)) + + ;+ set-cdr! + (set-cdr! + (category vs:r7rs vs:pairs vs:lists) + (type mutator!)) + ;+ list-tail (list-ref-cons + (category vs:r7rs vs:lists) (type procedure) (alias list-tail)) + ;+ list-ref (list-ref-car - (type procedure) + (category vs:r7rs vs:lists) + (type accessor) (alias list-ref)) (list-ref-cdr (type procedure)) - ;~ memq - ;~ memv - ;~ assq - ;~ assv + ;+ memq + (memq + (category vs:r7rs vs:lists) + (type procedure)) + + ;+ memv + (memv + (category vs:r7rs vs:lists) + (type procedure)) + + ;+ assq + (assq + (category vs:r7rs vs:lists vs:associations) + (type procedure)) + + ;+ assv + (assv + (category vs:r7rs vs:lists vs:associations) + (type procedure)) (find (type procedure)) + ;+ list-set! (list-set-car! + (category vs:r7rs vs:lists) (type procedure) (alias list-set!)) @@ -1813,13 +2324,23 @@ (make-pair (type procedure)) - ;~ make-list - ;~ list + ;+ make-list + (make-list + (category vs:r7rs vs:lists) + (type constructor)) + + ;+ list + (list + (category vs:r7rs vs:lists) + (type constructor)) (list* (type procedure)) - ;~ append + ;+ append + (append + (category vs:r7rs vs:lists) + (type procedure)) (list-fill! (type procedure)) @@ -1827,13 +2348,23 @@ (list-copy! (type procedure)) - ;~ list-copy + ;+ list-copy + (list-copy + (category vs:r7rs vs:lists) + (type procedure)) (list-reverse! (type procedure)) - ;~ member - ;~ assoc + ;+ member + (member + (category vs:r7rs vs:lists) + (type procedure)) + + ;+ assoc + (assoc + (category vs:r7rs vs:lists vs:associations) + (type procedure)) @@ -1841,7 +2372,10 @@ ;; ---- arrays - ;~ vector-length + ;+ vector-length + (vector-length + (category vs:r7rs vs:vectors) + (type procedure)) (vector-reverse (type procedure)) @@ -1855,7 +2389,10 @@ (vector-clear! (type procedure)) - ;~ vector-ref + ;+ vector-ref + (vector-ref + (category vs:r7rs vs:vectors) + (type accessor)) (vector-push-from! (type procedure)) @@ -1863,7 +2400,10 @@ (vector-find (type procedure)) - ;~ vector-set! + ;+ vector-set! + (vector-set! + (category vs:r7rs vs:vectors) + (type mutator!)) (vector-insert-from! (type procedure)) @@ -1874,22 +2414,51 @@ (vector-clear-at! (type procedure)) - ;~ make-vector - ;~ vector - ;~ vector-append - ;~ vector-fill! - ;~ vector-copy! + ;+ make-vector + (make-vector + (category vs:r7rs vs:vectors) + (type constructor)) + + ;+ vector + (vector + (category vs:r7rs vs:vectors) + (type constructor)) + + ;+ vector-append + (vector-append + (category vs:r7rs vs:vectors) + (type procedure)) + + ;+ vector-fill! + (vector-fill! + (category vs:r7rs vs:vectors) + (type mutator!)) + + ;+ vector-copy! + (vector-copy! + (category vs:r7rs vs:vectors) + (type mutator!)) (vector-append! (type procedure)) - ;~ vector-copy + ;+ vector-copy + (vector-copy + (category vs:r7rs vs:vectors) + (type accessor)) (vector-reverse! (type procedure)) - ;~ vector->list - ;~ list->vector + ;+ vector->list + (vector->list + (category vs:r7rs vs:vectors vs:lists vs:conversions) + (type converter)) + + ;+ list->vector + (list->vector + (category vs:r7rs vs:vectors vs:lists vs:conversions) + (type converter)) (vector-push! (type procedure)) @@ -1915,7 +2484,10 @@ ;; ---- bytes - ;~ bytevector-length + ;+ bytevector-length + (bytevector-length + (category vs:r7rs vs:bytes) + (type procedure)) (bytevector-reverse (type procedure)) @@ -1926,18 +2498,43 @@ (bytevector->mutable (type procedure)) - ;~ bytevector-u8-ref + ;+ bytevector-u8-ref + (bytevector-u8-ref + (category vs:r7rs vs:bytes) + (type accessor)) + + ;+ bytevector-u8-set! + (bytevector-u8-set! + (category vs:r7rs vs:bytes) + (type mutator!)) - ;~ bytevector-u8-set! - ;~ make-bytevector - ;~ bytevector - ;~ bytevector-append + ;+ make-bytevector + (make-bytevector + (category vs:r7rs vs:bytes) + (type constructor)) + + ;+ bytevector + (bytevector + (category vs:r7rs vs:bytes) + (type constructor)) + + ;+ bytevector-append + (bytevector-append + (category vs:r7rs vs:bytes) + (type procedure)) (bytevector-u8-fill! (type procedure)) - ;~ bytevector-copy! - ;~ bytevector-copy + ;+ bytevector-copy! + (bytevector-copy! + (category vs:r7rs vs:bytes) + (type procedure!)) + + ;+ bytevector-copy + (bytevector-copy + (category vs:r7rs vs:bytes) + (type procedure)) (bytevector-reverse! (type procedure)) @@ -2026,15 +2623,33 @@ ;; ---- string - ;~ string-length + ;+ string-length + (string-length + (category vs:r7rs vs:strings) + (type procedure)) (string-reverse (type procedure)) - ;~ string->symbol - ;~ symbol->string - ;~ char->integer - ;~ integer->char + ;+ string->symbol + (string->symbol + (category vs:r7rs vs:strings vs:symbols vs:conversions) + (type converter)) + + ;+ symbol->string + (symbol->string + (category vs:r7rs vs:strings vs:symbols vs:conversions) + (type converter)) + + ;+ char->integer + (char->integer + (category vs:r7rs vs:characters) + (type converter)) + + ;+ integer->char + (integer->char + (category vs:r7rs vs:characters) + (type converter)) (string->keyword (type procedure)) @@ -2048,9 +2663,20 @@ (keyword->symbol (type procedure)) - ;~ string-upcase - ;~ string-downcase - ;~ string-foldcase + ;+ string-upcase + (string-upcase + (category vs:r7rs vs:strings vs:conversions) + (type procedure)) + + ;+ string-downcase + (string-downcase + (category vs:r7rs vs:strings vs:conversions) + (type procedure)) + + ;+ string-foldcase + (string-foldcase + (category vs:r7rs vs:strings vs:conversions) + (type procedure)) (symbol-upcase (type procedure)) @@ -2061,9 +2687,20 @@ (symbol-foldcase (type procedure)) - ;~ char-upcase - ;~ char-downcase - ;~ char-foldcase + ;+ char-upcase + (char-upcase + (category vs:r7rs vs:characters) + (type procedure)) + + ;+ char-downcase + (char-downcase + (category vs:r7rs vs:characters) + (type procedure)) + + ;+ char-foldcase + (char-foldcase + (category vs:r7rs vs:characters) + (type procedure)) (keyword-upcase (type procedure)) @@ -2080,41 +2717,95 @@ (string->mutable (type procedure)) - ;~ string-ref + ;+ string-ref + (string-ref + (category vs:r7rs vs:strings) + (type accessor)) + ;+ string-set! (string-set! - (type procedure)) + (category vs:r7rs vs:strings) + (type mutator!)) + ;+ make-string (make-string - (type procedure)) + (category vs:r7rs vs:strings) + (type constructor)) + ;+ string (string - (type procedure)) + (category vs:r7rs vs:strings) + (type constructor)) + ;+ string-append (string-append - (type procedure)) + (category vs:r7rs vs:strings) + (type constructor)) + ;+ string-fill! (string-fill! - (type procedure)) + (category vs:r7rs vs:strings) + (type mutator!)) + ;+ string-copy! (string-copy! - (type procedure)) + (category vs:r7rs vs:strings) + (type mutator!)) - ;~ string-copy - ;~ substring (alias) + ;+ string-copy + ;+ substring + (string-copy + (category vs:r7rs vs:strings) + (type accessor) + (alias substring)) (string-reverse! (type procedure)) - ;~ string->list - ;~ list->string - ;~ string->vector - ;~ vector->string - ;~ string->utf8 - ;~ utf8->string - ;~ string->number - ;~ number->string - ;~ digit-value + ;+ string->list + (string->list + (category vs:r7rs vs:strings vs:lists vs:conversions) + (type converter)) + + ;+ list->string + (list->string + (category vs:r7rs vs:strings vs:lists vs:conversions) + (type converter)) + + ;+ string->vector + (string->vector + (category vs:r7rs vs:strings vs:vectors vs:conversions) + (type converter)) + + ;+ vector->string + (vector->string + (category vs:r7rs vs:strings vs:vectors vs:conversions) + (type converter)) + + ;+ string->utf8 + (string->utf8 + (category vs:r7rs vs:bytes vs:strings) + (type converter)) + + ;+ utf8->string + (utf8->string + (category vs:r7rs vs:bytes vs:strings) + (type converter)) + + ;+ string->number + (string->number + (category vs:r7rs vs:strings vs:conversions) + (type converter)) + + ;+ number->string + (number->string + (category vs:r7rs vs:strings vs:conversions) + (type converter)) + + ;+ digit-value + (digit-value + (category vs:r7rs vs:characters) + (type converter)) @@ -2215,22 +2906,62 @@ (call-with-values* (type procedure)) - ;~ call-with-values + ;+ call-with-values + (call-with-values + (category vs:r7rs vs:functions vs:values) + (type procedure)) (map-in-order (type procedure)) - ;~ call - ;~ apply - ;~ map - ;~ for-each - ;~ vector-map - ;~ vector-for-each - ;~ bytevector-u8-map - ;~ bytevector-u8-for-each - ;~ string-map - ;~ string-for-each - ;~ values + (call + (type procedure)) + + ;+ apply + (apply + (category vs:r7rs vs:functions) + (type procedure)) + + ;+ map + (map + (category vs:r7rs vs:lists vs:functions vs:conversions vs:loops) + (type map)) + + ;+ for-each + (for-each + (category vs:r7rs vs:lists vs:functions vs:loops) + (type for-each)) + + ;+ vector-map + (vector-map + (category vs:r7rs vs:vectors vs:functions vs:conversions vs:loops) + (type map)) + + ;+ vector-for-each + (vector-for-each + (category vs:r7rs vs:vectors vs:functions vs:loops) + (type for-each)) + + (bytevector-u8-map + (type map)) + + (bytevector-u8-for-each + (type for-each)) + + ;+ string-map + (string-map + (category vs:r7rs vs:strings vs:functions vs:conversions vs:loops) + (type map)) + + ;+ string-for-each + (string-for-each + (category vs:r7rs vs:strings vs:functions vs:loops) + (type for-each)) + + ;+ values + (values + (category vs:r7rs vs:functions vs:values) + (type constructor)) (curry (type procedure)) @@ -2322,7 +3053,10 @@ ;; ---- runtime - ;~ command-line + ;+ command-line + (command-line + (category vs:r7rs) + (type procedure)) (command-line->vector (type procedure)) @@ -2330,7 +3064,10 @@ (command-line-length (type procedure)) - ;~ get-environment-variables + ;+ get-environment-variables + (get-environment-variables + (category vs:r7rs) + (type procedure)) (get-environment-variables->vector (type procedure)) @@ -2338,12 +3075,37 @@ (get-environment-fingerprint (type procedure)) - ;~ current-second - ;~ current-jiffy - ;~ jiffies-per-second - ;~ raise - ;~ error-object-message - ;~ error-object-irritants + + ;+ current-second + (current-second + (category vs:r7rs) + (type procedure)) + + ;+ current-jiffy + (current-jiffy + (category vs:r7rs) + (type procedure)) + + ;+ jiffies-per-second + (jiffies-per-second + (category vs:r7rs) + (type procedure)) + + + ;+ raise + (raise + (category vs:r7rs vs:errors vs:evaluator) + (type procedure)) + + ;+ error-object-message + (error-object-message + (category vs:r7rs vs:errors) + (type accessor)) + + ;+ error-object-irritants + (error-object-irritants + (category vs:r7rs vs:errors) + (type accessor)) (error-object-irritants->vector (type procedure)) @@ -2354,7 +3116,10 @@ (command-line-ref (type procedure)) - ;~ get-environment-variable + ;+ get-environment-variable + (get-environment-variable + (category vs:r7rs) + (type procedure)) (process-wait-poll (type procedure)) @@ -2410,12 +3175,18 @@ (process-run (type procedure)) - ;~ error + ;+ error + (error + (category vs:r7rs vs:errors) + (type constructor)) (make-error (type procedure)) - ;~ make-parameter + ;+ make-parameter + (make-parameter + (category vs:r7rs vs:parameters) + (type constructor)) (parameter-ref (type procedure)) @@ -2450,8 +3221,15 @@ (pause (type procedure)) - ;~ exit - ;~ emergency-exit + ;+ exit + (exit + (category vs:r7rs) + (type procedure)) + + ;+ emergency-exit + (emergency-exit + (category vs:r7rs) + (type procedure)) (process-spawn* (type procedure)) @@ -2510,18 +3288,65 @@ ;; ---- ports - ;~ current-input-port - ;~ current-output-port - ;~ current-error-port - ;~ eof-object - ;~ open-input-bytevector - ;~ open-input-string - ;~ get-output-bytevector - ;~ get-output-string - ;~ open-binary-input-file - ;~ open-binary-output-file - ;~ open-input-file - ;~ open-output-file + ;+ current-input-port + (current-input-port + (category vs:r7rs vs:parameters) + (type parameter)) + + ;+ current-output-port + (current-output-port + (category vs:r7rs vs:parameters) + (type parameter)) + + ;+ current-error-port + (current-error-port + (category vs:r7rs vs:parameters) + (type parameter)) + + ;+ eof-object + (eof-object + (category vs:r7rs vs:ports vs:globals) + (type constructor)) + + ;+ open-input-bytevector + (open-input-bytevector + (category vs:r7rs vs:ports:input vs:ports:open vs:bytes) + (type procedure)) + + ;+ open-input-string + (open-input-string + (category vs:r7rs vs:ports:input vs:ports:open vs:strings) + (type procedure)) + + ;+ get-output-bytevector + (get-output-bytevector + (category vs:r7rs vs:ports:output vs:bytes) + (type procedure)) + + ;+ get-output-string + (get-output-string + (category vs:r7rs vs:ports:output vs:strings) + (type procedure)) + + ;+ open-binary-input-file + (open-binary-input-file + (category vs:r7rs vs:ports:input vs:ports:open) + (type procedure)) + + ;+ open-binary-output-file + (open-binary-output-file + (category vs:r7rs vs:ports:output vs:ports:open) + (type procedure)) + + ;+ open-input-file + (open-input-file + (category vs:r7rs vs:ports:input vs:ports:open) + (type procedure)) + + ;+ open-output-file + (open-output-file + (category vs:r7rs vs:ports:output vs:ports:open) + (type procedure)) (port-descriptor (type procedure)) @@ -2541,7 +3366,10 @@ (port-temporary-path (type procedure)) - ;~ call-with-port + ;+ call-with-port + (call-with-port + (category vs:r7rs vs:ports vs:functions) + (type procedure)) (call-with-binary-input-file (type procedure)) @@ -2549,8 +3377,15 @@ (call-with-binary-output-file (type procedure)) - ;~ call-with-input-file - ;~ call-with-output-file + ;+ call-with-input-file + (call-with-input-file + (category vs:r7rs vs:ports:input vs:functions) + (type procedure)) + + ;+ call-with-output-file + (call-with-output-file + (category vs:r7rs vs:ports:output vs:functions) + (type procedure)) (with-binary-input-file (type procedure)) @@ -2558,10 +3393,14 @@ (with-binary-output-file (type procedure)) + ;+ with-input-from-file (with-input-from-file + (category vs:r7rs vs:parameters vs:functions) (type procedure)) + ;+ with-output-to-file (with-output-to-file + (category vs:r7rs vs:parameters vs:functions) (type procedure)) (port-descriptor-flag-ref @@ -2570,25 +3409,83 @@ (port-descriptor-flag-set! (type procedure)) - ;~ open-output-bytevector - ;~ open-output-string - ;~ input-port-open? - ;~ output-port-open? - ;~ close-port - ;~ close-input-port - ;~ close-output-port - ;~ u8-ready? - ;~ peek-u8 - ;~ read-u8 - ;~ char-ready? - ;~ peek-char - ;~ read-char - ;~ read-bytevector! + ;+ open-output-bytevector + (open-output-bytevector + (category vs:r7rs vs:ports:output vs:ports:open vs:bytes) + (type procedure)) + + ;+ open-output-string + (open-output-string + (category vs:r7rs vs:ports:output vs:ports:open vs:strings) + (type procedure)) + + ;+ input-port-open? + (input-port-open? + (category vs:r7rs vs:ports:input vs:ports:open) + (type predicate)) + + ;+ output-port-open? + (output-port-open? + (category vs:r7rs vs:ports:output vs:ports:open) + (type predicate)) + + ;+ close-port + (close-port + (category vs:r7rs vs:ports) + (type procedure)) + + ;+ close-input-port + (close-input-port + (category vs:r7rs vs:ports:input) + (type procedure)) + + ;+ close-output-port + (close-output-port + (category vs:r7rs vs:ports:output) + (type procedure)) + + ;+ u8-ready? + (u8-ready? + (category vs:r7rs vs:ports:input vs:bytes) + (type predicate)) + + ;+ peek-u8 + (peek-u8 + (category vs:r7rs vs:ports:input vs:bytes) + (type procedure)) + + ;+ read-u8 + (read-u8 + (category vs:r7rs vs:ports:input vs:bytes) + (type procedure)) + + ;+ char-ready? + (char-ready? + (category vs:r7rs vs:ports:input vs:strings vs:characters) + (type predicate)) + + ;+ peek-char + (peek-char + (category vs:r7rs vs:ports:input vs:strings vs:characters) + (type procedure)) + + ;+ read-char + (read-char + (category vs:r7rs vs:ports:input vs:strings vs:characters) + (type procedure)) + + ;+ read-bytevector! + (read-bytevector! + (category vs:r7rs vs:ports:input vs:bytes) + (type procedure!)) (read-bytevector-append! (type procedure)) - ;~ read-bytevector + ;+ read-bytevector + (read-bytevector + (category vs:r7rs vs:ports:input vs:bytes) + (type procedure)) (read-bytevector-chunk (type procedure)) @@ -2602,19 +3499,27 @@ (read-string-append! (type procedure)) - ;~ read-string + ;+ read-string + (read-string + (category vs:r7rs vs:ports:input vs:strings) + (type procedure)) (read-string-chunk (type procedure)) + ;+ read-line (read-string-line + (category vs:r7rs vs:ports:input vs:strings) (type procedure) (alias read-line)) (read-string-zero (type procedure)) - ;~ read + ;+ read + (read + (category vs:r7rs vs:ports:input vs:ports:values) + (type procedure)) (read-bytevector-fold (type procedure)) @@ -2643,8 +3548,15 @@ (read-fold (type procedure)) - ;~ write-u8 - ;~ write-bytevector + ;+ write-u8 + (write-u8 + (category vs:r7rs vs:ports:output vs:bytes) + (type procedure)) + + ;+ write-bytevector + (write-bytevector + (category vs:r7rs vs:ports:output vs:bytes) + (type procedure)) (write-bytevector-line (type procedure)) @@ -2652,8 +3564,15 @@ (write-bytevector-zero (type procedure)) - ;~ write-char - ;~ write-string + ;+ write-char + (write-char + (category vs:r7rs vs:ports:output vs:strings vs:characters) + (type procedure)) + + ;+ write-string + (write-string + (category vs:r7rs vs:ports:output vs:strings) + (type procedure)) (write-string-line (type procedure)) @@ -2661,10 +3580,25 @@ (write-string-zero (type procedure)) - ;~ write - ;~ write-shared - ;~ write-simple - ;~ display + ;+ write + (write + (category vs:r7rs vs:ports:output vs:ports:values) + (type procedure)) + + ;+ write-shared + (write-shared + (category vs:r7rs vs:ports:output vs:ports:values) + (type procedure)) + + ;+ write-simple + (write-simple + (category vs:r7rs vs:ports:output vs:ports:values) + (type procedure)) + + ;+ display + (display + (category vs:r7rs vs:ports:output vs:ports:values) + (type procedure)) (write-line (type procedure)) @@ -2672,8 +3606,15 @@ (display-line (type procedure)) - ;~ newline - ;~ flush-output-port + ;+ newline + (newline + (category vs:r7rs vs:ports:output vs:bytes vs:strings) + (type procedure)) + + ;+ flush-output-port + (flush-output-port + (category vs:r7rs vs:ports:output) + (type procedure)) (open-binary-temporary (type procedure)) @@ -2684,6 +3625,23 @@ + ;; ---- file-system + + + ;+ file-exists? + (file-exists? + (category vs:r7rs vs:file-system) + (type procedure)) + + ;+ delete-file + (fs-file-delete + (category vs:r7rs vs:file-system) + (type procedure) + (alias delete-file)) + + + + ;; ---- crypto @@ -3218,76 +4176,100 @@ (caaar - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (caaaar - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (caaadr - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (caadr - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (caadar - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (caaddr - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (cadar - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (cadaar - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (cadadr - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (caddr - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (caddar - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (cadddr - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (cdaar - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (cdaaar - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (cdaadr - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (cdadr - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (cdadar - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (cdaddr - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (cddar - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (cddaar - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (cddadr - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (cdddr - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (cdddar - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) (cddddr - (type procedure)) + (category vs:r7rs vs:pairs vs:lists) + (type accessor)) @@ -3319,46 +4301,125 @@ - ;; ---- unimplemented syntaxes + ;; ---- R7RS unimplemented syntaxes + + + ;+ delay + (delay + (category vs:r7rs vs:promises vs:evaluator) + (type syntax)) + + ;+ delay-force + (delay-force + (category vs:r7rs vs:promises vs:evaluator) + (type syntax)) + + + + + ;; ---- R7RS unsupported syntaxes + + ;+ case-lambda + (case-lambda + (category vs:r7rs vs:lambda) + (type syntax)) - ;~ delay - ;~ delay-force + ;+ cond-expand + (cond-expand + (category vs:r7rs vs:compiler vs:unsupported) + (type syntax)) + ;+ define-syntax + (define-syntax + (category vs:r7rs vs:syntaxes vs:unsupported) + (type syntax)) + ;+ let-syntax + (let-syntax + (category vs:r7rs vs:syntaxes vs:unsupported) + (type syntax)) + ;+ letrec-syntax + (letrec-syntax + (category vs:r7rs vs:syntaxes vs:unsupported) + (type syntax)) - ;; ---- unsupported syntaxes + ;+ syntax-rules + (syntax-rules + (category vs:r7rs vs:syntaxes vs:unsupported) + (type syntax)) + ;+ syntax-error + (syntax-error + (category vs:r7rs vs:syntaxes vs:unsupported) + (type syntax)) + + ;+ import + (import + (category vs:r7rs vs:compiler vs:unsupported) + (type syntax)) + + ;+ include + (include + (category vs:r7rs vs:compiler vs:unsupported) + (type syntax)) + + ;+ include-ci + (include-ci + (category vs:r7rs vs:compiler vs:unsupported) + (type syntax)) - ;~ case-lambda - ;~ cond-expand - ;~ define-syntax - ;~ import - ;~ include - ;~ include-ci - ;~ let-syntax - ;~ letrec-syntax - ;~ syntax-error - ;~ syntax-rules + ;; ---- R7RS unimplemented procedures - ;; ---- unimplemented procedures + ;+ make-promise + (make-promise + (category vs:r7rs vs:promises vs:evaluator) + (type constructor)) + + ;+ force + (force + (category vs:r7rs vs:promises vs:evaluator) + (type procedure)) + + ;+ eval + (eval + (category vs:r7rs vs:evaluator vs:unsupported) + (type procedure)) + + ;+ environment + (environment + (category vs:r7rs vs:evaluator vs:unsupported) + (type procedure)) + + ;+ null-environment + (null-environment + (category vs:r7rs vs:evaluator vs:unsupported) + (type procedure)) + + ;+ interaction-environment + (interaction-environment + (category vs:r7rs vs:evaluator vs:unsupported) + (type procedure)) + + ;+ scheme-report-environment + (scheme-report-environment + (category vs:r7rs vs:evaluator vs:unsupported) + (type procedure)) + + ;+ load + (load + (category vs:r7rs vs:compiler vs:unsupported) + (type procedure)) - ;~ make-promise - ;~ force - ;~ eval - ;~ environment - ;~ null-environment - ;~ interaction-environment - ;~ scheme-report-environment - ;~ load + ;; ---- miscellaneous unimplemented procedures ;! +fn ;! -fn @@ -3476,29 +4537,87 @@ - ;; ---- unsupported procedures + ;; ---- R7RS unsupported procedures - ;~ features + ;+ features + (features + (category vs:r7rs vs:evaluator vs:compiler vs:unsupported) + (type procedure)) + + + ;+ rationalize + (rationalize + (category vs:r7rs vs:arithmetic vs:unsupported) + (type procedure)) + + ;+ numerator + (numerator + (category vs:r7rs vs:arithmetic vs:unsupported) + (type procedure)) + + ;+ denominator + (denominator + (category vs:r7rs vs:arithmetic vs:unsupported) + (type procedure)) + + ;+ make-rectangular + (make-rectangular + (category vs:r7rs vs:arithmetic vs:unsupported) + (type procedure)) + + ;+ real-part + (real-part + (category vs:r7rs vs:arithmetic vs:unsupported) + (type procedure)) + + ;+ imag-part + (imag-part + (category vs:r7rs vs:arithmetic vs:unsupported) + (type procedure)) - ;~ rationalize - ;~ numerator - ;~ denominator + ;+ make-polar + (make-polar + (category vs:r7rs vs:arithmetic vs:unsupported) + (type procedure)) + + ;+ angle + (angle + (category vs:r7rs vs:arithmetic vs:unsupported) + (type procedure)) + + ;+ magnitude + (magnitude + (category vs:r7rs vs:arithmetic vs:unsupported) + (type procedure)) + + + ;+ call-with-current-continuation + ;+ call/cc + (call-with-current-continuation + (category vs:r7rs vs:continuations vs:unsupported) + (type procedure) + (alias call/cc)) + + ;+ dynamic-wind + (dynamic-wind + (category vs:r7rs vs:continuations vs:unsupported) + (type procedure)) + + ;+ with-exception-handler + (with-exception-handler + (category vs:r7rs vs:errors vs:evaluator) + (type procedure)) + + ;+ raise-continuable + (raise-continuable + (category vs:r7rs vs:errors vs:evaluator vs:unsupported) + (type procedure)) - ;~ make-rectangular - ;~ real-part - ;~ imag-part - ;~ make-polar - ;~ angle - ;~ magnitude - ;~ call-with-current-continuation - ;~ call/cc (alias) - ;~ dynamic-wind - ;~ with-exception-handler - ;~ raise-continuable + ;; ---- miscellaneous unsupported procedures ;! car+cdr ;! length+