GCC developers from multiple companies are beginning to reach agreement that it's time for Java to be turned off by default in GCC. The Java compiler support in GCC is in the form of GCJ, but it doesn't see much active development these days with more of the Java work happening in OpenJDK. Developers are looking to disable Java from the default GCC build process but to potentially replace it with the Go or ADA languages.
With the open-source Java toolchain development having shifted from GCJ to OpenJDK years ago, Jeff Law of Red Hat characters the current state of Java in GCC as "moved from active development into a deep maintenance mode." GCJ seldom sees new development work and its usage isn't great either, but as of right now it's still built by default when compiling GCC.
Jeff Law volleyed a mailing list thread on Friday entitled Replace Java with Go in default languages. So far GCC developers from various companies seem to be in agreement on dropping Java from the list of languages built by default in GCC. This proposal isn't about removing GCJ entirely from the GCC code-base but of the list of languages to build by default.
One of the only real benefits to developers right now with having Java by default is that building the Java compiler front-end stresses some GCC code in ways not experienced by the other language front-ends. But as a con, about 25% of the GCC bootstrap time is spent handling Java. If removing GCJ, the boostrap time is dramatically shorter.
Jeff Law has proposed Java by default be replaced by Google's Go language, since it's able to effectively stress some of the less-tested areas of code too but the Go development community is much more vibrant than Java. The Go bootstrapping and regression testing would still ensure good code quality coverage but be of more use to developers and end-users. GCC developers seem to be in agreement with this change too for adding Go, but one of the ADA developers has proposed the ADA front-end be now built by default since it also does a good job stressing the compiler.
We'll see what decisions end up coming, but it looks like Java is on its way out in GCC.
With the open-source Java toolchain development having shifted from GCJ to OpenJDK years ago, Jeff Law of Red Hat characters the current state of Java in GCC as "moved from active development into a deep maintenance mode." GCJ seldom sees new development work and its usage isn't great either, but as of right now it's still built by default when compiling GCC.
Jeff Law volleyed a mailing list thread on Friday entitled Replace Java with Go in default languages. So far GCC developers from various companies seem to be in agreement on dropping Java from the list of languages built by default in GCC. This proposal isn't about removing GCJ entirely from the GCC code-base but of the list of languages to build by default.
One of the only real benefits to developers right now with having Java by default is that building the Java compiler front-end stresses some GCC code in ways not experienced by the other language front-ends. But as a con, about 25% of the GCC bootstrap time is spent handling Java. If removing GCJ, the boostrap time is dramatically shorter.
Jeff Law has proposed Java by default be replaced by Google's Go language, since it's able to effectively stress some of the less-tested areas of code too but the Go development community is much more vibrant than Java. The Go bootstrapping and regression testing would still ensure good code quality coverage but be of more use to developers and end-users. GCC developers seem to be in agreement with this change too for adding Go, but one of the ADA developers has proposed the ADA front-end be now built by default since it also does a good job stressing the compiler.
We'll see what decisions end up coming, but it looks like Java is on its way out in GCC.
Comments
Post a Comment