Newbies What Next ? News Forums Calendar


News Sections
General News (3973/0)
Reviews (628/0)
Press Releases (464/0)
Distributions (187/0)
Software (859/0)
Hardware (522/0)
Security (192/0)
Tutorials (343/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 Thursday, May 15 2014 @ 02:03 PM 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
All Group Tests

Top Free Software
6 Office Suites
7 Document Processors
6 Lean Desktops
6 Desktop Search
9 Project Management
9 Groupware Apps
14 File Managers
10 Databases
21 Backup Tools
21 DVD Tools
21 Window Managers
21 Productivity Tools
9 Terminal Emulators
21 Financial Tools
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
11 Remote Display Apps
42 Best Games
42 More Games
21 More Games
21 Notable Games (1)
21 Notable Games (2)
21 Notable Games (3)
8 ASCII Games
9 Educational Games
42 Audio Apps
42 Video Apps
6 Screencasting Apps
80 Security Apps
9 System Monitoring
6 Family History Apps
11 PDF Tools
6 Music Servers
6 Collection Managers
7 Calculator Apps
8 Geometry Apps
Free Console Apps
14 Multimedia
8 Compilers
9 IDEs
9 Debuggers
7 Revision Control Apps
6 Doc Generators
'Free' Proprietary
21 Closed-Source Apps
Top Commercial Apps
42 Games
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

All Group Tests

Other Articles
Migrating from Windows
Back up your data
Distribution Guide
Distro Portal Pages
20 Free Linux Books
Running Linux Under Windows

Older Stories
Sunday 03/23
  • Keep a Watchful Eye with these Console Based Process Viewers (0)

  • Saturday 03/15
  • Focus on Your Writing by Using Markdown Editors (0)

  • Sunday 03/09
  • Experience Home Computers that Missed the Big Time (0)

  • Monday 03/03
  • Molly: Children of the Universe (0)

  • Sunday 03/02
  • Up-and-Coming Clients to Tweet (0)
  • Reminiscing the Wonderful ZX Spectrum (0)

  • Monday 02/17
  • Need a Good Bitcoin Client? (0)

  • Sunday 02/09
  • 5 Highly Promising Cross-Platform IDEs (0)
  • Play the Best Linux Puzzle Games (0)
  • Essential LaTeX Tools (0)

  • Vote

    What do you find MOST attractive about Open Source software?

    Amount of customization
    Freedom provided
    Speed of development
    Multiple versions
    Potential to contribute
    Ability to modify code
    4716 votes | 2 comments

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