On 15-Dec-2000 James Wilkinson wrote:
> This one time, at band camp, Umar Goldeli said:
>>I mean what use is a functionally orientated language which can't do much
>>apart from using it in a mathematical context?
>
> Because as Crossfire was saying, you need to start with a language that
> teaches you the concepts in an easy to grasp way. Haskell is a
> brilliant teaching language, and it was also suitably different from
> anything anyone would have had experience with before they begun uni,
> thus putting everyone on a flat playing field at the beginning of the
> course.
>
> I don't necessarily agree with the last statement, but I believe it was
> hinted at during the course.
Recalling time 15 years ago on the other side of the barricades doing the usual
PhD student assisting on introductory programming courses stuff, I think there's
a lot to be said for popping in a flat playing field.
At the time, of course, the whinge was 'why aren't we learning C?', instead of
the Pascal that UKC (coincidentally, then the home of David Turner of Miranda
fame) started its newcomers on. Funnily enough, it wasn't usually the bright
sparks who said that - they'd get Pascal in 3 secs with mild interest (hey, any
programming language is of some interest), rattle off the assignment and go on
to other things, like learning C off their own bat. No, the complaint invariably
emenated from the Spectrum Basic whizz types who would then submit a program
thus (and Pascalites will have to forgive syntactic solecisims, its been a long
time):
Program MyProg;
label
10, 20, 30, 35, 40, 50;
var
a1 : integer;
a2 : integer;
begin
10:
a1 := 10;
20:
a2 := 0;
30:
a2 := a2 * a1;
35:
a1 := a1 + 1;
40:
if a1 < 10 then goto 30;
50:
writeln("a2 is ", a2);
end.
Bloody good job we weren't starting 'em on C, if you ask me.
Now, if you're talking about a computing course for mathemeticians, say, then
that I would think is a different thing. They are there to learn a tool, so
given them Fortran and let them get on with it. But a CS course should be
different; surely it should be concepts, not specific tools, and one of those
concepts should be functional programming. So why not Haskell?
But not Perl. Frightens the horses. :-)
--
Jim Hague - [EMAIL PROTECTED] (Work), [EMAIL PROTECTED] (Play)
Never trust a computer you can't lift.
--
SLUG - Sydney Linux User Group Mailing List - http://slug.org.au/
More Info: http://slug.org.au/lists/listinfo/slug