Johannes Waldmann <joe@isun.informatik.uni-leipzig.de> writes:
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
Wow, what some nice exercise, are you really serious ? do you think computer science student enjoy that kind of programs (except for the AI-related stuff)? why not make them programming something they would like to use !! why not a tetris/pong/reversi/any_video_game, see for example the book from Paul hudak (multimedia ... in haskell). this man understand what makes student happy : graphism,video games,compiler,operating systems, AI games and not this shit of mathematics/computer science theorist problem. This is the kind of things that make student think that functionnal programming is for doing useless things, and that C is cool cos you can do graphism, program your own operating systems, ... ICFP 2000 ask for an interesting problem: a raytracer, a thing that many student like cos you can then play with it and describe your own scene, and that contest show that ocaml/haskell were really cool for doing graphism-related work.
hope this helps. I'm happy to provide more detail.
-- Yoann Padioleau, INSA de Rennes, France, http://www.irisa.fr/prive/padiolea Opinions expressed here are only mine. Je n'écris qu'à titre personnel. **____ Get Free. Be Smart. Simply use Linux and Free Software. ____**
I might be dead wrong, in that case I apologize... I just took the Windows installer and tried to put GHC etc. on my laptop. I suspect that the installer absolutely wants to put the stuff in Program Files and doesn't give the user the opportunity to install it on another disk. Anyway, I have plenty of space on another partition, but the installer complains that it lacks space. Any suggestions, please? Jerzy Karczmarczuk Caen, France
participants (2)
-
Jerzy Karczmarczuk -
Yoann Padioleau