GettingStarted GettingStartedWeb SampleTasks SimpleLazyFirstOrderLanguage
A supercompiler is a program transformer that traces the possible generalized histories of computation by the source program, and builds an equivalent target program, whose structure is, in a sense, "simpler" than the structure of the source program. The simplification is achieved by removing certain "redundant" actions from the source program.
The goal of the project is to implement in Scala a positive supercompiler that is very close to the one described in papers by M.H.Sørensen, R.Glück, and N.D.Jones.
The current version of spsc can be run as a command-line application or accessed as a web-application.
spsc deals with programs written in a simple lazy first-order functional language (SLL). The intended operational semantics of the language is normal-order graph reduction to weak head normal form.
News
2009, June The paper SPSC: Суперкомпилятор на языке Scala
2009, May The paper SPSC: a Simple Supercompiler in Scala is accepted for PU’09.