Switch branches/tags
Nothing to show
Find file
Fetching contributors…
Cannot retrieve contributors at this time
56 lines (40 sloc) 1.79 KB


Pazcal is an educational subset of the C programming language. It is intended for teaching [Introduction to Computer Programming] ( to first-year students of the School of Electrical and Computer Engineering at the National Technical University of Athens. It comes with a set of notes, written by Stathis Zachos and Nikos Papaspyrou, which will eventually be added to this repository.

Pazcal is actually:

  • A header file, called pazcal.h, defining a set of C macros that is meant to facilitate first-year students learning C. All these macros are written in UPPERCASE letters, so they can be easily distinguished from things existing in regular C.
  • A lint-like tool, called pzcheck that forbids everything in C that should not be taught to first-year students.
  • A script, called pzc that combines the above two and can be considered as an implementation of the language.

For the time being, pzcheck does not do anything: it allows all of C plus the macros defined in pazcal.h.


To install Pazcal to your computer, assuming you are running Linux or Mac OS, or that you know what to do with your Windows:

  1. Make sure you have gcc installed and working.

  2. Copy this directory to, say, /full/path/pazcal.

  3. Edit /full/path/pazcal/bin/pzc and set PAZCAL_DIR to point to /full/path/pazcal.

  4. Make sure that all files in /full/path/pazcal/bin are executable and that this directory is in your PATH.


The implementation of Pazcal is maintained by