ObjectWeb ASM

ASM
Original author(s)Eric Bruneton
Developer(s)OW2
Initial release2002; 22 years ago (2002)
Stable release
9.3 / April 3, 2022; 2 years ago (2022-04-03)
Repository
Written inJava
Operating systemCross-platform
Typebytecode Engineering Library
LicenseBSD License
Websiteasm.ow2.io Edit this at Wikidata

The ASM library is a project of the OW2 consortium. It provides a simple API for decomposing, modifying, and recomposing binary Java classes (i.e. bytecode). The project was originally conceived and developed by Eric Bruneton. ASM is Java-centric at present, and does not currently have a backend that exposes other bytecode implementations (such as .NET bytecode, Python bytecode, etc.).

The name "ASM" is not an acronym: it is just a reference to the asm keyword of C, which allows some functions to be implemented in assembly language.[1]

  1. ^ Bruneton, Éric; Lenglet, Romain; Coupaye, Thierry (2002). "ASM: a code manipulation tool to implement adaptable systems". FranceTélécom R&D, DTL/ASR. CiteSeerX 10.1.1.117.5769. Retrieved August 23, 2023.