•        0

GCJ is a portable, optimizing, ahead-of-time compiler for the Java Programming Language. It can compile Java source code to Java bytecode (class files) or directly to native machine code, and Java bytecode to native machine code. Compiled applications are linked with the GCJ runtime, libgcj, which provides the core class libraries, a garbage collector, and a bytecode interpreter. libgcj can dynamically load and interpret class files, resulting in mixed compiled/interpreted applications. GCJ can also be configured as a cross-compiler, suitable for embedded systems programming.

GCJ support on Windows (Cygwin and MinGW) targets has been enhanced with a number of bugfixes, and the option to build libgcj in DLL form for dynamic runtime linking. Support for JNI, as well as CNI, a more efficient and easier-to-use (though non-standard) API for writing Java methods in C++.




comments powered by Disqus

Related Projects

GNU Classpath - Mother of most of the VM

GNU Classpath provides core class libraries for use with virtual machines and compilers for the java programming language. GNU Classpath 1.0 will be fully compatible with the 1.1 and 1.2 API specifications, in addition to having significant compatibility with the 1.3, 1.4, 1.5 and 1.6 APIs.


Valgrind is an award-winning instrumentation framework for building dynamic analysis tools. There are Valgrind tools that can automatically detect many memory management and threading bugs, and profile your programs in detail. You can also use Valgrind to build new tools.


Beaver is a LALR compiler compiler for Java that uses several techniques to generate very fast parsers.

CoffeeScript - Little language that compiles into JavaScript

CoffeeScript is a little language that compiles into JavaScript. It's just JavaScript, the code compiles one-to-one into the equivalent JS, and there is no interpretation at runtime. You can use any existing JavaScript library seamlessly from CoffeeScript (and vice-versa). The compiled output is readable and pretty-printed, will work in every JavaScript runtime, and tends to run as fast or faster than the equivalent handwritten JavaScript.

Simple-build-tool - A build tool for Scala

sbt is a build tool for Scala, Java, and more. It can generate documentation with scaladoc, Accurate incremental recompilation using information extracted from the compiler, Parallel task execution, including parallel test execution, Continuous compilation and testing with triggered execution and lot more.

emscripten - Emscripten: An LLVM-to-JavaScript Compiler

Emscripten: An LLVM-to-JavaScript Compiler

Open RVC-CAL Compiler

The Open RVC-CAL Compiler (Orcc) is a compiler under BSD license for the RVC-CAL dataflow programming language. Please consult the project homepage at http://orcc.sourceforge.net for more information.

TypeScript - Superset of JavaScript that compiles to clean JavaScript output

TypeScript is a language for application-scale JavaScript. TypeScript adds optional types, classes, and modules to JavaScript. TypeScript supports tools for large-scale JavaScript applications for any browser, for any host, on any OS. TypeScript compiles to readable, standards-based JavaScript


Java-based BURG (code emitter generator), used by Adobe ASC 2.0 and Apache Falcon ActionScript compilers.

Pyjs - Python Web Application Framework

Pyjs is a Rich Internet Application (RIA) Development Platform for both Web and Desktop. It contains a Python-to-Javascript compiler, an AJAX framework and a Widget Set API. Pyjs started life as a Python port of Google Web Toolkit (GWT), the Java-to-Javascript compiler. Additional to the web framework, they have Desktop version of Pyjs called Pyjs Desktop. It allows the same web application source code to be executed as a standalone desktop application instead of being stuck in a Web browser.