Yet another bug in connection with eval...
SISC (1.16.6)
#;> (define env (scheme-report-environment 5))
#;> (define foo (make-parameter 'bar))
#;> (eval `',foo env)
#<parameter>
; looks good so far?
#;> (eval `(',foo) env)
Error: attempt to apply non-procedure 'bar'.
;; the unquoted procedure gets applied twice?
;; Here's a workaround:
#;> (eval `(define (foo) ,foo) env)
#;> (parameterize ((foo 'goo)) (eval '((foo)) env))
goo
;; Ugly, but works...
I'm told that using literal procedures in quasiquoted lists is heavily unportable, but sisc allows it, and it's the best solution to use parameter objects for a particular problem that I needed to solve.
As an aside, I hope to find some time later to research integrating my code with the Java API for the compiler/analyzer so I won't have to use eval that heavily any more.