On Mon, 12 Jul 2010, at 10:28:36 [GMT -0700] (which was 19:28 where I live)
you wrote about: ' Confusing class names in antlr-3.2.jar'
I would also love to have a C++ runtime for Antlr 3.
At this moment we are using Antlr 2.7.6 for our product (a DotNet Compiler ) and would love to
switch to Antlr3.
But we have tons of support code that is all in C++ and I would hate to rewrite all of that.
We have also considered to move from C++ to C# but I am afraid we will lose too much speed when we do so
(and people are compiling really large projects with our product, so speed is essential).
How much time would it cost to write a C++ runtime for Antlr 3 do you think ?
--
Robert van der Hulst
| Well to be honest with you, if you need documentation to write a target runtime, then you probably are not the right person to write it. I will definitely write a C++ runtime for v4 but I just have not had the time available to write a C++ runtime and as no one seems to be willing to ‘pay’ for the time ;-), then I presume that the demand isn’t as high as people think. Besides, it isn’t difficult to use the C runtime and in terms of performance, it will almost always be the case that the C runtime will win. Interestingly, I used to work in development at McDonnell Douglas – there wasn’t any good documentation for those operating systems either – you either learned everything on the fly or did not work in development. J Jim From: [email protected] [mailto:[email protected]] On Behalf Of George Shannon Sent: Sunday, July 11, 2010 8:50 AM To: Loring Craymer; Ramanand Mandayam; [email protected]; [email protected] Subject: Re: [antlr-dev] Confusing class names in antlr-3.2.jar It appears that the reason for some confusion is because the documentation is not complete in certain key areas, so to speak. For example, I tried to create a C++ runtime for ANTLR, and got to the point where I was ready to test, the final step being creating the StringTemplate for the C++ runtime. This final step, i.e. StringTemplate, was a disaster. There is hardly any documentation available. I was eventually in the mode of trying to create the C++ version using pure trial and error. I asked Terry about it and the answer was that there is not enough demand for documentation to justify the investment (that is, no excellent resources like the books he has written for ANTLR). I assumed StringTemplate documentation was available since I already had Terry’s books on ANTLR. I was wrong. So frankly I dropped the project. While there is a C runtime available, having a C++ runtime would have been awesome for us, and perhaps a few others (one person was very interested), BUT, without some serious documentation it ain’t gonna happen. Open source is great, but without serious documentation in ALL the right places it is difficult to adopt; “difficult” being equivalent to “expensive” in terms of labor and time/lost opportunity. Please be patient while I digress. Many years ago I worked as an engineer at what was then McDonnell Douglas (now Boeing). I worked space programs – hypersonic space vehicles, single-stage-to-orbit stuff to replace the Space Shuttle. People in the industry had a saying: “No bucks, no Buck Rogers.” What really makes those birds fly is: funding. I am suspicious that, in some ways, the same may apply to things like documentation (StringTemplate) – no bucks (or free labor), then no documentation (and no Buck Rogers). I make these comments as a small business startup trying to compete with the big dogs with deep pockets. Please note that I’m not criticizing Terry or any of the devoted people working on ANTLR and making it an excellent open source product. They are working hard within constraints. This is just my two cents worth on how the product adds value – to take it to the next level may not involve ONLY product development (i.e., new or improved functionality). It may involve simply providing more documentation to help make it easy to learn and ADOPT the product in innovative ways. Best Regards, George Shannon From: [email protected] [mailto:[email protected]] On Behalf Of Loring Craymer Sent: Sunday, July 11, 2010 2:35 AM To: Ramanand Mandayam; [email protected] Cc: [email protected] Subject: Re: [antlr-dev] Confusing class names in antlr-3.2.jar ANTLR 3 is written in ANTLR 2, so the jar contains both ANTLR 2 under antlr.* and ANTLR 3 under org.antlr.*. --Loring From: Ramanand Mandayam <[email protected]> To: [email protected] Cc: [email protected] Sent: Sat, July 10, 2010 11:25:22 PM Subject: [antlr-dev] Confusing class names in antlr-3.2.jar Hi I downloaded the latest release (antlr-3.2.jar) of the runtime jar files and tried to generate a lexer. I ran into some errors which I was looking into and found this strange behavior. If I invoke the main method in the class 'antlr.Tool' as shown in the command line below, java -cp /usr/local/antlr/antlr-3.2.jar antlr.Tool mylexer.g the tool assumes that I want to use ANTLR v2.7.7 However, if I invoke teh main method in the class 'org.antlr.Tool' as shown in the command line below, java -cp /usr/local/antlr/antlr-3.2.jar org.antlr.Tool mylexer.g the tool assumes that I want to use ANTLR v3.2 This is very confusing and I have not yet been able to identify any portion of the documentation that describes this difference. Can we perhaps make this distinction clear in either the README or some other equivalent documentation describing the command line? Cheers Ramanand |
_______________________________________________ antlr-dev mailing list [email protected] http://www.antlr.org/mailman/listinfo/antlr-dev
