refactor: rename interpreter to runtime and use receiver methods

- Rename pkg/interpreter to pkg/runtime
- Move ReduceOnce to new pkg/normalorder package
- Convert standalone functions (Substitute, Rename, GetFree, IsFree)
  to receiver methods on concrete expression types
- Change Set from pointer receivers to value receivers
- Update all references from interpreter to runtime terminology

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-18 15:11:04 -05:00
parent e85cf7ceff
commit d715d38e9e
26 changed files with 200 additions and 196 deletions

13
pkg/runtime/events.go Normal file
View File

@@ -0,0 +1,13 @@
package runtime
// Event represents lifecycle events during interpretation.
type Event int
const (
// StartEvent is emitted before interpretation begins.
StartEvent Event = iota
// StepEvent is emitted after each interpretation step.
StepEvent
// StopEvent is emitted after interpretation completes.
StopEvent
)