Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

A Critique of Abelson and Sussman

Name: Anonymous 2008-12-21 17:52

"Unfortunately, the use of Scheme and SICP quickly dwindled again in the early 1990s. After working with SICP and Scheme for a while, instructors started to complain. Some said that SICP's content was too difficult for students outside of MIT. Others blamed Scheme directly, claiming that functional programming in Scheme was too different from programming in other languages. Even the functional programming community criticized the SICP approach; around this time, Wadler wrote his Critique of SICP and Scheme (Wadler, 1987).
Nowadays the critics even include professors at MIT, where the book and the course have become legends. Jackson and Chapin, who both have significant experience teaching SICP at MIT, recently wrote that:
 [f]rom an educational point of view, our experience suggests that undergraduate computer science courses should emphasize basic notions of modularity, specification, and data abstraction, and should not let these be displaced by more advanced topics, such as design patterns, object-oriented methods, concurrency, functional languages, and so on (Jackson & Chapin, 2000).

In short, SICP, Scheme, and functional programming don't prepare students properly for other programming courses and thus fail to meet a basic need."

http://www.ccs.neu.edu/scheme/pubs/jfp2004-fffk.pdf

Name: Anonymous 2008-12-22 2:38

Some said that SICP's content was too difficult for students outside of MIT
Cry more, enterprise developers

Others blamed Scheme directly, claiming that functional programming in Scheme was too different from programming in other languages.
No shit, that's the point of having different programming paradigms! The functional paradigm is meant to make you think, as someone who starts off with "dumb" imperative languages (Basic variants are the worse) tends to become a robot who can't structure his shit.

should emphasize basic notions of modularity, specification, and data abstraction
and should not let these be displaced by more advanced topics, such as design patterns, object-oriented methods, concurrency, functional languages

Yeah, because learning a functional language isn't the best way to reach those goals, right? Oh, wait, specification, data abstraction and modularity is the whole point of SICP. Dumbasses.

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List