[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, 9 months ago

I agree. People don't think for themselves now - they use Google and the internet to think for them. I've been saying this for years now :D

JoshDreamland 14 years, 9 months ago

Well, I think it's one thing to use google as your knowledge base, stealing the opinions of others and being a total puppet to no particular person yourself. But it's another thing entirely to ignorantly assume that if it isn't the most commonly used method around, it's worthless.

If it were up to them, we'd never progress as a race. Seems so deep a statement it's cheesy, but think about it. What I'm seeing here is the fact that new ideas are frowned upon.

That is in itself the worst thing that could happen to us.

Now, I suppose, being less conceited, I should look at the big picture. They probably had no idea how smart I was, as they knew nothing about me. So even if I really am as up for the task as I believe I am, they didn't know it.

But still. If Einstein lived in today's age, I think they'd still have laughed him right out of there.

IsmAvatar 14 years, 9 months ago

I've trained you well… *wipes tear from eye*

On a more serious note, this is what I'm always saying about low level programming. Not that high level programming isn't a good thing - it's a great thing, it means people who have great ideas don't need to know what a struct is in order to make their idea a reality, and thus improves the quality of life for us.

But low level is extremely important and so easily taken for granted now. We're the people who write the higher level languages. We're the ones that get to work when stuff breaks.

But we also know that things are most efficient when written by hand using low level.

Unfortunately, C++ developers have the higher-level mindset. It comes with the language. I guess they get spoiled with string concatenation. If you really want to fit it, join the C crowd.

JoshDreamland 14 years, 9 months ago

Agreed. But y'know, I just thought that as long as unsigned volatile long long (*a[5])(int,int,char,short,long); was valid syntax in your language, you'd be open to new processes and methods, and in this case a brand new way of looking at things.

But damn was I wrong.

Polystyrene Man 14 years, 9 months ago

Are objects done yet?

JoshDreamland 14 years, 9 months ago

God dammit, poly, they've been done since the first release >___<"

AND YOU'RE STILL ASKING.

…XD

To be fair, I'm implementing a new system for them this release. So… I guess they're not. …Damn.

Arcalyth 14 years, 9 months ago

I really, really hate that about programmers in general. With that mindset, we'll never make progress. SOMEONE had to write those tools.

MahFreenAmeh 14 years, 9 months ago

I don't have anything to say to this, but I logged in specifically to comment on it. I already said what I had in MSN, so, yeah.

JoshDreamland 14 years, 9 months ago

Arc–

Yeah. That's what bothers me. I guess whoever publishes first and causes the most displacement gets the attention.

Gary–

Yep.

MahFreenAmeh 14 years, 9 months ago

All the young dudes carry a noose.