[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: peasant revolt against DrScheme!



> > Side note: a course that taught students scheme, then C/C++, then linking
> > them together would be very cool and eminently practical.  Students would
> > probably hate it, though :-)
> 
> My wife taught a related course last semester.  See software
> engineering at Worcester Poly:
> 
>   http://www.cs.wpi.edu/~kfisler/Courses/CS3733/
> 
> She taught the course in Scheme (!).  One of the key assignments was
> an individual project where every student had to interface to code
> written in C. 
>
> [...]
>
> I'll let her comment on it further if she cares.

This assignment was extremely valuable because it forced students to
confront the following issues:

- making different typing paradigms work together
- making different memory management paradigms work together
- the separation between data (managed in Scheme) and operations on
  data (performed in C).

Overall, my students struggled mightily with this assignment.  It was
clear that most of them had never realized that the above issues
exist, much less programmed around them.  (It was also clear that most
of them didn't understand how to represent formulas/languages using
data structures -- a side issue that this choice of C-package raised).
In many ways, the third issue was most troublesome to them, because
they could "get by" ignoring the first two issues until they had a
running prototype.

Those that understood the overall goals of the assignment (to get them
to confront the above issues) found it valuable.  Those that saw it as
teaching them how do perform useless gymnastics in a useless language
hated it.  I spent a good 15 minutes after the assignment came in
reinforcing the goals in class and asking them how much of this
assignment (and their frustrations) were particular to Scheme.
Several relunctantly admitted that this wasn't a Scheme assignment
after all.

I'm glad to discuss this in more detail with anyone who is
interested.  I definitely plan to do this style assignment again when
I teach the course again later this spring.

Kathi