As I hinted in a comment on a previous entry, I've finished deploying boost::spirit::lex in the Epoch compiler. My hope was that, by reducing byte-level backtracking, I would realize a substantial speed gain in the parser. It seemed like a logical enough assumption, and so I gave it a shot.
The init…
The init…
When I last left a status update here, I had the new Epoch compiler running on my test case in right around 18.5 milliseconds. For reference, when I started this compiler rewrite, parse times were around 10 seconds. Yes, seconds.
Obviously, a 500-fold speed improvement is nothing to sneeze at, and m…
Obviously, a 500-fold speed improvement is nothing to sneeze at, and m…
Recently, my major undertaking (outside of work of course) has involved rewriting the Epoch compiler. I'm doing this for a few reasons, but the main one is performance; the Release 11 compilation model involves using boost::spirit::classic to parse the input code 3-4 times, progressively elaboratin…
Release 10 of Epoch was a big deal, because it represented a complete overhaul of the language implementation - pretty much everything was redone, from the parser grammars on up to the standard library implementation. It took a long time, dramatically cut back the number of features that still work…
I have eschewed sleep to get some tweaking done on the Era IDE. Specifically, I refined some of the syntax highlighting, and implemented syntax folding in the lexer. This basically lets you collapse sections of code intelligently, based on curly braces. Goes by the name of "code outlining" in Visua…
I've finally closed out the last bugs on the Epoch Release 11 task list, and I'm down to just polishing up the package and getting some last-minute goodies together for the distribution.
One of the highlights is that the Era IDE prototype now supports loading and saving files. Era is written entirel…
One of the highlights is that the Era IDE prototype now supports loading and saving files. Era is written entirel…
Ethanol and nicotine, when combined in sufficient quantities with sleep deprivation, adrenaline, and obsessive work habits, tend to produce interesting results. Here's one from earlier this evening, which I felt compelled to jot down and then figured I'd open up for discussion.
The Nature of Time
Thi…
The Nature of Time
Thi…
Posted up a new Scribbling by Apoch today; this one hails from a long time ago in a journal far, far away... err, actually, from this post.
This Scribbling involves selectively enabling or disabling pieces of C++ code based on whether or not a type conversion is legal. Be warned: here there be templ…
This Scribbling involves selectively enabling or disabling pieces of C++ code based on whether or not a type conversion is legal. Be warned: here there be templ…
I've added a new project to the Scribblings by Apoch page. This time, it's a small utility for monitoring the activity on a Windows file system, or any selected subset thereof. The code is fairly simple and straightforward but makes use of some nasty concepts in Windows, such as overlapped I/O and …
Advertisement
Popular Blogs
Advertisement