Theoretical issues of computer science are traditionally taught
in a way that presupposes a solid mathematical background and are
usually considered more or less unaccessible for students without this.
An effective methodology is described which has been developed
for a target group of university students with different backgrounds
such as natural science or humanities.
It has been developed for a
course that integrates theoretical material on
computer languages and abstract machines with practical
Prolog used as meta-language for describing language
issues is the central instrument in the approach:
Formal descriptions become running prototypes that
are easy and appealing to test and modify, and can be extended into
analyzers, interpreters, and tools such as tracers and debuggers.
Experience shows a high learning curve, especially when
the principles are extended into a learning-by-doing approach
having the students to develop such descriptions themselves
from an informal introduction.
Optryk af tidskriftstsartikel med tilladelse fra forlag