Automating creativity
Preannouncement for a revived code analyzer
Not another style checker. NStatic is a symbolic analyzer for .NET code that models state, calls, paths, assertions, and exceptions so warnings can explain how a problem is reached.
See the featuresSee how it works
A debugger-like experience for static analysis: error list, symbolic locals, assumptions, call stack, and visual execution paths.
Deep semantic analysis built on symbolic expressions, method summaries, constraints, and algebraic simplification.
A deterministic expression engine that caches, simplifies, and summarizes rather than blindly exploring every path forever.
Most analyzers stop at "this line might fail." NStatic was designed to answer the more useful question: under what symbolic conditions does this line fail, and what did the program know at that point?
NStatic lowers C# into a symbolic representation where values, branches, state changes, lambdas, assertions, and calls can be evaluated together.
The original UI explored a simple idea: when analysis finds a problem, let the developer inspect the symbolic runtime that led to it.
Inspect how a warning crosses method boundaries without forcing every caller to be annotated manually.

Add analysis-only assertions, assumptions, and breakpoints while keeping ordinary C# compilation intact.

The first goal is not hype. It is to recover the engine, document the design, prove small examples end to end, and prepare a credible preview for developers who care about semantic code analysis.