Commit 3509d92f authored by Robert P. Goldman's avatar Robert P. Goldman
Browse files

Attempted to capture the description of make's processing.

parent 72eb1b11
......@@ -97,13 +97,15 @@ in terms of how systems are specified.
{\make} is built around a complex combination of
multiple layers of languages --- some domain-specific languages and
some generalized programming languages.
{\make} interprets a \emph{makefile} thusly:
% \rtof{I would like to cut the following; I think it's enough that the reader
% knows that there are multiple languages involved.}
% \ftor{I think it brings some insight as to the nature of the difference}
a text substitution program is expanded into
simple pattern matching rules used by an inference engine
that will run simply parameterized shell scripts.
{\make} interprets a \emph{makefile} in the following way:
A text-substitution preprocessor expands macro definitions in the file,
producing a set of pattern-matching rules that the
main engine uses to infer how to build components.
The rules have as their consequents parameterized shell scripts that actually
perform the build actions.
\make{} fires these rules as it chains backwards from targets it has been
directed to build towards dependencies that are required.
{\make} is a powerful tool that can express arbitrary programs,
but makefiles can be a mesh of code that defies any simple analysis.
{\ASDF} is a small {\CL} program,
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment