a free ASN.1 compiler that produces Java classes from ASN.1 source code
a compiler for java assembly to class file. This compiler contains dead code detection and allow creating method, field and constructor from a java assembly fil
BNF for Java
BNF for Java is a parser/generator, or compiler-compiler. The parser reads your input text, or "terminals", specified by your BNF syntax. The parser features indefinate look-ahead and back-track. As the grammar parses your file, it builds a parse-tree which carries the content in the structure of your grammar. Then the parse-tree is traversed, driving the output generators the you wrote in Java. The compiler uses several files to control the project, so BNF for Java provides a Swing GUI to help you manage the BNF, Java, and XML files.
Cavalry is a Just-In-Time translator (compiler) for java bytecodes. It is written in Java and produces IA-32 Machine code.
Cetus is a compiler infrastructure for the source-to-source transformation of software programs. It currently supports ANSI C. Since its creation nearly 6 years ago, it has grown to over 71,000 lines of Java code, been made available publicly on the web, and has become a basis for several research projects.
CUP Parser Generator for Java
CUP Parser Generator for Java is a system for generating LALR parsers from simple specifications.
a clean patch to egcs targeting the Java Virtual Machine. Using this backend (and the jasmin assembler) you can compile C programs to java bytecode
Enhydra XMLC radically simplifies Web development by cleanly separating presentation from code. Enhydra XMLC parses an HTML file and creates a Java object that enables an application to change the HTML file's content at runtime, without regard for its formatting.
Fjavac is a compiler for a tiny functional subset of Java. It is implemented in OCaml using Generalized LR (GLR, aka Tomita parsing) parsing and Ordered Context-Free Grammar (OCFG). GLR and OCFG allow token scanning (lexing), grammar parsing (yaccing), type definitions, tree constructions, error reporting to be cleanly specified and automatically constructed.
a Java Profiler using BCEL and log4j. Its very fast because it inserts the needed instructions into the Bytecode of the classes. It can be used to find Hotspots in Java programs, libs and servlet environments simply every Java class
a programming language based on Functional Nets. Functional Nets combine key ideas of functional programming and Petri nets to yield a simple and general programming notation. They have their theoretical foundation in Join calculus
a portable, optimizing, ahead-of-time compiler for the Java Programming Language
guavac is an unofficial port of GuavaC, a freeware Java compiler to Visual C++ and Windows platform.
Janino is a compiler that reads a Java expression, block, or source file, and generates Java bytecode that is loaded and executed directly. Janino is not intended to be a development tool, but an embedded compiler for run-time compilation purposes, e.g. expression evaluators or "server pages" engines like JSP.
Java Grinder is a Java byte-code compiler similar to a JIT (just in time compiler) but instead of being a part of a JVM Java Grinder will compile classes into an assembly language text file.
JavaCC is a parser generator for use with Java applications. It has an integrated lexical analyzer generator, parser generator, and tree builder all in one package.
JNC (JavaNativeCompiler) is a Java to native compiler. It allows AOT (ahead of time) compilation of your Java applications. With JNC, you can create real standalone native binaries which will no longer depend on a JRE. This is especially useful when applications have to be deployed to end users. Native applications are easier to deploy since the end user doesn't need to worry about JRE dependency.
a replacement for the original java rmic compiler written in C++
a Java compiler that translates Java source files as defined in The Java Language Specification(Addison-Wesley, 1996) into the bytecoded instruction set and binary format defined in The Java Virtual MachineSpecification (Addison-Wesley, 1996). Unlike other compilers, Jikes accepts the Java language only as specified: notas a subset, variant, or superset
jLogo is a LOGO interpreter, featuring as many turtles as you want, color graphics, graphical text tools, and multichannel sound.
a java package containing a decompiler and an optimizer for java. This package is freely available under the GNU GPL
jRate (Java Real-Time Extension) is an extension of the GNU GCJ compiler front-end and runtime system which adds support for most of the features required by the Real-Time Specification for Java (RTSJ).
Jumbo is a staged compilation system for Java. It allows code fragments to be created, passed around, combined and eventually compiled to bytecode in an efficient and flexible manner.
a JAVA software project from DMS, providing a development environment for database applications using java, JDBC and SWING
a Java compiler based on the KOPI suite. KopiSusu improves on the 1.4F version of KOPI by following The Java Language Specification, Second Edition more closely. It also generates classfiles that are more compatible with the classfiles generated by Javac and Jikes in the area of inner classes
Manta is a native Java compiler. It compiles Java source codes to x86 executables.
Mork is a compiler tool with XML support. You specify some syntax (either by a traditional grammar or by a DTD) and Mork generates the appropriate parser. Mork is implemented in Java and generates Java class files.
a general purpose C language compiler that produces Java Byte Code to be run on any Java Virtual Machine
ObjectBox o:XML Compiler
ObjectBox o:XML Compiler is an o:XML compiler and interpretor written in pure Java. It implements The o:XML Programming Language specification v1.0, and provides a fully workable compile and runtime environment.
a small, fast and free compiler for an important superset of the Java programming language
Polyglot is a highly extensible compiler front end for the Java programming language. Using Polyglot, language extensions can be implemented without duplicating code from the framework itself. Polyglot has been used to implement domain-specific languages, to explore language design ideas, to simplify Java for pedagogical purposes, and for various code transformations such as optimization and fault injection. Polyglot has been used for both major and minor language extensions.
a packrat parser generator for C-like languages; though currently it supports only Java. Rats! has been explicitly designed so that grammars are concise and can be easily extended
Runtime Java Class Editor: enables the editing of any method at runtime, applying the changes to any combination of objects, such as an array, or a complete class. RJCE consists of a compiler javaprec and an IDE Runtime Object Modifier (ROM)
The Rootbeer GPU Compiler makes it easy to use Graphics Processing Units from within Java.
SableCC is an object-oriented framework that generates compilers (and interpreters) in the Java programming language. This framework is based on two fundamental design decisions. Firstly, the framework uses object-oriented techniques to automatically build a strictly-typed abstract syntax tree. Secondly, the framework generates tree-walker classes using an extended version of the visitor design pattern which enables the implementation of actions on the nodes of the abstract syntax tree using inheritance.
Scala is a general purpose programming language designed to express common programming patterns in a concise, elegant, and type-safe way. It smoothly integrates features of object-oriented and functional languages. It is also fully interoperable with Java.
SISC is an extensible Java based interpreter of the algorithmic language Scheme. SISC uses modern interpretation techniques, and handily outperforms all existing Java interpreters.
Soot is a Java optimization framework. It provides three intermediate representations for analyzing and transforming Java bytecode.
Tom is a pattern matching compiler developed at INRIA. It is particularly well-suited for programming various transformations on trees/terms and XML based documents. Its design follows our research on rule based languages (R3), and our experiences on the efficient compilation of ELAN developed by the Protheo group.
designed to be used as both a rapid prototyping tool for GUIs as well as a superior approach to GUI building, combining modules for Qt and Java Swing