ASM - Java bytecode manipulation and analysis framework

  •        0

ASM is an all purpose Java bytecode manipulation and analysis framework. It can be used to modify existing classes or dynamically generate classes, directly in binary form. Provided common transformations and analysis algorithms allow to easily assemble custom complex transformations and code analysis tools.

ASM offer similar functionality as other bytecode frameworks, but it is focused on simplicity of use and performance. Because it was designed and implemented to be as small and as fast as possible, it makes it very attractive for using in dynamic systems.



comments powered by Disqus

Related Projects

NHibernate - object-relational mapper for .NET

NHibernate is a mature, open source object-relational mapper for the .NET framework. NHibernate is a port of Hibernate Core for Java to the .NET Framework. It handles persisting plain .NET objects to and from an underlying relational database.

Zend - PHP application stack

Zend Server is a complete, enterprise-ready Web Application Server for running and managing PHP applications that require a high level of reliability, performance and security. It boosts application performane using byte code optimizer. It provides application stack for PHP application. It also provide support to connect to Java applications.

Cojen - Java bytecode generator

Moved to GitHub: Dynamic Java bytecode generation and disassembly tools. A builder allows code to be generated more easily, instead of having to select exact instructions. Utility classes are provided which demonstrate the code generator and loader.


MIDletPascal is specifically suited for development of J2ME midlets. It's compiler translates Pascal source code directly into Java microedition bytecode.

muParser - A fast math parser library

muParser is a cross platform math parser library. It can be extended with user defined functions with an unlimited number of parameters, postfix-, infix- and binary operators. It compiles the formula into bytecode in order to speed up evaluation.

Lua - Embeddable Scripting Language.

Lua is a powerful, fast, lightweight, embeddable scripting language. Lua combines simple procedural syntax with powerful data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, runs by interpreting bytecode for a register-based virtual machine, and has automatic memory management with incremental garbage collection, making it ideal for configuration, scripting, and rapid prototyping.

QuickMAN - Fast Mandelbrot Generator

QuickMAN is a Mandelbrot fractal generator with multicore support. ASM-optimized code reaches billions of iterations per second on fast CPUs. Features an easy-to-use GUI, realtime pan/zoom, multiple palettes, image logging, and saving in PNG format.


Kokpit-db is an integrated monitoring, comparison and performance analysis software for Oracle databases. It can compare and monitor versions 8i, 9i, 10g and 11g. Supports standby databases and ASM instances. GUI and command line interfaces available

Decode PeopleCode

Decodes PeopleCode (the proprietary language in Oracle's PeopleSoft ERP software) from bytecode to text. Stores the code in text files, or commits it to a Subversion or Git version control system. Can also extract PeopleCode and SQL text from PeopleTools .xml project files, and does three-way merging of PeopleCode (to reapply customizations during an upgrade).

ASMETA: a tool set for the ASM

A set of tools for Abstract State Machines (ASM) based on their Metamodel (AsmM)