Although no formal study has taken place to examine this use of Mosaic in conjunction with a class, student comments indicate that most students enjoyed this use of the Web. In addition, the instructor has noted that he receives better student reviews during semesters in which he has used the Web, compared to semesters when he has not.
One thing that has been helpful to the professor in teaching the class is the ability to bring together a wide range of resources for his students in an orderly presentation. For example, in the class homepage, there is a list of programming language resources from all over the world covering a variety of subjects. Web browsing is being worked into the course by having students use the information on the Web to explore programming language design issues. Future classes may be required to write a paper about programming language design for which they will be encouraged to seek out information on the Web.
We would also like to link the interpreter used in this class to the WWW to
provide animation of a Scheme program similar to the work done with Pascal
by Bertrand.
The concepts of Programming Languages class teaches students the operational semantics of programming languages. The Scheme programming language is an excellent language for demonstrating operational semantics. However, almost none of the students have ever programmed in Lisp. Considerable time must be spent in class to teach Scheme rather than the main content of the class: programming language semantics. Currently, approximately four of the thirteen weeks are spent learning the language rather than learning about operational semantics. By using the WWW, we hope that this time can be reduced or eliminated. We are striving for more efficient ways for students to learn Scheme. We plan to use WWW in conjunction with active code segments to produce a set of tutorials that can be used to teach Scheme on an independent basis rather than taking up valuable class time, allowing class time to be used for teaching programming language semantics.