G3Kappa / Ergo

Other
4 stars 0 forks source link

Static Analysis: Inlining, Compiler & Compile-Time Optimizations #72

Closed G3Kappa closed 8 months ago

G3Kappa commented 8 months ago

This is quite a big PR but it finally introduces an actual compiler that produces executable graphs. These graphs can be further optimized by performing some compile-time checks. The graph structure implicitly takes care of control flow, while the optimizations reduce the graph size as much as possible.

There's also an inlining process which runs before the compilation step. It can provide benefits in the interpreted case, and it also makes compilation faster.