6 ms·
RFC: Replace Java with Go in default languages
- jlgreco 13y agoIf GCJ is to be removed as a default, and GCC-Go added as one, (I don't really have the expertise to say if doing those things is merited) then they should be done as two discrete changes: "GCJ was removed as a default. Incidentally, GCC-Go was added." Trying to frame it as one discrete change is just going to get people needlessly emotional (if it hits the 'technews sphere' where editorializing and sensationalism reign supreme. Everyone seems level-headed in the mailing-list discussion for now.)
- kwantam 13y agoBut there is a technical justification for making both changes at once. Specifically, there is worry that removing GCJ and associated test suite will exercise fewer code paths in the collection, and the claim is that adding go will cover one obvious subset of these (-fnon-call-exceptions). If you read down the thread further, Ada has been suggested as a better replacement than Go to keep test coverage, since it builds on more machines and actually does a better job of exercising otherwise unused code paths.
- jlgreco 13y agoHmm, fair enough.
- sitkack 13y agoSince Ada is mutating more slowly I would advocate that it be included in GCC proper. Golang just doesn't make sense.
- RamiK 13y agoHonestly? The mailing list makes it sound like GCC is so convoluted it requires an entire front-end implementation as a test suit. I'm not saying it's true or anything. Just calling it like I see it...
- bebop 13y agoHow would you run a test suite without a programming language?
- deleted 13y ago[deleted]
- guelo 13y agoThis "default languages" issue seems to be mostly about testing the gcc backend. Looks like the consensus forming in that thread is that Ada would be better than Go for this purpose.
- justincormack 13y agoSounds like gcj should just be killed off. They clearly recognise the test suite takes too long to run, but it takes time to fix.
- atgreen 13y agoI worked on gcj many years ago, and while I suppose it is sad to see it fade from view, I think most of us really felt like we had achieved our goal when Sun created OpenJDK and adopted the license we created (GPL + Classpath Exception).
- pjmlp 13y agoI always thought the goal was to have a AOT compiler for Java. There are lots of those for Java, but OpenJDK isn't one of them.
- atgreen 13y agoAn AOT compiler was definitely the primary goal in the early years (my employer was contracted to deliver one for embedded developers). However, for a few of us at least, the main driver eventually became just to have a Free Software implementation of a high-performance Java-compatible toolchain and runtime for Linux. An AOT compiler based on GCC seemed like the best way to get there at the time. And for a while we were right. The GCJ compiled Eclipse was faster than any JIT-compiled Eclipse a few years back.
- pjmlp 13y agoThanks for the feedback. I still remember downloading Blackdown Java.
- aray 13y agoIan Lance Taylor (GCC Go maintainer) replies with a bunch of reasons why that wouldn't make sense[1]. Even as a golang fan, I have to agree with him that maybe it's not yet time for Go to be a default language. http://gcc.gnu.org/ml/gcc/2013-11/msg00155.html http://gcc.gnu.org/ml/gcc/2013-11/msg00155.html