Student Programming Projects

Johannes Waldmann joe@isun.informatik.uni-leipzig.de
Fri, 21 Sep 2001 09:12:10 +0200 (MET DST)


> Next Semester, I am supposed to teach a short course in Haskell.
> Can anyone recommend interesting programming projects which can
> be completed in about a month? Thank you very much.

apart from "pure" programming exercise 
(see Haskell textbooks http://haskell.org/bookshelf/)
here are a few suggestions in the area of experimental mathematics.
also, check with your introductory discrete mathematics course (or equivalent).
a lot of combinatorial problems on finite structures
can be illustrated by finding (counter-)examples by computer.


say Ramsey colorings, Monochromatic arithmetic subsequences
(van der Waerden's theorem), words avoiding patterns, and so on.
http://www-igm.univ-mlv.fr/~berstel/Lothaire/ChapitresACW/C3.ps

next, perhaps some game theory? 
nim (and variants), other take-and-break games (octal games).
you can safely ignore all of the Sprague-Grundy theory,
and just define the game, and ask for some method
to determine quickly who wins.

or graph theory: finding hamiltonian paths 
(knights tours on  a x b  chessboards, for instance)

if the students alreay took some computability theory,
then a nice topic is Posts Correspondence Problem, see
http://www.cs.ualberta.ca/~zhao/PCP/intro.htm
http://www.informatik.uni-leipzig.de/~pcp/pcpcontest_en.html

also string rewriting: finding/avoiding loops.
this (open!) problem is easily stated: http://www.lri.fr/~rtaloop/95.html


hope this helps. I'm happy to provide more detail.
-- 
-- Johannes Waldmann ---- http://www.informatik.uni-leipzig.de/~joe/ --
-- joe@informatik.uni-leipzig.de -- phone/fax (+49) 341 9732 204/252 --