EN FR
EN FR


Section: New Software and Platforms

Coccinelle

Keywords: Code quality - Evolution - Infrastructure software

Functional Description

Coccinelle is a tool for C code program matching and transformation that has been developed by members of the Whisper team over the last 10 years [8]. Coccinelle is widely used by the Linux kernel developer community and for other C software projects. Over the last three years, Coccinelle has benefited from the support of an engineer from the SED. Major improvements in 2016 include support for Python 3, independence from a no-longer-supported interface between Python and OCaml, better support for parallelism, and better support for integrating arbitrary predicates into the matching process. These features significantly improve performance and improve the uniformity of the rule specification language, thus providing a better experience for users. Coccinelle is at the foundation of much of our research work, including the ANR ITrans project, and these improvements will enhance and facilitate our research, accordingly.

Coccinelle is publicly available under GPLv2. In 2016, Julia Lawall presented Coccinelle in an invited keynote at the Linux Security Summit (http://events.linuxfoundation.org/events/archive/2016/linux-security-summit) and at a “birds of a feather” session at Linuxcon Europe (http://events.linuxfoundation.org/events/LinuxCon-europe).