[LINK] What programming language for schools?
rick at praxis.com.au
Mon Mar 14 09:28:42 EST 2005
Stephen Loosley wrote:
> "Students will use one programming language from the
> accompanying list, to develop purpose-designed software.
> The purpose-designed software will entail the use of objects,
> methods and their properties, and event-driven programming.
> Visual Basic (not Visual Basic for Applications)/REALbasic
> Visual C++
Visual C++ is an integrated development environment (IDE)
THe language is called C++.
> Visual Dbase
> Visual FoxPro
> Visual J, Java
> Perl, PHP, Python
IMHO, Pascal/Algol have always been the languages of choice for teaching
programming basics and data structures. These languages predate the object
oriented paradigm. The best choice is Delphi: Pascal with full O-O
Delphi is simple enough to learn the non O-O basics in a few
days. It is powerful enough to handle any system task. It is
object oriented which provides correct modularity for programming
in the large. And it also supports an event-driven GUI programming
model. (And very important to me, at an almost philospohical level,
Pascal handles the concept of type and class correctly, esp. when
compared to some language abominations like visual basic).
Why not C/C++? Too complex. C's type system is far too weak for novice
programmers, adnd C++'s type system far too complex to learn as a first
language. Pascal provides the best of both: strong typing but not too
complex. There have been entire books written about the pitfalls in using
each of C and C++.
Why not a scripting language? By their very nature, scripting languages
like python and perl are very concise, powerful and slow. While one may
whip up a RAD web application overnight in perl, it is not a language
in which one would develop an operating system, windowing system or
device driver. C and Pascal are such lanuages, and are worthy of
detailed study by a novice programmer.
Rick Welykochy || Praxis Services
Blessed are the cracked for they let in the light.
-- Spike Milligan
More information about the Link