Common Lisp 96.56%C 0.59%Shell 2.65%Makefile 0.08%C++ 0.12%
software-evolution's Introduction
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}
}