Patio Program
CS2 Course Summary Slide 3

It would be quite annoying to interactively generate a patio design like that shown in Slide 1 of this summary. The Clay program shown below generates the design from the first slide. The point here is not to read the program -- it is merely to appreciate the fact scanning for tokens and other important programming topics will not be neglected in this course.


patio =  sw w nw n ne e se s c
sw =  mbk4 mlt4 brsquare4 mrt4 mfd4
nw =  tr sw tl
se =  tl sw tr
ne =  ta sw ta
w =  mlt4 grsquare4 mrt4
n =  tr w tl
s =  tl w tr
e =  ta w ta
c =  brsquare4
ta =  tr tr
gpaver =  green paint black draw
rpaver =  red paint black draw
bpaver =  blue paint black draw
rsquare2 =  mbkh mlth rline2 tr rline2 tr rline2 tr rline2 tr mrth mfdh
rline2 =  rpaver mfd rpaver
bline4 =  bpaver mfd bpaver mfd bpaver mfd bpaver
yline4 =  ypaver mfd ypaver mfd ypaver mfd ypaver
gline4 =  gpaver mfd gpaver mfd gpaver mfd gpaver
bring4 =  mbl4 bline4 tr bline4 tr bline4 tr bline4 tr mrf4
yring4 =  mbl4 yline4 tr yline4 tr yline4 tr yline4 tr mrf4
gring4 =  mbl4 gline4 tr gline4 tr gline4 tr gline4 tr mrf4
brsquare4 =  rsquare2 bring4
yrsquare4 =  rsquare2 yring4
grsquare4 =  rsquare2 gring4
mlt4 =  mlt mlt mlt mlt
mrt4 =  mrt mrt mrt mrt
mbk4 =  mbk mbk mbk mbk
mbl4 = mbk mbkh mlt mlth 
mrf4 = mrth mrt mfdh mf