After a program has been thrown into the world in binary form, it can boomerang back as source code. The Boomerang reverse engineering framework is the first general native executable decompiler available to the public.
Java decompiler written in C++ aimed to decompile Java 6.0 (and below) class files. The intention of the decompiler is to generate source files using as much information provided in the class file as possible.