Skip to content
/ ssa Public
forked from opencompl/lean-mlir

A minimal development of SSA theory

License

Notifications You must be signed in to change notification settings

Hughshine/ssa

 
 

Repository files navigation

SSA

Theory of static single assignment development in the Lean proof assistant.

Directory Structure

This directory structure is heavily inspired by the Research Codebase Manifesto.

  • SSA/Core: Libraries for reusable components. Code is reviewed to engineering standards. Code is tested, covered by continuous integration, and should never be broken. Very low tolerance for tech debt.
    • Breaking changes to core code should be accompanied by fixes to affected project code. The project owner should assist in identifying potential breakage. No need to fix experimental code.
  • SSA/Projects. A top-level folder for each major effort (rough criteria: a project represents 1-6 months of work).
    • Code is reviewed for correctness. Testing is recommended but optional, as is continuous integration.
    • No cross-project dependencies. If you need code from a different project, either go through the effort of polishing the code into core, or clone the code.
  • SSA/Experimental. Anything goes. Recommend namespacing by time (e.g. a new directory every month).
    • Rubber-stamp approvals. Code review is optional and comments may be ignored without justification. Do not plug this into continuous integration.
    • The goal of this directory is to create a safe space for researchers so that they do not need to hide their work. By passively observing research code “in the wild”, engineers can understand research pain points.
  • related-work/: Top-level folder for research dependencies.

About

A minimal development of SSA theory

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • MLIR 72.5%
  • Lean 25.2%
  • TeX 1.8%
  • Python 0.3%
  • Shell 0.1%
  • Dockerfile 0.1%