Saturday, December 22, 2012

Learning to Program with Pascal

Isn't Pascal a dead language?  Why would anyone learn to program with Pascal?  Well, companies known well to me that used Pascal in the past gave it up for the C language.  But C might not be the best first language to learn programming, at least not for everyone.  However, it is not really dead.  It was extended into Object Pascal and renamed to Delphi, which is popular within the community of Delphi programmers.

People really liked Turbo Pascal.  You can still download free copies of old Pascal documentation from this website:
http://bitsavers.informatik.uni-stuttgart.de/pdf/borland/turbo_pascal/
You can get the Turbo Pascal Object-Oriented Programming Guide and the Turbo Tutor (Version 2.0).  You can teach yourself both Pascal and programming with these manuals.  The Turbo Tutor even covers advanced data structures and the topics of sorting and searching.

You can get a free compiler for Free Pascal at this website:  http://www.freepascal.org/
Free Pascal has a Delphi-compatible mode.  You can buy Delphi from Embarcadero
(http://www.embarcadero.com/), a California company, so Pascal is definitely not dead.  I recently purchased a book on genetic algorithms and there is sample code in the book written in Pascal.  And here I thought I would never see this language again and I discarded my Pascal book!  I am fortunate the language is easy to read and that lovers of Turbo Pascal have saved the documentation as though it is sacred script.  Actually, the genetic algorithm book has a tutorial in the appendix. 

Here is a link to a piece of humor about "the sons of Kahn," meaning Philippe Kahn, the founder of Borland.  (The reference in this humorous article to the valley of the Scotts is Silicon Valley, the Scotts reference is to the Macintosh and Apple.)

In summary, Pascal is a good candidate for a first programming language.  Professional programming in Pascal lives on in the form of Delphi programming, but it is a niche market.  Pascal syntax can be simplified and used as pseudocode for software design documents.

Pascal is not as simple as Basic and not as powerful C.  It is in the middle and has been squeezed into a small position in today's programming world, but it is not gone, and not forgotten.

Robert

Small Basic

There are two free programming environments/languages called Small Basic.  One is Microsoft Small Basic.  Here is a website where you can download a free copy of Microsoft Small Basic.  They offer a free tutorial in PDF, free example programs, and a Wiki for support.  Here is a list of programs made with Microsoft Small Basic.

Another Small Basic version is called SmallBASIC.  This version was intended to run on minimal hardware.  This is not a toy language.  It was intended for the Palm OS.  The Wikipedia article says, "SmallBASIC runs even on Palm OS wristwatches made by Fossil, Inc."  You can get SmallBASIC for free from the SmallBASIC webpage on Sourceforge.  There are no tutorials for Basic at this website.  However, you can download free applications as examples written in SmallBASIC from their code library.  Basic is a simple language, so you do not need much to get going.

Generic books on Basic are hard to find, but copies are still available from Amazon for Schaum's Outline of Theory and Problems of Programming With Basic by Byron S. Gottfried, and his other book, Schaum's Outline of Programming with Structured BASIC.  The difference between the two is that structured programming does not use GOTO statements.

There are a lot of free sources for Basic compilers.

Robert

Power Basic and Liberty Basic

If you are considering making Basic your first programming language, you should wonder if the Basic language is a dead end.  Can you actually use it after you have finished  learning it?  Besides the Microsoft offerings (1) Visual Basic .NET, (2) Visual Basic for Applications  (VBA) and (3) VBScript, there are other professional releases of Basic.

Power Basic is a professional release of Basic that is well thought of.  There is also Liberty Basic.

Basic is not a dead end language.  It has a lot of commercial support.  It has a natural syntax that makes it easier to learn.  Furthermore, the natural syntax of Basic can be adapted into pseudocode for use in software design documents.

Robert