This repository has been archived by the owner. It is now read-only.
evolution of extant software
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
doc
examples
software
test
utility
.gitignore
COPYING
NOTES
README
package.lisp
software-evolution-test.asd
software-evolution-utility.asd
software-evolution.asd
software-evolution.lisp

README

                               Archived
        Development moved to https://github.com/GrammaTech/sel
                               Archived

                          SOFTWARE EVOLUTION
     programmatic modification and evaluation of extant software

The SOFTWARE EVOLUTION library enables the programmatic modification
and evaluation of extant software.

A common interface abstracts over multiple types of software objects
including abstract syntax trees parsed from source code, LLVM IR,
compiled assembler, and linked ELF binaries.  Mutation and evaluation
methods are implemented on top of this interface supporting Search
Based Software Engineering (SBSE) techniques.

This library has been used to optimize benchmark programs (see
https://github.com/eschulte/goa) and to patch vulnerabilities in
closed source binaries (see http://eschulte.github.io/netgear-repair).

See the info manual for more information.  Available in the doc/
directory and at http://eschulte.github.io/software-evolution.

Please cite Eric Schulte's Ph.D. dissertation when you publish results
that you have obtained with the SOFTWARE EVOLUTION library.

  @phdthesis{schulte2014dissertation,
    author  = {Eric Schulte},
    title   = {Neutral Networks of Real-World Programs and their
                    Application to Automated Software Evolution},
    school  = {University of New Mexico},
    address = {Albuquerque, USA},
    month   = {July},
    year    = {2014},
    note    = {https://cs.unm.edu/~eschulte/dissertation}
  }