aboutsummaryrefslogtreecommitdiffstats
path: root/compat/micro-srfi-225
diff options
context:
space:
mode:
authorGravatar Peter McGoron 2025-11-03 22:55:50 -0500
committerGravatar Peter McGoron 2025-11-03 22:55:50 -0500
commit860e3809928b6bcca55e38131e279cdcb01d8be7 (patch)
tree66d866be9b2034394ab4427e80574377ef02e71f /compat/micro-srfi-225
parentconsidering continuations (diff)
start moving implementation-dependent code into separate libraries
Diffstat (limited to 'compat/micro-srfi-225')
-rw-r--r--compat/micro-srfi-225/micro-srfi-225.scm (renamed from compat/micro-srfi-225/srfi/225.scm)0
-rw-r--r--compat/micro-srfi-225/micro-srfi-225.sld59
-rw-r--r--compat/micro-srfi-225/srfi/225.sld11
3 files changed, 61 insertions, 9 deletions
diff --git a/compat/micro-srfi-225/srfi/225.scm b/compat/micro-srfi-225/micro-srfi-225.scm
index 0e563d6..0e563d6 100644
--- a/compat/micro-srfi-225/srfi/225.scm
+++ b/compat/micro-srfi-225/micro-srfi-225.scm
diff --git a/compat/micro-srfi-225/micro-srfi-225.sld b/compat/micro-srfi-225/micro-srfi-225.sld
new file mode 100644
index 0000000..0b0834d
--- /dev/null
+++ b/compat/micro-srfi-225/micro-srfi-225.sld
@@ -0,0 +1,59 @@
+(define-library (micro-srfi-225)
+ (import (scheme base) (scheme case-lambda))
+ (export
+ eqv-alist-dto
+ ;; predicates
+ dictionary?
+ dict-empty?
+ dict-contains?
+ dict=?
+ dict-pure?
+ ;; lookup
+ dict-ref
+ dict-ref/default
+ dict-comparator
+ ;; mutation
+ dict-set!
+ dict-adjoin!
+ dict-delete!
+ dict-delete-all!
+ dict-replace!
+ dict-intern!
+ dict-update!
+ dict-update/default!
+ dict-pop!
+ dict-map
+ dict-filter
+ dict-remove
+ dict-find-update!
+ ;; whole dictionary
+ dict-size
+ dict-count
+ dict-any
+ dict-every
+ dict-keys
+ dict-values
+ dict-entries
+ dict-fold
+ dict-map->list
+ dict->alist
+ ;; iteration
+ dict-for-each
+ dict->generator
+ dict-set!-accumulator
+ dict-adjoin!-accumulator
+ ;; dictionary type descriptors
+ dto?
+ dto-ref
+ ;; exceptions
+ dictionary-error
+ dictionary-error?
+ dictionary-message
+ dictionary-irritants)
+ (begin
+ (define-record-type <derror>
+ (dictionary-error message irritants)
+ dictionary-error?
+ (message dictionary-message)
+ (irritants dictionary-irritants)))
+ (include "micro-srfi-225.scm")) \ No newline at end of file
diff --git a/compat/micro-srfi-225/srfi/225.sld b/compat/micro-srfi-225/srfi/225.sld
index 9e97d76..69274d8 100644
--- a/compat/micro-srfi-225/srfi/225.sld
+++ b/compat/micro-srfi-225/srfi/225.sld
@@ -1,5 +1,5 @@
(define-library (srfi 225)
- (import (scheme base) (scheme case-lambda) (scheme write))
+ (import (micro-srfi-225))
(export
eqv-alist-dto
;; predicates
@@ -49,11 +49,4 @@
dictionary-error
dictionary-error?
dictionary-message
- dictionary-irritants)
- (begin
- (define-record-type <derror>
- (dictionary-error message irritants)
- dictionary-error?
- (message dictionary-message)
- (irritants dictionary-irritants)))
- (include "225.scm")) \ No newline at end of file
+ dictionary-irritants)) \ No newline at end of file