This document describes Programmable Array Logic (PAL) and provides examples of designing combinational logic circuits using PALs. It begins by defining PALs as programmable logic devices with programmable AND gates followed by fixed OR gates. Examples are then given to show how to design PALs with different numbers of inputs and outputs to implement Boolean functions. K-maps are used to minimize the functions before programming the PAL tables. Diagrams of the PAL structures are also shown for examples with 2-wide and 3-wide AND-OR configurations.