The back end is probably the easiest part to understand, since we've already developed a keen understanding of quasiquotation. Produces a C function for each rule Trades space for speed not that much space either: 30 insns / rule at -O2 Pre-calculates a lot Only needs stat(), system(), and write() Many other tradeoffs possible Topological sort done at compile time Missing build rules directly fail when called Dead build rules not compiled into executable.
The back end is probably the easiest part to understand, since we've already developed a keen understanding of quasiquotation. Produces a C function for each rule Trades space for speed not that much space either: 30 insns / rule at -O2 Pre-calculates a lot Only needs stat(), system(), and write() Many other tradeoffs possible Topological sort done at compile time Missing build rules directly fail when called Dead build rules not compiled into executable.
Copyright:
Attribution Non-Commercial (BY-NC)
Available Formats
Download as TXT, PDF, TXT or read online from Scribd
The back end is probably the easiest part to understand, since we've already developed a keen understanding of quasiquotation. Produces a C function for each rule Trades space for speed not that much space either: 30 insns / rule at -O2 Pre-calculates a lot Only needs stat(), system(), and write() Many other tradeoffs possible Topological sort done at compile time Missing build rules directly fail when called Dead build rules not compiled into executable.
Copyright:
Attribution Non-Commercial (BY-NC)
Available Formats
Download as TXT, PDF, TXT or read online from Scribd
The back end is probably the easiest part to understand,
since we've already developed a keen understanding of quasiquotation.
Produces a C function for each rule
Trades space for speed Not that much space either: ~ 30 insns / rule at -O2 Pre-calculates a lot Only needs stat(), system(), and write() Many other tradeoffs possible
Can perform domain-specific optimizations
Topological sort done at compile time Missing build rules directly fail when called Dead build rules not compiled into executable Common dependency DAG nodes refer to same function All messages pre-formatted All string lengths known, for write()