Start programming
using
Object Pascal
Written by: Motaz Abdel Azeem
Edited by: Pat Anderson, Jason Hackney
18.June.2011
Introduction
This book is written for programmers who want to learn the Object Pascal Language. It is also suitable as a first programming book for new students and nonprogrammers. It illustrates programming techniques in general in addition to the Object Pascal Language.
The Object Pascal Language
The first appearance of the Pascal Language supporting Object Oriented programming was in 1983 by Apple computer company. After that Borland supported Object Oriented programming for their famous Turbo Pascal line.
Object Pascal is a general purpose hybrid (structured and object oriented programming) language. It can be used for a vast range of applications, like learning, game development, business applications, Internet applications, communication applications, tools development, and OS kernels.
Delphi
After the success of Turbo Pascal, Borland decided to port it to Windows and introduced component driven technology to it. Soon Delphi became the best RAD (Rapid Application Development) tool at that time.
The first version of Delphi was released in 1995 with a rich set of components and packages that supported Windows and Database applications development.
Free Pascal
After Borland dropped support for the Turbo Pascal line, the Free Pascal team started an open source project to write a compatible compiler for Turbo Pascal from scratch, and then make it compatible with Delphi. This time the Free Pascal compiler was targeting additional platforms and operating systems like Windows, Linux, Mac, ARM, and WinCE.
Version 1.0 of the Free Pascal compiler was released in July 2000.
Lazarus
Free Pascal is a compiler, and it lacks an Integrated Development Environment (IDE) similar to the Delphi IDE for Windows. The Lazarus project was started to provide an IDE for Free Pascal. It provides a source code editor, debugger, and contains a lot of frameworks, packages, and component libraries similar to the Delphi IDE.
Version 1.0 of Lazarus has not been released yet, but there are a lot of applications developed with beta versions of Lazarus. A lot of volunteers write packages and components for Lazarus, and the community is growing.
Object Pascal features
Object Pascal is a very easy and readable language for beginners, its compilers are very fast, and the applications it produces are reliable, fast and can be compared with C, and C++. You can write robust and large applications with its IDEs (Lazarus and Delphi) without complexity.
Author: Motaz Abdel Azeem
I am graduated from Sudan University of Science and Technology in 1999. and I started learning Pascal as a second language after BASIC. Since then, I've been using it continuously, and I found it a very easy and powerful tool, specially after I studied C, and C++. Then I moved to Delphi. Since then I have been using Delphi and Lazarus for all my applications.
I live in Khartoum. My current job is Software Developer.
First Editor
Pat Anderson graduated from Western Washington State College in 1968 and Rutgers Law School in 1975. He works as the City Attorney of Snoqualmie, Washington. Pat began programming on a Radio Shack TRS80 Model III in 1982 with the builtin BASIC interpreter, but soon discovered Turbo Pascal.
He has owned all versions of Turbo Pascal from 4.0 to 7.0, and every version of Delphi from 1.0 to 4.0.
Pat took a hiatus from programming from 1998 until 2009, when he came upon Free Pascal / Lazarus, which reignited his passion for programming.
Second Editor
Jason Hackney is a graduate of Western Michigan University's
College of Aviation. He works fulltime as a professional pilot for a
power company based in southeast Michigan. Jason has been a casual
programmer since his first exposure to the Commodore 64 around 1984.
Briefly introduced to Turbo Pascal in 1990, he recently rekindled
latent programming interest after discovering Linux, Lazarus, and Free
Pascal.
License:
The License for this book is Creative Commons.
Environment for book examples
We will use Lazarus and Free Pascal for all the examples in this book. You can get the Lazarus IDE, including the Free Pascal compiler, from this site: http://lazarus.freepascal.org.
If you are using Linux, then you can get Lazarus from the software repository. In Ubuntu you can use the command:
sudo apt-get install lazarus
In Fedora you can use the command:
yum install lazarus
Lazarus is a free and open source application. And it is available on many platforms. Applications written in Lazarus can be recompiled on another platform to produce executables for that platform. For example if you write an application using Lazarus in Windows, and you want to produce a Linux executable for that application, you only need to copy your source code to Lazarus under Linux, then compile it.
Lazarus produces applications that are native to each operating system, and it does not require any additional libraries or virtual machines. For that reason, it is easy to deploy and fast in execution.
Using Text mode
All examples in the first chapters of this book will be console applications (text mode applications/
command line applications), because they are easy to understand and standard. Graphical user interface applications will be introduced in later chapters.
Contents
Introduction...............................................................................................................................................2
The Object Pascal Language.....................................................................................................................2
Delphi........................................................................................................................................................2
Free Pascal.................................................................................................................................................2
Lazarus......................................................................................................................................................2
Object Pascal features...............................................................................................................................3
Author: Motaz Abdel Azeem......................................................................................................................3
First Editor.................................................................................................................................................3
Second Editor.............................................................................................................................................3
License:......................................................................................................................................................4
Environment for book examples.................................................................................................................4
Using Text mode ........................................................................................................................................4