I have decided (tentatively at least) to rebrand my various open source efforts under the name Congo. In line with that grand plan, JavaCC (21) would be rechristened as CongoCC and the major revamp/rewrite of FreeMarker that I have in mind will be known as Congo Templates.
So, why "Congo"?
Well, I guess one could ask perfectly well: why not? The bottom line is that it has a nice ring to it and nobody has proposed a clearly better name! The "Congo Compiler Compiler" or "CongoCC" does have a nice alliteration to it. And it has the same relationship with Central Africa as the Java programming language has with Indonesia. Namely, none at all! (About the same relationship that "Microsoft" has with erectile dysfunction, come to think of it...)
In any case, I have really been feeling that there is a need to move away from the Java-related product naming. With the huge amount of work that Vinay Sajip has done over the last half year, we are really on the verge of presenting the tool as cross-language. So the name "JavaCC 21" will soon make little sense. In any case, positioning the tool as a more advanced, improved version of the crufty old legacy JavaCC has simply not been very successful. The legacy JavaCC still has a significant user base, but, for whatever psycho-social reasons, it is practically impossible to get them to look at an improved version. In any case, pushing a product with that Java-related name in Python or Microsoft land is probably even less promising. So I've been thinking that there is a need for a new name. And this is what I came up with. Well, I like it and everybody I've run this by seems to like it. And certainly, nobody has proposed anything significantly better.
Now, since there is no need for the naming to have any relationship with the product, I suppose there is no onus on me to explain where the name came from. But I might as well recount how the name occurred to me. Since the final product of a parser is typically an abstract syntax tree, I was thinking about names that relate to trees. It seems that I am not the first person to think along these lines. For example, a parser generator tool that I have had in mind to take a good look at is called tree-sitter with a logotype of a treehouse.
Cute, eh? Well, maybe somebody will donate a nice logo to this project!
So, there I was, thinking about trees and this led to forests. We all know (I think) that the world's largest forest (by far) is the Amazon rainforest. However, that seems like it would be a quite ill-advised choice of name for obvious reasons. But once I was thinking along these lines, I asked myself what is the world's second largest forest. I had to look that up and Wikipedia told me that the second largest forest in the world is the Congo rainforest. And this is how I started thinking about the alliterative name of "Congo Compiler Compiler".
So I checked whether the domain name congocc.org was available. And it was. So I duly registered it. Now, as for this discussion forum, I put it up for a variety of reasons. Well, for one thing, after registering the domain name, I felt I should put up some content there of some sort. (Which is probably the main reason I'm writing this initial post!) Now, the project already had a discussion forum, using the well known Discourse forum software at https://parsers.org. However I have had nothing but trouble with Discourse. A lot of people seem to like it but it has always seemed like an over-engineered piece of crap to me. This Flarum thing I'm using now already seems much more promising. I even like it better aesthetically. By the way, if you find the default font size too small (as I do!) just hit Ctrl-+ a couple of times and you should be okay.
So, there it is. If anybody has any thoughts about all this, feel free to chime in. Or just write a post to say hi. It's kinda lonely here at the moment.