I took CS61A in the spring of 2008, when it was still done using Scheme. Looking through the first few lectures and the titles of later lectures, I'm struck by how much the material is the same. Most notably, in the first several lectures, they've made a point of stripping down Python to a subset that makes its evaluation near-identical to Lisp - by using only named functions (no '1+2', only 'add(1, 2)'), they've kept the emphasis in those lectures on the environment model of evaluation.<p>Looking through the later lecture titles, it's quite clear that (despite what other commenters are saying) the "deeper" parts of the course have been preserved.<p>There's a bit that's been lost in translation; in particular, while the emphasis on metalinguistic abstraction has been kept (students are going to be implementing an object-class system, in a rather elegant way that uses Python's capability to redefine attribute getters) the more exotic models of computation pursued in the old 61A have been abandoned. No more ambiguous evaluator. This is perhaps inevitable - it's just impractical to create a metacircular evaluator for a language as complex as Python. Still, the core of the class has remained, which is a testament to the fundamental similarity of the the Lisp model of computation with that of many modern scripting languages.