digraph GeologQueryEngineBroad { fontname = "Helvetica,Arial,sans-serif" layout = dot rankdir = LR ranksep = 0.9; nodesep = 0.7; splines = true; compound = true; bgcolor = "white" node [ fontname = "Helvetica,Arial,sans-serif", shape = box, style = "filled,rounded", color = "#555555", fillcolor = "white", penwidth = 1.5 ] edge [ fontname = "Helvetica,Arial,sans-serif", color = "#333333", fontsize = 9, fontcolor = "#555555", labeldistance = 2.0, penwidth = 1.2 ] subgraph cluster_frontend { label = "Geolog Front End" style = "rounded" color = "#666666" fontcolor = "#333333" bgcolor = "#FAFAFA" margin = 20 subgraph cluster_language { label = "Language Pipeline" style = "dashed" color = "#9C27B0" fontcolor = "#7B1FA2" margin = 14 concrete [label = "Concrete Syntax", fillcolor = "#F3E5F5", color = "#9C27B0"] parser [label = "Parser", fillcolor = "#F3E5F5", color = "#9C27B0"] abstract [label = "Abstract Syntax", fillcolor = "#F3E5F5", color = "#9C27B0"] elaborator [label = "Elaborator", fillcolor = "#F3E5F5", color = "#9C27B0"] typed [label = "Elaborated Syntax\n(with types)", fillcolor = "#F3E5F5", color = "#9C27B0"] lowering [label = "Lowering", fillcolor = "#F3E5F5", color = "#9C27B0"] ir [label = "Intermediate Representation\n(shared execution contract)", fillcolor = "#F3E5F5", color = "#9C27B0"] } subgraph cluster_tools { label = "Developer Tooling" style = "dashed" color = "#4CAF50" fontcolor = "#388E3C" margin = 14 lsp [label = "LSP\n(parsing + elaboration diagnostics)", fillcolor = "#E8F5E9", color = "#4CAF50"] } } subgraph cluster_runtime { label = "Shared Runtime / Execution Layer" style = "rounded" color = "#666666" fontcolor = "#333333" bgcolor = "#FAFAFA" margin = 20 subgraph cluster_engine { label = "IR Execution Engine" style = "dashed" color = "#4CAF50" fontcolor = "#388E3C" margin = 14 engine [label = <
| Shared Query Engine |
| • user queries |
| • law checking |
| • chase / fixpoint steps |
| • planning / rewriting |