[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

DesertFox 14 years, 10 months ago

I have the exact opposite mindset. If I didn't write it, I usually don't want to use it. I'm trying to learn to use other people's libraries and stuff, but I'm the type of guy who likes to look under the hood, to know the guts of a program at a very basic level.

AKA I like doing things *my* way.

MahFreenAmeh 14 years, 10 months ago

its my way my way or da highway

Arcalyth 14 years, 10 months ago

I agree with DF. I'm like that too.

JoshDreamland 14 years, 10 months ago

Me for sure. Dave'll tell you that much. I refuse to use an engine without knowing exactly how it works on the inside. So, er, as for Game Maker…

Kaz 14 years, 10 months ago

I feel exactly the same, I always hated using scripts by other people, even if I understood them 100%. I'd rather solve the problem myself.

Why do you think the majority of us(on 64D) feel this way?

SixWinged 14 years, 10 months ago

Quote:
I feel exactly the same, I always hated using scripts by other people, even if I understood them 100%. I'd rather solve the problem myself.
I'd use scripts to work out methods of achieving the goal, then I'd write my own script that did the same thing because I'm pretty sure I have OCD for using other people's work.

[deleted user] 14 years, 10 months ago

c++ is pretty bad. people are just used to it so i guess 'it'll do'. no need to write anything higher level, or more portable or easier to use because we already spent so long learning how to do it.

fuck those guys learn it yourself

PY 14 years, 10 months ago

Well, they're right, of course.

I mean, the guys who made those tools used someone else's wo… wait shit.

JoshDreamland 14 years, 10 months ago

No, they were slowly built upon by 100 people that were good at it. And then the assumption comes, LOOK! A HUNDRED REALLY SMART PEOPLE HAVE DONE WORK ON THIS! CLEARLY, IT IS THE BEST WAY!

But then when someone like me comes along and decides to do with eight variables and find-and-replace what they did with an overcomplicated tree, they get all pissy.

Course, they didn't know what method I was going to use. They just arrogantly assumed the moron-friendly way was the only way. (No offense to those who program things like Antlr. I'm glad someone is making such tool, I just feel I can do it better.)

s 14 years, 10 months ago

What's this whole low v high stuff?

I'll use a tool if the tool is useful. I want to do what I want to do, not what I need to do to do what I need to do

So I guess I'll be the one to object and say I only do what I have to do?

DIY leads to ASM, and I prefer to toy with ASM only to know how I'm going to make Python generate it