Simplest Runtime Verification System for Go
Published:
Untitled
I am walking through AST of a go source code (fibonacci) that has all the primitives that I need to keep track of for instrumentation. As a simple experiment, I want to inject instrumentation to the fibonacci so that:
- A main text trace file holds information about:
- channels:
- creation (name, type, capacity, location)
- send (sender name, value)
- receive (receiver name, value)
- close (name, location)
- select:
- subsequent channels
- default
- functions:
- channels:
- Any time a “go” keyword identified, a new text trace file is created to hold the above information for the newly spawned goroutine