[plt-scheme] + vs * in bytecode
Hello all,
This is my first post to this group. I apologize if I am expected to be
able to find the answer to this question elsewhere.
My students and I noticed that the expansion of the simple arithmetic
expressions (+ 1 2) and (* 1 2) change depending on whether the EOPL
language level is loaded. If I expand
(require (lib "eopl.ss" "eopl"))
(+ 1 2)
(* 1 2)
then I get
(#%app + (#%datum . 1) (#%datum . 2))
(#%app * (#%datum . 1) (#%datum . 2))
but if I expand
(+ 1 2)
(* 1 2)
then I get
(#%app (#%top . +) (#%datum . 1) (#%datum . 2))
(#%app (#%top . *) (#%datum . 1) (#%datum . 2))
Why?
Thanks!
Ken
--
Edit this signature at http://www.digitas.harvard.edu/cgi-bin/ken/sig
Seek simplicity and mistrust it. -- Alfred North Whitehead