[J@D] - Thoughts

Posted by JoshDreamland on June 28, 2009, 9:05 p.m.

No, ENIGMA's not canceled. I titled the blog with my initials instead because these thoughts relate to a more general topic.

I've been working on what I've called ENIGMA's CFile parser for the last couple days. It is a 900 line (plus a couple thousand for the expression evaluator) parser that is designed to give me feedback on what is included from the C++ library.

I was talking about it in a channel on freenode as I was running some numbers to make sure my expression evaluator treated them the same way as GCC does.

Now, C++ programmers are generally highly pessimistic, and overall quite "assholish". But it bothers me; the amount of sheer pessimism I was met with.

Basically, if you aren't using someone else's tool to help you code your parser, you aren't fit to write one.

That not only offended me (and slightly discouraged me for a little while), but it reminded me of my feelings on this whole information-age business.

The way I see it, people have stopped thinking for themselves. It's become so convenient to assume that everything is done perfectly and the best way possible that people are blindly building on eachothers' work. The C++ programmer mindset is that every good process or algorithm has already been invented, perfected, and implemented in the Standard Template Library. (Or, in the Visual C++ programmer's mindset, has already been discovered by Microsoft, implemented in Visual Studio, and perfected in C#.NET).

Frankly, I'm disgusted by it. I like to think I have good ideas too. I can do with find and replace in ten minutes what people can't perfect with a token-tree based parser in… a week or two, before they give up. Or with Antlr (a parser generator) in any amount of time.

I was just laughing at a certain someone who fucked up pretty bad with Antlr. To where things I never even thought could stop working failed miserably.

Do I blame the information age for that?

I suppose I do. That's the reason we have people that can't understand basic syntax trying to form parsers with someone else's tool.

And everyone who doesn't use said parser tool is stupid and evil.

Did anyone really say that to me? No. That's Gene's thing.

But in so many words, that is what they told me.

I'm having a good success with my CFile parser even now. The only concept that is still scraping at the back of my mind (towards the right side of the back. Starting to get sore.) is how I'm going to react to "::".

( And in fact, I think it just came to me… Identifiers in my parser aren't handled until the parser reaches "a good stopping place" [ meaning symbols ; , : { and } ], so I'll just watch for the :: token and keep a second scope variable handy. )

In short, I think it's a pretty sad day when your work is unacceptable and immediately judged as worthless, solely on the basis that you did not use someone else's tool.

Comments

MahFreenAmeh 14 years, 10 months ago

TEH

AMISH.

miky 14 years, 8 months ago

This would be a good rant, except that your parser method really was stupid, and you don't understand the reason you use parser generators, and you're being really arrogant.

JoshDreamland 14 years, 7 months ago

As I've said multiple times, feel free to show us how it's done, Mr. Circumstantial Ad Hominem.