Pascal+Pszeudokód+(ppalg)

A ppalg egy pszeudokód, mely pascal stílusú algoritmus-megadást tesz lehetővé. A ppalg feldolgozása: A nyelv ne legyen nagybetű-érzékeny. Foglalt szavak:
 * Szerkezet kialakítása: A sortörések mentén parancsokra bontjuk (dupla sortörések mentén függvényekre), és a bekezdésjelek (tabulátor vagy szóközök) nyomán ezeket blokkokba szervezzük.
 * Parancsok elemzése.
 * A mintákhoz tartozó algml kód meghatározása.

ALGORITHM, AND, CASE, DO, EACH, ELSE, FOR, FROM, FUNCTION, IF, IN, INPUT, IS, MOD, NOT, OR, OUTPUT, SET, SWAP, THEN, TO, VARIABLES, WITH

PPalg operátorok unárisak: +, - , NOT binárisak: :=, + , - , * , / , MOD, AND, OR, = , != , < , > , >= , <= , SWAP

Vezérlési szerkezetek: IS b: x ELSE: y } || {a} {b}{x} {y} ||
 * { ALGORITHM a IS } ||  {...} ||
 * { FUNCTION f IS } || {...} ||
 * { INPUT } || {...} ||
 * { OUTPUT } || {...} ||
 * { VAR } || {...} ||
 * { INIT } || {...} ||
 * { DO } || {...} ||
 * { a IS t } ||  ||
 * { FOR EACH a IN b FROM c TO d } ||  {b}{c} {...} ||
 * { FOR a FROM b TO c } ||  {b}{c} {...} ||
 * { WHILE a } || {a}  ||
 * { SET a TO b } || {b}{a} ||
 * { SWAP a WITH b } || {a}{b} ||
 * { a #op# b } || {a}{b}</op> ||
 * { func(a1,a2...an) } || <call func='func'>{a1}{a2}...{an} ||
 * { array[ind] } || <call func='indexing'>{array}{ind} ||
 * { array[a..b] } || <call func='subset'>{array}{a}{b} ||
 * { IF a } || <if> {a} {...}</do></if> ||
 * { CASE a
 * { // szöveg } || szöveg ||