123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899 |
- ; Part of Scheme 48 1.9. See file COPYING for notices and license.
- ; Authors: Richard Kelsey, Jonathan Rees, Mike Sperber
- (define-interface prescheme-interface
- (export ((if begin lambda letrec quote set!
- define define-syntax let-syntax letrec-syntax
- and cond case do let let* or
- quasiquote
- syntax-rules
- ) :syntax) ; no delay
-
- (goto :syntax)
- (external :syntax)
- ((define-enumeration define-external-enumeration enum) :syntax)
- ((name->enumerand enumerand->name) :syntax) ; loadtime only
- not
- eq?
- + - * = < ; /
- <= > >=
- abs
- expt
- quotient remainder
- ; floor numerator denominator
- ; real-part imag-part
- ; exp log sin cos tan asin acos atan sqrt
- ; angle magnitude make-polar make-rectangular
- min max
- char=? char<?
- ;; Data manipulation
- make-vector vector-length
- vector-ref vector-set!
- make-string string-length
- string-ref string-set!
- deallocate
- null-pointer
- null-pointer?
- values call-with-values
- current-input-port current-output-port current-error-port
- open-input-file open-output-file
- close-output-port close-input-port
- read-char peek-char read-integer
- write-char newline write-string write-integer
- force-output
- (errors :syntax)
- error-string
- ascii->char char->ascii
-
- shift-left arithmetic-shift-right logical-shift-right
- bitwise-and bitwise-ior bitwise-xor bitwise-not
- unspecific
- error
- ))
- ; memory (malloc and free)
- (define-interface ps-memory-interface
- (export allocate-memory
- deallocate-memory
- unsigned-byte-ref unsigned-byte-set!
- word-ref word-set!
- flonum-ref flonum-set!
- address?
- null-address null-address?
- address+ address- address-difference
- address= address< address<= address> address>=
- address->integer integer->address
- copy-memory! memory-equal?
- char-pointer->string char-pointer->nul-terminated-string
- read-block write-block))
- (define-interface ps-flonums-interface
- (export fl+ fl- fl* fl/ fl= fl< fl> fl<= fl>=))
- (define-interface ps-unsigned-integers-interface
- (export un+ un- un* unquotient unremainder un= un< un> un<= un>=
- unsigned->integer integer->unsigned))
- (define-interface ps-receive-interface
- (export receive))
|