diff options
| author | 2021-08-22 20:54:14 +0300 | |
|---|---|---|
| committer | 2021-08-22 20:54:14 +0300 | |
| commit | e943ef133b857839bd5d9cdc2197fe7f03a09349 (patch) | |
| tree | ad0cc4ddd3ddd9d237f25f6e9f68bcbbd9049dd1 /srfi/externals.scm | |
| parent | clean up (diff) | |
| parent | typo, -comparator can return #f (diff) | |
merge, add unfold
Diffstat (limited to 'srfi/externals.scm')
| -rw-r--r-- | srfi/externals.scm | 99 |
1 files changed, 50 insertions, 49 deletions
diff --git a/srfi/externals.scm b/srfi/externals.scm index 34c8450..14c5a4d 100644 --- a/srfi/externals.scm +++ b/srfi/externals.scm @@ -24,10 +24,11 @@ (assume (dtd? dtd)) (apply (dtd-ref-stx dtd index) dtd args))))) -(define/dict-proc make-dictionary make-dictionary-index) -(define/dict-proc dictionary? dictionary?-index) -(define/dict-proc dict-empty? dict-empty?-index) -(define/dict-proc dict-contains? dict-contains?-index) +(define/dict-proc make-dictionary make-dictionary-id) +(define/dict-proc dict-unfold dict-unfold-id) +(define/dict-proc dictionary? dictionary?-id) +(define/dict-proc dict-empty? dict-empty?-id) +(define/dict-proc dict-contains? dict-contains?-id) (define dict-ref (case-lambda @@ -41,21 +42,21 @@ ((dtd dict key failure success) (assume (dtd? dtd)) - ((dtd-ref-stx dtd dict-ref-index) dtd dict key failure success)))) - -(define/dict-proc dict-ref/default dict-ref/default-index) -(define/dict-proc dict-set dict-set-index) -(define/dict-proc dict-set! dict-set!-index) -(define/dict-proc dict-adjoin dict-adjoin-index) -(define/dict-proc dict-adjoin! dict-adjoin!-index) -(define/dict-proc dict-delete dict-delete-index) -(define/dict-proc dict-delete! dict-delete!-index) -(define/dict-proc dict-delete-all dict-delete-all-index) -(define/dict-proc dict-delete-all! dict-delete-all!-index) -(define/dict-proc dict-replace dict-replace-index) -(define/dict-proc dict-replace! dict-replace!-index) -(define/dict-proc dict-intern dict-intern-index) -(define/dict-proc dict-intern! dict-intern!-index) + ((dtd-ref-stx dtd dict-ref-id) dtd dict key failure success)))) + +(define/dict-proc dict-ref/default dict-ref/default-id) +(define/dict-proc dict-set dict-set-id) +(define/dict-proc dict-set! dict-set!-id) +(define/dict-proc dict-adjoin dict-adjoin-id) +(define/dict-proc dict-adjoin! dict-adjoin!-id) +(define/dict-proc dict-delete dict-delete-id) +(define/dict-proc dict-delete! dict-delete!-id) +(define/dict-proc dict-delete-all dict-delete-all-id) +(define/dict-proc dict-delete-all! dict-delete-all!-id) +(define/dict-proc dict-replace dict-replace-id) +(define/dict-proc dict-replace! dict-replace!-id) +(define/dict-proc dict-intern dict-intern-id) +(define/dict-proc dict-intern! dict-intern!-id) (define dict-update (case-lambda @@ -69,7 +70,7 @@ ((dtd dict key updater failure success) (assume (dtd? dtd)) - ((dtd-ref-stx dtd dict-update-index) dtd dict key updater failure success)))) + ((dtd-ref-stx dtd dict-update-id) dtd dict key updater failure success)))) (define dict-update! (case-lambda @@ -83,33 +84,33 @@ ((dtd dict key updater failure success) (assume (dtd? dtd)) - ((dtd-ref-stx dtd dict-update!-index) dtd dict key updater failure success)))) - -(define/dict-proc dict-update/default dict-update/default-index) -(define/dict-proc dict-update/default! dict-update/default!-index) -(define/dict-proc dict-pop dict-pop-index) -(define/dict-proc dict-pop! dict-pop!-index) -(define/dict-proc dict-map dict-map-index) -(define/dict-proc dict-map! dict-map!-index) -(define/dict-proc dict-filter dict-filter-index) -(define/dict-proc dict-filter! dict-filter!-index) -(define/dict-proc dict-remove dict-remove-index) -(define/dict-proc dict-remove! dict-remove!-index) -(define/dict-proc dict-search dict-search-index) -(define/dict-proc dict-search! dict-search!-index) -(define/dict-proc dict-copy dict-copy-index) -(define/dict-proc dict-size dict-size-index) -(define/dict-proc dict-for-each dict-for-each-index) -(define/dict-proc dict-count dict-count-index) -(define/dict-proc dict-any dict-any-index) -(define/dict-proc dict-every dict-every-index) -(define/dict-proc dict-keys dict-keys-index) -(define/dict-proc dict-values dict-values-index) -(define/dict-proc dict-entries dict-entries-index) -(define/dict-proc dict-fold dict-fold-index) -(define/dict-proc dict-map->list dict-map->list-index) -(define/dict-proc dict->alist dict->alist-index) -(define/dict-proc dict-comparator dict-comparator-index) + ((dtd-ref-stx dtd dict-update!-id) dtd dict key updater failure success)))) + +(define/dict-proc dict-update/default dict-update/default-id) +(define/dict-proc dict-update/default! dict-update/default!-id) +(define/dict-proc dict-pop dict-pop-id) +(define/dict-proc dict-pop! dict-pop!-id) +(define/dict-proc dict-map dict-map-id) +(define/dict-proc dict-map! dict-map!-id) +(define/dict-proc dict-filter dict-filter-id) +(define/dict-proc dict-filter! dict-filter!-id) +(define/dict-proc dict-remove dict-remove-id) +(define/dict-proc dict-remove! dict-remove!-id) +(define/dict-proc dict-search dict-search-id) +(define/dict-proc dict-search! dict-search!-id) +(define/dict-proc dict-copy dict-copy-id) +(define/dict-proc dict-size dict-size-id) +(define/dict-proc dict-for-each dict-for-each-id) +(define/dict-proc dict-count dict-count-id) +(define/dict-proc dict-any dict-any-id) +(define/dict-proc dict-every dict-every-id) +(define/dict-proc dict-keys dict-keys-id) +(define/dict-proc dict-values dict-values-id) +(define/dict-proc dict-entries dict-entries-id) +(define/dict-proc dict-fold dict-fold-id) +(define/dict-proc dict-map->list dict-map->list-id) +(define/dict-proc dict->alist dict->alist-id) +(define/dict-proc dict-comparator dict-comparator-id) (define (dtd-ref dtd procindex) (dtd-ref-stx dtd procindex)) @@ -120,11 +121,11 @@ ((null? lst)) (when (null? (cdr lst)) (error "Uneven amount of arguments" lst)) - (let ((proc-index (car lst)) + (let ((proc-id (car lst)) (proc (cadr lst))) (unless (procedure? proc) (error "Not a procedure" proc)) - (vector-set! vec proc-index proc))) + (vector-set! vec proc-id proc))) (make-dtd-private vec)) (define (make-dtd . lst) |
