The Bag of Holding

Profile
Bellevue, WA
A bipolar guy in a pressure-cooker industry
1,455 comments
44 followers
628 entries
Advertisement
ApochPiQ
September 21, 2011
Update on the Release 12 compiler
I wrote up some notes on the Epoch R12 compiler here. Figured I'd repost the link since most people probably aren't on the Epoch site pressing F5 all day ;-)
1,018 views
ApochPiQ
September 16, 2011
Epoch Error Handling, Part 2
One excellent comment on the previous entry on Epoch's error handling philosophy observed that the design really looks an awful lot like exceptions, and doesn't do much for the orthogonal separation of the four points of error handling I enumerated at the top of that post.

Let's revisit those points…
1,287 views
ApochPiQ
September 15, 2011
Error handling in Epoch
As I gear up towards rewriting the Epoch compiler in Epoch, instead of in C++, I've found myself running up against a handful of peripheral issues that affect the ability to write real code in Epoch in the first place.

One of these issues relates to error handling. In my opinion, most languages conf…
1,699 views
ApochPiQ
September 12, 2011
Epoch in the near future
I have to admit that after the whole "let's make the Epoch compiler 1000 times faster" adventure, I kind of burned out on Epoch for a little while, and haven't touched it a lot since. All the fun, exciting, sexy work in optimization was done, and "all" that was left was a giant pile of tedious reim…
1,642 views
ApochPiQ
September 05, 2011
Become a Good Programmer in Six Really Hard Steps

One of the more popular topics here on the GDNet forums goes something like this:

"Hi, I just [bought a computer | wrote a simple game | discovered a game engine] and I want to know where to go from here. I'd like to [accomplish some particular goal] eventually. What do I need to learn to get t…

197,952 views
ApochPiQ
August 23, 2011
Threads are Cancer
Computing today faces a serious problem.

Hardware has reached a point where the bulk of performance increases are coming not via major innovation in the fundamental design of processing systems, but rather through parallelism. Instead of increasing clock speeds, decreasing die sizes, changing instru…
4,446 views
ApochPiQ
July 23, 2011
Epoch Compiler Optimization: Recap
Full writeup here.


And now to not think about this for a while. Brain hurts.
1,545 views
Advertisement
ApochPiQ
July 22, 2011
Mischief Managed
I learned an interesting lesson last night in over-reliance on optimizing compilers.

Deep in the core of the Epoch grammar is a rule that looks for generalized tokens from the lexer. This rule is designed to match user-defined identifiers like variable and function names - as opposed to reserved ide…
1,162 views
ApochPiQ
July 21, 2011
Grammar tweaking for fun and profit
I finally killed off most of the remaining dynamic memory allocations in my parser. There's still a few lurking in the internals of boost::spirit::lex (it supports "fast" parser backtracking by buffering tokens on the fly) but they're not a huge chunk of the runtime anymore, so I'm not terribly wor…
1,085 views
ApochPiQ
July 20, 2011
Improving memory allocation patterns in the Epoch compiler
As part of my ongoing effort to make the Epoch compiler idiotically fast, I've turned my attention to one of the primary killers: dynamic memory allocations.

Part of this is unavoidable, since dynamic memory has to be allocated when constructing the parse tree. But for some reason, I kept seeing rea…
1,198 views
Advertisement

Popular Blogs

shawnhar
Generalist
101 Entries
13 Followers
klg71
Generalist
53 Entries
1 Followers
ApochPiQ
Generalist
628 Entries
44 Followers
15 Entries
13 Followers
johnhattan
Programmer
1,277 Entries
50 Followers
Advertisement