I am not sure I want to compare the transition of ML -> Scheme with for example Python -> Scheme, because ML and Scheme evolved along similar trajectories -- Peter Landin's ISWIM family of programming languages, which gave rise to ML, is a lambda-calculus based language with lexical scope very similar to early Scheme. In fact, I think learning Standard ML as a prelude to learning Scheme is a pretty good approach, because ML is similarly minimalistic and the ML type system is like a set of training wheels that forces the programmer to learn the idioms of functional programming, especially the way recursive datatypes encourage the use of structural induction in your algorithms. Whereas if I were coming from Python, chances are I would have been wasting time messing around with tinyclos and the other object-oriented systems, because during my Python "phase" I was indoctrinated that "everything is an object," so it took a while to realize that lambda is the ultimate abstraction. So I still think that a short tutorial on building a simple interpreter, ala SICP, might be a better way to go.
-Ivan Mark Fredrickson <[EMAIL PROTECTED]> writes: > With a high probibility that Chicken users will be coming from other > PLs, I think a series of "Chicken for Python Programmers", "Chicken > for Ruby Programmers", etc could be very helpful. Where are my hashes? > How do I do string concatenation? Where are my objects? These > questions, and more, should be answered. > > I suggest we draft Hans (http://4.flowsnake.org/) for the Python > doc. :-) > > I'll add these tasks to the Wiki. _______________________________________________ Chicken-users mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/chicken-users
