Newbies What Next ? News Forums Calendar


News Sections
General News (3987/0)
Reviews (637/0)
Press Releases (465/0)
Distributions (197/0)
Software (911/0)
Hardware (537/0)
Security (192/0)
Tutorials (356/0)
Off Topic (181/0)

User Functions


Don't have an account yet? Sign up as a New User

There are no upcoming events

4 Best Free Pascal Books

4 Best Free Pascal Books

Pascal is an imperative and procedural programming language designed in the late 1960s by Niklaus Wirth to teach structured programming using subprograms called procedures and functions. The language is a direct descendent from ALGOL 60, and takes programming components from ALGOL 68 and ALGOL-W.

Pascal is a popular teaching language to introduce structured programming techniques to students. There are many benefits from this type of programming such as code reusability, partitioning code into readable modules and procedures, and helps programmers work together on code simultaneously. Pascal is a strongly typed language, with extensive error checking. It has built in data types such as arrays, records, files and sets. There are also user defined data types. Pascal supports object oriented programming.

Pascal was named in honour after the French mathematician, physicist, and philospher Blaise Pascal who helped to pioneer computer development.

The focus of this article is to select the finest Pascal books which are available to read without charge. Each text has a lot to offer for a budding Pascal programmer. So get reading and learning.

1. Essential Pascal (2nd Edition)

Essential Pascal
Author Marco Cantù
Format PDF
Pages 94 (free 2nd edition); 140 (4th edition)

"Essential Pascal" is a free online introduction to the Pascal programming language. This book has been written by Marco Cantù (the author of the best selling book, Mastering Delphi). It covers the language form the perspective of Borland's Delphi development environment.

Chapters cover:

  • A Short History of the Pascal Language
  • Coding in Pascal - highlights elements of Pascal coding style: comments, use of uppercase, pretty-printing, syntax highlighting, code templates, language statements, keywords, and expressions and operators
  • Types, Variables, and Constants
  • User-Defined Data Types - define data types by means of type constructors, such as subrange types, array types, record types, enumerated types, pointer types, and set types
  • Statements - based on keywords and other elements to indicate to a program a sequence of operations to perform. The basic types of commands explored are simple and compound statements, assignment statements, conditional statements, case statements, loops, and the with statement
  • Procedures and Functions - introduces reference parameters, constant parameters, open array parameters, type-variant open array parameters, Delphi calling conventions, forward declarations, procedural types, function overloading, and default parameters
  • Handling Strings - types of strings, using long strings, looking at strings in memory, and formatting strings
  • Memory - looks at dynamic arrays
  • Windows Programming
  • Variants - discusses the Variant data type from a general perspective
  • Program and Units
  • Files in the Pascal Language

2. Start Programming using Object Pascal

Start Programming using Object Pascal
Author Motaz Abdel Azeem
Format PDF, HTML
Pages 150

Start Programming using Object Pascal is written for programmers who wish to learn Object Pascal. The book is also suitable as a first programming book for new students and non-programmers. It illustrates programming techniques in general in addition to the Object Pascal Language. Object Pascal is a general purpose hybrid (structured and object oriented programming) language.

The examples in the book make use of Lazarus and Free Pascal.

Chapters cover:

  • Language Basics - looks at variables, sub types, conditional branching, the If condition, loops, for loop, repeat until loop, while loop, strings, copy function, insert procedure, delete procedure, trim function, stringreplace function. The chapter also covers arrays, records, files, text files, typed files, constants, sets, exception handling, and more. The chapter proceeds to illustrate what has been taught through a number of programs including a weight program, restaurant program, a keyboard program, a marks program, and a cars database program.
  • Structured Programming - write procedures that can be used in applications, introduces paramaters, defining local variables, functions as input parameters, units, procedure and function overloading, default value parameters, sorting, bubble sort algorithm, selection sort algorithm, shell sort algorithm, and string sorting.
  • GUI - create GUI applications with Lazarus
  • Object Oriented Programing - a brief introduction into the type of programming where the entities of an application are described as objects

The book is licensed under the Creative Commons.

3. Programming dsPIC (Digital Signal Controllers) in PASCAL

Programming dsPIC (Digital Signal Controllers) in PASCAL
Author Zoran Milivojević, Djordje Šaponjić
Format HTML
Pages -

Programming dsPIC (Digital Signal Controllers) in PASCAL helps the reader to write a program, debug it and use it to start up a microcontroller.

The book provides numerous practical examples with necessary connection schematics explaining the operation of temperature sensors, A/D and D/A converters, LCD and LED displays, relays, communication modules etc. It is constantly updated with fresh examples.

All program codes are commented in details to make it easier for beginners to start programming. Instruction set, operators, control structures, and other elements of the PASCAL programming language are thoroughly explained as well. The book also includes a useful appendix on the mikroPascal for dsPIC development environment, instructions on how to install it and how to use it to its full potential.

Chapters cover:

  • Configuration Bits - Oscillator configuration register, configuration register of the watchdog timer, voltage protection configuration register, and program memory protection configuration register
  • Interrupts and Traps - Interrupts are unexpected events in a sequence of execution of instructions causing an interruption of the normal programme flow
  • Timers - examines Type A, B and C timers, as well as the concatenated 32-bit timer
  • Input Capture - external signal capture input mode, external signal interrupt mode, and input capture operation in SLEEP and IDLE modes
  • Output Compare Module - has the task of comparing the value of the time base counter with the value of one or two compare registers depending on the Operation mode selected
  • A/D Converter
  • Memory Model - looks at program memory, data memory, modulo addressing, bit-reversed addressing, stack, addressing modes, direct memory addressing, direct register addressing, indirect register addressing, and literal addressing
  • SPI Module - a synchronous serial interface useful for communicating with other peripheral or microcontoller devices
  • UART Module - the basic serial I/O module available in the dsPIC30F device family
  • DSP Engine - Digital signal processing (DSP) module is a part of the device specialized for fast execution of the basic mathematical operations (addition, subtraction and multiplication) and for performing automatically accumulation, logical shifting, rounding off and saturation
  • I2C module - a serial interface primarily intended for communication with other peripheral or microcontroller devices
  • Examples - include operating an AD converter, operating UART modules, operating SPI modules, and operating I2C modules
  • DSP Examples - Menu, DTMFout, DTMFin, and Acceleration sensor
  • Digital filter design - briefly describes Filter Designer Tool which is a constituent part of the mikroPascal, mikroC, and mikroBasic

4. Pascal Programming

Pascal Programming
Author Wikimedia
Format HTML
Pages -

Chapters cover:

  • Standard Pascal - explores variables and constants, input and output, boolean expressions and control flow, Pascal syntax and functions, enumerations, sets, arrays/lists, strings, records, pointers, and files
  • Extensions - units, object oriented programming, exporting to libraries, foreign function interfaces, generics, and other extensions
  • Preprocessor functionality
  • Syntax cheat sheet

Bookmark and Share

Last Updated Saturday, July 04 2015 @ 07:41 AM EDT

We have written a range of guides highlighting excellent free books for popular programming languages. Check out the following guides: C, C++, C#, Java, JavaScript, CoffeeScript, HTML, Python, Ruby, Perl, Haskell, PHP, Lisp, R, Prolog, Scala, Scheme, Forth, SQL, Node.js (new), Fortran (new), Erlang (new), Pascal (new), and Ada (new).

Group Tests
100 Essential Apps
All Group Tests

Top Free Software
5 Office Suites
3 Lean Desktops
7 Document Processors
4 Distraction Free Tools
9 Project Management
4 Business Solutions
9 Groupware Apps
14 File Managers
10 Databases
21 Backup Tools
21 Productivity Tools
5 Note Taking Apps
9 Terminal Emulators
21 Financial Tools
5 Bitcoin Clients
21 Text Editors
21 Video Emulators
21 Home Emulators
42 Graphics Apps
6 CAD Apps
42 Scientific Apps
10 Web Browsers
42 Email Apps
12 Instant Messaging
10 IRC Clients
7 Twitter Clients
12 News Aggregators
11 VoIP Apps
42 Best Games
9 Steam Games
42 Audio Apps
5 Music Streaming
42 Video Apps
5 YouTube Tools
80 Security Apps
9 System Monitoring
8 Geometry Apps
Free Console Apps
14 Multimedia
4 Audio Grabbers
9 Internet Apps
3 HTTP Clients
5 File Managers
8 Compilers
9 IDEs
9 Debuggers
7 Revision Control Apps
6 Doc Generators
Free Web Software
21 Web CMS
14 Wiki Engines
8 Blog Apps
6 eCommerce Apps
5 Human Resource Apps
10 ERP
10 CRM
6 Data Warehouse Apps
8 Business Intelligence
6 Point-of-Sale

Other Articles
Migrating from Windows
Back up your data
20 Free Linux Books
24 Beginner Books
12 Shell Scripting Books

Older Stories
Sunday 04/12
  • First Peek at XBian on the Raspberry Pi 2 (0)

  • Saturday 04/04
  • First Look at OSMC RC on the Raspberry Pi 2 (0)

  • Sunday 03/29
  • First Steps with OpenELEC on the Raspberry Pi 2 (0)
  • Ubuntu MATE 15.04 for Raspberry Pi 2 (0)

  • Monday 03/16
  • MIPS Creator CI20 v Raspberry Pi 2 (0)
  • Raspberry Pi 2: Raspbian (ARMv6) v Linaro (ARMv7) (0)

  • Friday 03/06
  • Raspberry Pi 2 review (0)

  • Sunday 02/22
  • Chess in a Few Bytes (0)
  • Learn the Art of Computer Programming With These Great Free Beginner Books (2)
  • CD Audio Grabbers (0)

  • Vote

    What Linux distribution do you run on your main computer?

    841 votes | 3 comments

    Built with GeekLog and phpBB
    Comments to the webmaster are welcome
    Copyright 2009 - All rights reserved