About the area
In the Automated Software Engineering team, we apply the latest research advances to create tools for source code transformation and synthesis. We integrate them into IDEs and DevSecOps workflows to support collaborative, human/automated software development.
Benefits
- Source code transformation and synthesis tools help achieve faster development of better software via: automating mundane software development tasks, software hardening and diversification, cross-language migration, and helping stress-test DevSecOps tooling.
- Our Mnemosyne framework allows every programmer to access cutting edge research in automated software development, right in their IDE.
Technologies
- The Software Evolution Library together with tree-sitter allows us to parse and transform source code representations from a variety of languages, including C/C++, Rust, Python, Java, JavaScript/TypeScript, and Go. We use evolutionary computation techniques to search the space of alternate implementations of software projects, supporting applications from optimization to automated program repair.
- Mnemosyne‘s Argot protocol allows integration of programmer assistant tools into multiple IDEs via extensions of the Language Server Protocol.