comp.lang.ada
 help / color / mirror / Atom feed
From: David Rubin <dlrubin@hotmail.com>
Subject: [OT] Re: teaching programming
Date: Wed, 25 Jul 2001 16:48:29 -0400
Date: 2001-07-25T16:48:29-04:00	[thread overview]
Message-ID: <3B5F309D.E34716C6@hotmail.com> (raw)
In-Reply-To: 1e94da97.0107250923.4af8ff6d@posting.google.com

davi lima wrote:

> I'd like to know what a language for teaching  programming should provide?

It depends on the level and intent of the course. If you are teaching a
language, obviously use that language. If you are teaching algorithms, it
doesn't matter what language you use. If you are teaching programming concepts
(functions, scope, OOx, interfaces, type systems, imperative vs functional, etc)
then choose a language or languages which support all the topics you want to
cover.

Choose a simple language for a beginner course like Scheme or Limbo which have
garbage collection and simple syntax rules for argument passing (as opposed to C
or C++ where students have to worry about pointers, addresses, and memory
management).

For an advanced course, choose a language which student's are likely to know;
one that is used previously in the curriculum.

If you are teaching a course in preparation for a test like the US ACT tests
(IIRC), use the same language which is used in the test.

Most importantly, choose a language which complements your textbook!

As an example, my courses used Scheme in the programming languages course which
was mostly about interpreter construction (now uses Java), C in the compilers
course, Fortran in the computational mathematics course (now uses matlab), C in
the networking course, C++/OpenGL in the computer graphics course (also one with
Java), C++ in the intro course, and your language of choice in the cryptography
course.

	david

-- 
If 91 were prime, it would be a counterexample to your conjecture.
    -- Bruce Wheeler



      parent reply	other threads:[~2001-07-25 20:48 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-07-25 17:23 teaching programming davi lima
2001-07-25 17:42 ` Kaz Kylheku
2001-07-25 19:04 ` Ehud Lamm
2001-07-25 20:48 ` David Rubin [this message]
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox