Maker
proguard-assembler
Maker | proguard-assembler | |
---|---|---|
6 | 1 | |
43 | 63 | |
- | - | |
8.7 | 3.9 | |
8 days ago | 8 months ago | |
Java | Java | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Maker
-
Any news on the Classfile API?
If you want an alternative to ASM, try Cojen/Maker, which is designed to be much easier to use than any of the other class writing APIs, including the one proposed by JEP-8280389. Here's a comparison.
-
Jdk.Classfile Javadoc (in-development)
That's a lot right arrow operators just to implement a simple Hello World program (5). I can't even begin to imagine how difficult it might be to generate anything more interesting than this. Here's a comparison against a classfile API which is designed to be easy to use: https://github.com/cojen/Maker/wiki/JEP-8280389
- JEP draft: Classfile API
-
Show HN: I spent my vacation writing a modern JVM assembler
For the code generation phase, it might be easier to bypass emitting a text-based assembly format and just use the ASM library directly. If you want something easier, I wrote a code generation library specifically for that purpose: https://github.com/cojen/Maker It also includes an example "Mini-C" language compiler.
- Show HN: Cojen/Maker – lightweight Java class generator designed for ease of use
proguard-assembler
-
Show HN: I spent my vacation writing a modern JVM assembler
Nice project! At Guardsquare, we have a similar project: https://github.com/Guardsquare/proguard-assembler
One of the things we use it for is testing: we can craft specific bytecode sequences that we want to test; for example, it's useful to test cases we've seen in the wild (e.g. obfuscated code) or to create a test that doesn't rely on a specific compiler/version.
An example of using the assembler from a ProGuard unit test https://github.com/Guardsquare/proguard/blob/master/base/src...
What are some alternatives?
obfuscator - A java obfuscator (GUI)
jasm - A JVM assembler for the modern age
JavaParser - Java 1-18 Parser and Abstract Syntax Tree for Java with advanced analysis functionalities.
bf - An optimizing brainf*ck compiler with multiple target backends: JVM, smali, dex, C, LLVM IR, ARM, WASM, JavaScript and Lox.
proguard-core - Library to read, write, analyze, and process java bytecode
Grasmin - Groovy AST Transformation to allow writing Jasmin code (JVM bytecode) directly on groovy files
jdk-sandbox - JDK Committers Sandbox
Javassist - Java bytecode engineering toolkit
proguard - ProGuard, Java optimizer and obfuscator
golo-lang - Golo - a lightweight dynamic language for the JVM.
klox - A Kotlin implementation of lox with a JVM backend built using ProGuardCORE