Student Programming Projects

Yoann Padioleau
21 Sep 2001 11:36:47 +0200

Johannes Waldmann <> 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
> 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.
> 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
> also string rewriting: finding/avoiding loops.
> this (open!) problem is easily stated:

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,
Opinions expressed here are only mine. Je n'écris qu'à titre personnel.
**____   Get Free. Be Smart.  Simply use Linux and Free Software.   ____**