scsh-0.6/ps-compiler/param.scm

43 lines
1.2 KiB
Scheme

; Copyright (c) 1993-1999 by Richard Kelsey. See file COPYING.
; Parameterizing the compiler.
(define lookup-primop 'unset-compiler-parameter)
(define lookup-imported-variable 'unset-compiler-parameter)
(define type/unknown 'unset-compiler-parameter)
(define type-eq? 'unset-compiler-parameter)
(define lambda-node-type 'unset-compiler-parameter)
(define true-value 'unset-compiler-parameter)
(define false-value 'unset-compiler-parameter)
(define determine-lambda-protocol 'unset-compiler-parameter)
(define determine-continuation-protocol 'unset-compiler-parameter)
(define (set-compiler-parameter! name value)
(case name
((lookup-primop)
(set! lookup-primop value))
((lookup-imported-variable)
(set! lookup-imported-variable value))
((type/unknown)
(set! type/unknown value))
((type-eq?)
(set! type-eq? value))
((lambda-node-type)
(set! lambda-node-type value))
((true-value)
(set! true-value value))
((false-value)
(set! false-value value))
((determine-lambda-protocol)
(set! determine-lambda-protocol value))
((determine-continuation-protocol)
(set! determine-continuation-protocol value))
(else
(error "unknown compiler parameter ~S ~S" name value))))