aboutsummaryrefslogtreecommitdiffstats
path: root/SAHP/SAHP.internal-chicken.scm
diff options
context:
space:
mode:
authorGravatar Peter McGoron 2025-02-24 18:41:14 -0500
committerGravatar Peter McGoron 2025-02-24 18:41:53 -0500
commit4a71da136915aa50e45d39b868047686123d8a3e (patch)
treef8b99de05876b69ae06058380e98498e85490042 /SAHP/SAHP.internal-chicken.scm
parentmake library hierarchy (diff)
make library hierarchy again
Diffstat (limited to 'SAHP/SAHP.internal-chicken.scm')
-rw-r--r--SAHP/SAHP.internal-chicken.scm47
1 files changed, 0 insertions, 47 deletions
diff --git a/SAHP/SAHP.internal-chicken.scm b/SAHP/SAHP.internal-chicken.scm
deleted file mode 100644
index 992d98f..0000000
--- a/SAHP/SAHP.internal-chicken.scm
+++ /dev/null
@@ -1,47 +0,0 @@
-(define (%make-derived-SAHP desc)
- (let ((proc (lambda (arg1 . arg-rest)
- (call-SAHP desc (type-of arg1) (cons arg1 arg-rest)))))
- (extend-procedure proc desc)))
-
-(define (make-new-SAHP)
- (%make-derived-SAHP
- (make-SAHP-descriptor (make-symbol-mapping)
- (make-parameter (make-symbol-mapping))
- (make-hash-table))))
-
-(define (SAHP? x)
- (and (extended-procedure? x)
- (SAHP-descriptor? (extract-SAHP-descriptor x))))
-
-(define extract-SAHP-descriptor procedure-data)
-
-(define (type-of x)
- (cond
- ((exact-integer? x) 'exact-integer)
- ((integer? x) 'integer)
- ((rational? x) 'rational)
- ((real? x) 'real)
- ((complex? x) 'complex)
- ((number? x) 'number)
- ((boolean? x) 'boolean)
- ((char? x) 'char)
- ((null? x) 'null)
- ((pair? x) 'pair)
- ((procedure? x) 'procedure)
- ((symbol? x) 'symbol)
- ((bytevector? x) 'bytevector)
- ((eof-object? x) 'eof-object)
- ((port? x) 'port)
- ((string? x) 'string)
- ((vector? x) 'vector)
- ((record-instance? x) (record-instance-type x))
- (else (error "cannot derive type of" x))))
-
-(define (subtypes type)
- (case type
- ((number) '(complex))
- ((complex) '(real))
- ((real) '(rational))
- ((rational) '(integer))
- ((integer) '(exact-integer))
- (else '())))