From e6ad8129cc854dac38940acb24e3a07cd0cd7b56 Mon Sep 17 00:00:00 2001 From: Ben Sima Date: Wed, 13 May 2020 13:32:14 -0700 Subject: Re-namespace general scheme code to bs --- dict.scm | 50 -------------------------------------------------- 1 file changed, 50 deletions(-) delete mode 100644 dict.scm (limited to 'dict.scm') diff --git a/dict.scm b/dict.scm deleted file mode 100644 index 564b1ae..0000000 --- a/dict.scm +++ /dev/null @@ -1,50 +0,0 @@ -#!r6rs -;; Experimental python-like dictionary. Import this qualified, eg: -;; (import (prefix (dict) dict/)) -;; or -;; (import (prefix (dict) dict.)) -(library (dict (2)) - (export - empty new dict dict? keys vals contains? - set get del update map) - (import - (rnrs base) - (srfi srfi-69)) - - (define (empty) - (make-hash-table)) - - (define (new tuples) - (let ([dict (make-hash-table)]) - (map (lambda (k . v) (hash-table-set! dict k v)) tuples) - dict)) - - (define (dict? dict) - (hash-table? dict)) - - (define (keys dict) - (hash-table-keys dict)) - - (define (vals dict) - (hash-table-values dict)) - - (define (len dict) - (hash-table-size dict)) - - (define (contains? dict key) - (hash-table-exists? dict key)) - - (define (set dict key value) - (hash-table-set! dict key value)) - - (define (get dict key) - (hash-table-ref dict key #f)) - - (define (del dict key) - (hash-table-delete! dict key)) - - (define (update dict key func) - (hash-table-update! dict key func (lambda () '()))) - - (define (map func dict) - (hash-table-walk dict func))) -- cgit v1.2.3