If Scheme is not taught in the class then it is obviously not a first year class. Students must first master the basics before moving on to other, useful languages. Metacircular evaluation only buys you so much before you have to switch to a language that has the power of static typing. How do you even keep track of which cons cell is what? They're everywhere! You might as well be manually managing memory through pointer arithmetic given how unproductive you're going to be Scheme. It's maddening and simply unsuitable for day-to-day life. That's why I use Haskell. All day, every day. -dons
>>4 implying everything is a list (might be partially true for Scheme without extensions, but it sure ain't true for more mature Lisps) implying static typing buys more power.
(It buys safety and it may make some things easier to reason about, but it sure as hell isn't more powerful than dynamic typing. My definition of power in this context is freedom of choice. )