feat: new engine format

This commit is contained in:
2026-02-07 00:12:50 -05:00
parent 8b80cea32b
commit 1d94fa70ff
11 changed files with 45 additions and 100 deletions

View File

@@ -1,11 +1,12 @@
// Package engine defines a general process of reducing a lambda calculus
// expression.
package engine
type Engine[T any] interface {
Load() Process[T]
}
// A Process handles the reduction of a
type Process[T any] interface {
Get() (T, error)
Set(T) error
Step(int) bool
}
// An Engine is an object that handles
type Engine[T any] = func(T) (Process[T], error)