feat(frontend): Refactor function #234
No reviewers
Labels
No labels
category
bug
category
chore
category
doc
category
feature
category
optimization
category
organization
part/Delation
part/Elab
part/Environment
part/FFI
part/Frontend
part/Goal
part/REPL
part/Serial
priority
high
priority
irrelevant
priority
low
priority
medium
priority
pending-measurement
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Blocks
#213 🖇️ Articulation and Syntax Processing
aniva/Pantograph
Reference: aniva/Pantograph#234
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "frontend/refactor"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This PR adds a new command,
frontend.refactor
, to the REPL. This is a data cleaning feature, intended to convert code that is unsuitable for the search view to a ready-made search target.The view of Pantograph and Project No. 3 are that declarations (i.e.
lemma
,def
, etc.) are a post-factum construction of the search process and not a part of a search process itself. For this reason, any proof search starts from one or a few targets, with their coupling explicitly declared.Many data points in PutnamBench, and research level questions in mathematics, involves constructing an object conforming to certain standards. A mathematician may put
sorry
s as placeholders. The refactor function's first and foremost goal is to group thesesorrys
into coupling groups so they can be searched in lockstep.doc/repl.md
18edccd4d0InfoTree
printing c287d14f86For example,
and then run
tomograph
on it:lake exe tomograph dissect Examples/Refactor.lean
FrontendM
-based monad 52e4ff9a3fNameSet
for new constants aa71c2037bfrontend.refactor
command 8419f975bf