(Latest Revision: Sat Nov 6 15:09:31 PST 2004 ) MakeWallFnPlan.txt

Make Wall Function Plan



A Design for a Program That Makes Brick Walls 
A Breakdown of Responsibilities Given to Each Function


MakeMortar makes: "*"

MakeMortarForBrick makes: "***************"

MakeEdge makes: "---------------"

MakeSidesOfWhole makes: "|             |"  

(half of the middle part of a brick.)

MakeMortarForCourse makes all the mortar to go above a course of bricks.  For
example, for this figure:

***********************************************
---------------*---------------*---------------
|             |*|             |*|             |
|             |*|             |*|             |
---------------*---------------*---------------

MakeMortarForCourse would be responsible for making the row of asterisks at
the top of the figure.  (The rest of the figure would be made by MakeCourse.)

MakeEdges makes: upper and lower edges for a course of bricks.  For example,
in the figure above, MakeEdges would make the parts that look like this:

---------------*---------------*---------------

MakeSides makes: middle sections of a course of bricks.  For example, in the
figure above, MakeSides would make the parts that look like this:

|             |*|             |*|             |

MakeCourse makes: a course of bricks.  For example, if it made a course of 3
bricks, it would look like this:

---------------*---------------*---------------
|             |*|             |*|             |
|             |*|             |*|             |
---------------*---------------*---------------

MakeWall makes: A wall like this:

---------------*---------------*---------------
|             |*|             |*|             |
|             |*|             |*|             |
---------------*---------------*---------------
***********************************************
---------------*---------------*---------------
|             |*|             |*|             |
|             |*|             |*|             |
---------------*---------------*---------------
***********************************************
---------------*---------------*---------------
|             |*|             |*|             |
|             |*|             |*|             |
---------------*---------------*---------------
***********************************************
---------------*---------------*---------------
|             |*|             |*|             |
|             |*|             |*|             |
---------------*---------------*---------------

It makes whatever size wall is desired.