Mirrors the layout of octive-lean: lakefile, justfile, gitignored
upstream clone, a top-level library module, and a Main entry point
that switches between REPL and file execution.
Module skeleton in GolangLean/:
Token, AST — real ports of go/token and go/ast
Scanner, Parser — stubs throwing notImpl, point at upstream
Value, Env, Error — runtime data shapes
Eval, Builtins, REPL — stubs that compile and run as a placeholder
PureEval, BigStep,
ValueEquiv — formal-semantics layer (mirroring octive-lean)
where cross-language proof eventually lives.
The proof layer is shaped identically to octive-lean's so that
theorems about Go semantics will share their form with the Octave
ones — that shared shape is the candidate for the future
cross-language core.
Upstream reference go-upstream/ (shallow clone of golang/go) is
gitignored.
24 lines
330 B
Makefile
24 lines
330 B
Makefile
# Common project tasks. Run `just` to list.
|
|
|
|
default:
|
|
@just --list
|
|
|
|
build:
|
|
lake build
|
|
|
|
repl:
|
|
lake exe golang-lean
|
|
|
|
run script:
|
|
lake exe golang-lean {{script}}
|
|
|
|
test:
|
|
lake build && lake exe corpus-check
|
|
|
|
update-corpus:
|
|
lake build && lake exe corpus-check --update
|
|
|
|
clean:
|
|
lake clean
|
|
|
|
fresh: clean build
|