|
Softpanorama
(slightly skeptical)
Open Source Software Educational Society |
May the
source be with you,
but remember the KISS principle ;-)
|
Turbo Pascal -- One of the Best Programming Languages
(this page is no longer maintained)
Actually TP is probably no longer the best first programming language
to teach in the high school. I think JavaScript can compete with it as the first
language (especially in its Flash incarnation ;-). But still it's a very nice language
to start with and it may be a close second.
There is something wrong with C as non-system programming language
and while Pascal may not be an answer it does demonstrate the limitations of C for
general purpose programming and first of all low productivity: TP programmers are
approximately twice as productive as their C counterparts.
The big advantage of Pascal is that one can use it in DOS on the
cheapest PC possible and still get an excellent programming education. Moreover
an excellent the TP5.5 compiler (and may
be now TP6 and TP7, please check Borland site) are now available for free from Borland/Inprise
and the debugger in this compilers is really good...
Moreover they works well under Linux DOS emulation. And again I
would like to stress that one could certainly accomplish a lot with Turbo Pascal
on any PC with DOS (really any, including a 286, if you can find one). All you need
to acquire the deep knowledge of fundamentals of programming and data structures
is the cheapest PC possible and the desire to learn. That means that Pascal
is the most democratic introductory language ;-)
I would like to stress it again, Turbo Pascal, so to speak,
is the most democratic language. And not only introductory one. Historically
TP and its close cousins Modula-2 and Delphy were used for building very complex
stuff (games, graphics, BBSes, etc.). The advantage of Turbo Pascal is in
providing the student with exercises which are enjoyable (graphics, sound, etc.),
and this enables the teacher to make course more interesting.
It is easy to imitate Logo style environment in Turbo Pascal. And
my experience as a professional educator proves that the task of generating musical
tunes is an excellent way to teach loops (may be one of the best approaches for
teaching loops possible).
I feel that the students will develop their own style and abilities much quicker
in Turbo Pascal than in C. Turbo Pascal is less complex, has much better compile
time diagnostic and better string handling than C. Modula is one of the few
languages that has coroutines support and
thus can beat C in many tasks. But who cares -- C is the king of the hill
and nothing succeed like success ;-). C is also more realistic language than
Turbo Pascal but it's a more complex and a lower level language (structured assember).
Good electronic books (including documentation for TP) are available (actually
they are better than introductory books on C because Pascal is a better introductory
language).
Anyone interested in becoming a decent programmer should learn both, but Turbo
Pascal first!
Much like C language, the initial version of Pascal was an
attempt to simplify programming language. C was system programming language derived
from PL/1 and BCPL. It was designed as a high level assembler. Pascal is a
derivative of Algol and is a reaction of creation of Algol-68 (complex, PL/1-style
version of Algol).
Although historically Pascal was a negative reaction on the complexity
of Algol 68, it's mainly "The
Last of the Mohicans" of the Algol 60 family of languages -- a simple language
derived from Algol 60 that was initially intended as a teaching language. One of
the explisit design goal was the speed of compilation so that you do not even need
a linker.
If you wrote something as a negative reaction to the overcomplexity
it's easy to run into another extreme. At the time of writing Wirth was influenced
both by structured programming and formal verification of programs -- two fashionable
at this time religious movements :-) and in process he made some regretful
mistakes that were
partially corrected in Modula and Turbo Pascal.
Actually a lot of verification zealots were promiscuous enough to
became later object-oriented programming fundamentalists, so you better beware ;-)
But Wirth was a very talented language designer and despite some elements of structured
programming fundamentalism (and verification fundamentalism) Pascal proved to be
very useful language and has important descendants (Modula-2,
Modula-3, Ada, Turbo Pascal, Delphi, Oberon).
In fact, both C and Pascal served as a foundation for the whole
family of the languages. Pascal-derived languages are not as widely used in commercial
environment as C++ (only Delphi is still more or less visible), but they still represent
an important approach to programming language design. Both Windows and Linux has
Modula-2 and
Modula-3
compilers freely available.
Modula-2 is a great language. One of the few mainstream languages
that implements coroutines. Actually I strongly recommend using Modula-2 instead
of Turbo Pascal after one gets some experience with the language.
Polytechnique Modula-3 (PM3) is the most up-to-date freeware implementation
of the Modula-3 language, libraries, and runtime environment.
Good electronic books are available for Modula-2, less for Modula-3.
Dr. Nikolai Bezroukov
Notes:
- Those pages are written by people for whom English is not a
native language. Some amount of grammar and spelling errors
should be expected.
- This is a Spartan WHYFF (We Help You For Free) site. It
cannot replace the best teachers and
the
best books.
- The site contain some obsolete pages as it develops like a
living tree... Some links on older pages
are broken. Please
try to use Google, Open directory, etc. to find a replacement link
(see
HOWTO search the WEB for details).
We would appreciate if you can
mail us a correct link.
|
|
REXX.pas
Reimplementation of REXX functions in Pascal. A very useful unit...
{Copyright (C) 1989-1992, 1995-1997. Earl F. Glynn, Overland Park, KS.
All Rights Reserved. This UNIT may be freely distributed only
for non-commercial use.
REXX-like functions. For information about REXX see the book
"The REXX Language," by M.F. Cowlishaw, Prentice-Hall, 1985,
or various IBM CMS or OS/2 manuals.
Freshmeat/AKFQuiz
A collection of programs for quiz games, teaching exercises, and psychotests
The AKFQuiz package lets you easily make your own
quiz games or learning exercises. These can be used either with grquiz in a
graphical environment (SDL), with crtquiz on a text terminal, or with diaquiz
in a GUI environment. There is also a line oriented variant, linequiz, which
can be used as a backend. A CGI-variant can be installed on a Web server to
offer exercises via the Web. A mkquiz tool that generates an HTML file for to
use with the JavaScript akfquiz5.js is also included. Those can then be published
with any Web-space provider.
Author:
Andreas K. Foerster
[contact developer]
taoyue.com-
Learn Pascal tutorial - History
From version 1.0 to 7.0 of Turbo Pascal, Borland
continued to expand the language. One of the criticisms of the original
version of Pascal was its lack of separate compilation for modules. Dr.
Wirth even created a new programming language, Modula-2, to address that
problem. Borland added this to Pascal with its units feature.
By version 7.0, many advanced features had
been added. One of these was DPMI (DOS Protected Mode Interface), a way
to run DOS programs in protected mode, gaining extra speed and breaking
free of the 640K barrier for accessing memory under DOS. Turbo Vision, a
text-based windowing system, allowed programmers to create great-looking
interfaces in practically no time at all. Pascal even became object-oriented,
as version 5.5 adopted the Apple Object Pascal extensions. When Windows
3.0 came out, Borland created Turbo Pascal for Windows, bringing the speed
and ease of Pascal to the graphical user interface. It seemed that Pascal's
future was secure.
Syn Text Editor - Home
Syn is an Open Source Text and Programming
Editor with Syntaxhighlight for many Languages, and some IDE Features,
like starting a program (e.g. Compiler) and capture the output, support
for Projects etc. Syn is written in
Delphi
(Version 5, Updatepack 1) for maximum performance, stability and filesize
;-), hence it doesn't require any bulky VC++/VB Runtime or MFC libraries!
Syn supports Active Scripting,
this means you can extend the functionallity with writing a Script.
If you have written such a Script, or an other file (Autocomplete file
or whatever), and you think it could be useful for others, just send
them to me or to the Users Mailinglist (syn-users[at]lists[dot]sourceforge[dot]net),
and we will add them. Of course, we will give you proper credits. Many
thanks to all of you!
Parallel versions
Two branches of development are actually
followed:
The 2.1 branch consists in adding functionalities and fixing
bugs of the running version (2.0). This version is almost maintained
by Stefan Ascher. To view the list of modifications, open the
changelog.
The 3.0 contains big modifications of code for better handling
of customization, storing settings to files instead of registry and
multilanguage support (read
what's new). This branch is maintained by Danail (most ideas come
from him). For now, 3.0 is our goal. Preview version is already released,
but still there is a lot of work before a beta release. Help us debugging!
Geoff's hobby is
programming.
[Dec 22, 2003] Turbo Pascal
Programmers Page a very comprehensive page !
vpsource.com - portal for webmasters
and programmers -- contain a good and more up-to-date that this site collection
of Delphy programming links.
[Nov 11, 2000]
Learn Pascal - Contents
-- a pretty decent intro
Turbo Pascal 3.0 compiler
and code generation internals
[Jun 12, 2000]
Pascal Programming -- syllabus for high school.
[Sept.1, 1999]
Programmers Heaven -
Delphi Zone -- an excellent page
[June 28, 1999] Links to Web-based
courses added
[June 17, 1999]
Index to Pascal Tutorial
Pages -- outline with good questions
http://cal.csv.warwick.ac.uk
[June 17, 1999]
TP-Links
[June 11, 1999]
StudyWEB Pascal links
-- a very good educational site
[June 11, 1999] WEB
Pascal course (limited distribution, mirroring prohibited without CD purchase)
See also
Bookshelf
External Links
- The
Programming Sectio -- This site is all about programming languages, including
pascal, links to tutorials...
See also: Tutorials
- Pascal Programming - Net Links -- very good list of tutorials and
Pascal programming. Lecture notes, interactive tests, and links to related
materials. By Brian Brown, Central Institute of Technology, New Zealand.
Informit.com
Sams Teach Yourself Delphi 4 in 21 Days - Programming - Delphi -- free
registration required.
Study
Web Programming Pascal Links
Turbo Pascal for
DOS Tutorial by Glenn Grotzinger.
Turbo Pascal Tutorial
at Grenville Christian College (WebNotes
- Turbo Pascal Tutorial)
A
short tutorial on running Turbo Pascal.
Turbo
Pascal Tutorial -- another short tutorial
**** Why
Pascal is Not My Favorite Programming Language -- famous paper by
Brian W. Kernighan
AT&T Bell Laboratories, that was kind of prohibited at the time of its writing(April
2,1981) and the author has difficulties with its publishing because of all this
structured programming verification blah-blah-blah of this time ;-)
Comparing C and Pascal is rather like comparing a Learjet
to a Piper Cub - one is meant for getting something done while the other is
meant for learning - so such comparisons tend to be somewhat farfetched. But
the revision of Software Tools seems a more relevant comparison. The
programs therein were originally written in Ratfor, a ``structured'' dialect
of Fortran implemented by a preprocessor. Since Ratfor is really
Fortran in disguise, it has few of the assets that Pascal brings - data types
more suited to character processing, data structuring capabilities for better
defining the organization of one's data, and strong typing to enforce telling
the truth about the data.
It turned out to be harder than I had expected to rewrite
the programs in Pascal. This paper is an attempt to distill out
of the experience some lessons about Pascal's suitability for programming (as
distinguished from learning about programming). It is not a comparison
of Pascal with C or Ratfor.
The programs were first written in that dialect of Pascal
supported by the Pascal interpreter pi provided by the University of California
at Berkeley. The language is close to the nominal standard of
Jensen and Wirth,(6) with good diagnostics
and careful run-time checking. Since then, the programs have
also been run, unchanged except for new libraries of primitives, on four other
systems: an interpreter from the Free University of Amsterdam (hereinafter referred
to as VU, for Vrije Universiteit), a VAX version of the Berkeley system (a true
compiler), a compiler purveyed by Whitesmiths, Ltd., and UCSD Pascal on a Z80.
All but the last of these Pascal systems are written in C.
Object Pascal beats
C++ by Jim Phillips
Pascal Programming - Past issues of weekly features -- collection of papers
Turbo Pascal 3.0 compiler
and code generation internals
Pascal
Language Reference Contents
TP-FAQs
Help-Site Computer
Manuals - Pascal Programming - The Help-Site Pascal Programming
section
Borland Community Home Page
See Museum. Free registration required.
- Antique
Software Turbo Pascal v5.5 Combining the simplicity
of Apple's Object Pascal language with the power and efficiency of C++ to create
Turbo Pascal 5.5, the object-oriented programming language for the rest of us.
-
Antique Software: Turbo Pascal v3.02 Turbo Pascal 3
was the first Turbo Pascal version to support overlays, the Intel 8087 math
co-processor and BCD math.
-
Turbo Pascal v1.0 With the release of Turbo Pascal 1.0,
Borland started its award winning push into the world of development environments
and tools. Download the software that started it all.
Free Pascal / FPK Pascal -- Free Pascal -- 32 bit Pascal compiler. It is available
for different CPUs (i386+ and 680x0) and operating systems (Linux, DOS,AmigaOS,OS/2,Win32).
Decent but turbo Pascal is better.
-
Graphics Vision for the Free Pascal Compiler (FPK)
Matthias Koeppe, Stefan Milius
- Graphics Vision (GV) is a pixel-oriented graphical re-implementation of
Borland's Turbo Vision (Pascal). It is available for DOS, DPMI and Windows.
It is currently being ported to the free 32-bit Free Pascal compiler (Target:
GO32 DOS Extender). A Linux version is being prepared. The FPK versions of GV
are free software.
- Turbo Pascal
compatible compiler by Carl Eric Codere
- FPC is a freeware Turbo Pascal 7.0 compatible compiler. Same as FPK.
-
-
- The
Official WinFPC Homepage
Allen Cheng
- WinFPC - freeware IDE for Free Pascal
- Megido
- Megido a powerful, multi-platform, Linux oriented visual development
tool. Megido is a project that aims to develop a Delphi clone using the
Free Pascal Compiler. Megido is being developed by programmers all around
the world.
Think Pascal
Ingemar Ragnemalm
- This page is written in order to help you get started with Think Pascal,
the development version of Think Pascal, freely downloadable off the net.
The fact that you can download the complete compiler for free means that
we have a complete free development system for the Mac!
- Virtual Pascal
- The tool of choice for 32 bit cross-platform development in Pascal. Virtual
Pascal will include support for OS/2, Windows 95, Windows NT and various 32-bit
DOS extenders.
Turbo Pascal 3.0 compiler and code
generation internals
SWAG
SWAG (Sourceware Archival Group) is a collection of source code and
program examples for the PASCAL programming language. The material has been
donated by various PASCAL programmers from around the world, who desire
to contribute to the advancement of one of the greatest programming languages
there is. SWAG packets are available in 57 different categories covering
every aspect of the PASCAL language, and all free.
Institut Blaise
Pascal Universities of Paris VI and Paris VII, France
German EUnet Backbone Dormund, Germany
Pingo's Turbo
Pascal Page -- some minor stuff
Leonid Mamtchenkov's
Home Page -- some minor staff
- Pascal Math
Routines - source code for math functions not generally available from
your Pascal compiler.
-
- EFLIB
- EFLIB is a free object-oriented programming tool for Pascal. EFLIB is
an universal and complete tool that might replace all other small add-on
units that you are currently using. EFLIB is extremely well-written and
covers most of the programming topics you ever will deal with. EFLIB uses
an object hierarchy that makes it simple to customize objects for your own
needs. Extended prototype release is now available for download. EFLIB is
aiming on becoming an open standard framework for every Pascal programmer.
FTP ftp://ftp.sunet.se/pub/lang/EFLIB/
-
- Pascal Tool Producers
Directory -- probably most of them are extinct :-(...
In USA both TP 7.0 and BP 1.5 for Windows are around $30 with educational
discount. It's difficult to find TP 6.0...
Introducing
Modula-3
Modula-3 Resources
Top 10 reasons why
Pascal is better than C
- Turbo Pascal
Programming Page - This page contains Turbo Pascal and Assembly source
code for low level hardware programming in Pascal language. Includes Sound Blaster,
VESA, RS232, CD-ROM librarie
--http://members.vol.at/klaming/pascal/pascal.htm
- Pascal: Programmer's
Corner - Pascal Programming - Programmer's Corner serves those interested
in Programming and Writing. We cover many programming languages, including Visual
Basic, Power Builder, C/C++, as well as Web Design, Graphic Design, Help Authoring,
Kiosks, and Distance Learning. Comment
--http://www.vircom.ca/pcorner/p_pascal.htm
- OUP USA: Pascal, Programming,
and Problem Solving - OUP Book Pascal, Programming, and Problem Solving
by Gonzalez, Mario J
--http://www.oup-usa.org/docs/0030603072.html
- BRILLIANeT - Programming
- Turbo Pascal - Stuff about Turbo Pascal programming
-
Pascal Programming Language Resources around the World - Pascal
Programming Language Resources around the World April 4th 1997 THE PASCAL
PROGRAMMING LANGUAGE Here is a list of Pascal language resources from around
the world.
-
UK Yahoo! Computers and Internet>Programming Languages>Pascal - Help - More
Yahoos Home > Computers and Internet > Programming Languages > Pascal All sites
UK sites only Ireland sites only This category only Options HP Printers from
ё49.99 CLICK HERE Yahoo! Computers - US - reviews, top sellers, downloads, tips
--http://www.yahoo.co.uk/Computers_and_Internet/Programming...
- Programming Languages:Pascal
- page with links for assembly tutorials, newsgr oups and forum. And Related
books
--http://codeweb.8m.com/pascal.html
Copyright © 1996-2007 by Dr. Nikolai Bezroukov.
www.softpanorama.org was
created as a service to the UN Sustainable Development Networking Programme (SDNP)
in the author free time.
Submit
comments This document is an industrial compilation designed and created
exclusively for educational use and is placed under the copyright of the
Open Content License(OPL).
Original materials copyright belong to respective owners. Quotes are made
for educational purposes only in compliance with the fair use doctrine.
Standard disclaimer: The statements, views and opinions presented on
this web page are those of the author and are not endorsed by, nor do they necessarily
reflect, the opinions of the author present and former employers, SDNP or any other
organization the author may be associated with. We do not warrant the correctness
of the information provided or its fitness for any purpose.
Last modified:
February 28, 2008