;;; -*- Mode: Scheme; scheme48-package: fasl-utilities -*- ;;;; Fasloader & Fasdumper ;;;; Miscellaneous Utilities ;;; This code is written by Taylor Campbell and placed in the Public ;;; Domain. All warranties are disclaimed. (define-syntax define-substitution (syntax-rules () ((DEFINE-SUBSTITUTION (name . pattern) body0 body1 ...) (DEFINE-SYNTAX name (SYNTAX-RULES () ((name . pattern) (BEGIN body0 body1 ...))))))) (define (adjoin-bit-field width low high) (bitwise-ior low (arithmetic-shift high width))) (define (write-octet octet port) ; Eck. (write-char (ascii->char octet) port)) ;;; Scheme48 won't auto-integrate this. (define-substitution (read-octet port) (let ((char (read-char port))) (if (eof-object? char) #f (char->ascii char))))