Pascal was designed as a teaching language. In addition to being easy to learn, Pascal is a useful language in its own right, forms a sound base from which to learn other languages, is available for a range of platforms and is well supported by information from a wide variety of sources. We discuss these advantages below.
Ease of learning
A school student should not expect to be trained directly for specific employment, for example by the selection of a computing language on the basis of current skills shortages. Instead, a prospective programmer needs to be prepared to use many languages during his/her career and should be provided with the knowledge and understanding that will underpin future specialisation. A school student should learn an easy language first, to have a good chance of mastering the language and to gain confidence in programming.
- The code reads like a natural language, making it easy to understand. This makes it straightforward to inter-convert Pascal to and from algorithms expressed in structured English and in pseudo-code.
- The Pascal keywords are well-chosen so that their meanings are clear (e.g. record, procedure, function, integer, not, or, and).
- Pascal is not case sensitive, so a student will not generate a syntax error merely by typing the wrong case of a letter of a keyword or variable.
- The flexibility to choose the bounds of an array is particularly convenient for the beginner. (Some languages require a lower bound of 0).
- It is especially helpful to the novice for the language to use a different operator for assignment (:=) than the relational operator for equality (=).
A study of Pascal leads naturally to Object Pascal (Delphi), an extension of the language that has visual components to enable Rapid Application Development (RAD). The Tiobe Programming Community index gives 100 languages a rating, "based on the number of skilled engineers world-wide, courses and third party vendors". In March 2017, Delphi/Object Pascal was ranked 9th.
Base for learning other languages
The student of Pascal should concentrate on the fundamentals of the language such as selection, iteration, arrays, records, files, sets and units before learning about the more complex classes, objects and properties available in Delphi. (Once students begin to use the vast number of professional-looking widgets available to them in visual programming, they can be distracted from the core algorithmic skills). After the advanced concepts have been learned in Delphi, they should be easily transferable to other object oriented languages such as Java. One major contributor describes succinctly his transition to C++ as follows.
"The first time I tried C++ it scared the hell out of me, but after a year with Pascal I can confidently use both."
Our most exceptional contributor has made the same transition without difficulty and has this to say in favour of the structured approach provided by Pascal.
"Before last year I could kind of program but it was in a swirl of misunderstandings. There wasn’t really any structure to it - but after learning Pascal it solidified things."
Students who progress to a career in programming are likely to need to learn C at some stage. Using the Lazarus IDE, the Pascal programmer can opt to use C-style syntax (e.g. writing the assignment product += 5 as a shorthand for product := product + 5). This is a useful exercise before coding in C.
Programming language tutorials sometimes directly compare the target language to Pascal (e.g. Migrating from Pascal to Java and Comparison of Pascal and C) and often include many references to Pascal code for comparison. These comparisons ease the transition from Pascal to other procedural languages, as should our tutorials C/C++ after Pascal and C# after Pascal. Students who have learned Oxygene for Java after traditional Pascal will find it very easy to apply their knowledge to Java.
In order to facilitate programming at home, the language taught by a school should be widely available on home computers. The Pascal IDE Lazarus is available for many operating systems such as Microsoft Windows, Mac OS X and Debian Linux on the Raspberry Pi. Lazarus has been improving in functionality and robustness with each new version and the editor is a pleasure to use.
Availability of information
Pascal is a very well established language and plenty of books have been written about it. Large numbers of graduates learned Pascal at university, so there is a lot of experience to consult. Friends or relatives may be pleased to help and show how much they remember. There are also tutorials and many other resources on the internet. See our links page for recommended Pascal websites. We hope that the information on this site will help to promote the study of Pascal. We were delighted by this endorsement.
"Your site is great. It builds up talented young people's understanding of Computing and Pascal capability, understanding and skills in quite a simple way through use of various examples. It's very good for students that want to develop their computing talents independently. Pascal does seem to be preferred by quite a lot of schools nationally at the moment."
The Pascal community is very welcoming and many around the world have put in a lot of time and effort to keep the language vibrant. The spirit seems to be infectious. The most able students are making their fine Pascal code available for others to use and study, prompting the observation below.
"These students are fantastically talented, but best of all they are helping to nurture the talent in others."
On this uplifting thought we rest our case.