Quantcast
Channel: Transcendental Technical Travails
Browsing all 22 articles
Browse latest View live

Image may be NSFW.
Clik here to view.

Things to come

For some time, I've been writing notes on what I would blog about, were I to have a blog. Well, I have a blog now. Given the blog name, it should come as no surprise that forthcoming posts will bore...

View Article



Image may be NSFW.
Clik here to view.

Impacts of multi-core processing on programming language design

Within the next couple of years, all modern desktop computers will have multiple CPUs, thanks to multi-core packaging. This doesn't matter very much in the context of programming languages though until...

View Article

Image may be NSFW.
Clik here to view.

Transactional Memory: Panacea or Confounder?

There is a very nice review article on the subject of transactional memory (TM) as applied to programming languages in ACM Queue, Vol. 4 No. 10. The article does a reasonable job of describing the...

View Article

Image may be NSFW.
Clik here to view.

Deprogramming the LALR(1) Bias

Look around for LR(1) parser generators, and you will primarily find LALR(1) parser generators. There seems to be an unspoken assumption that LALR(1) is somehow better than LR(1), but look at the...

View Article

Image may be NSFW.
Clik here to view.

Parser generation algorithms of a bygone era

In my most recent post, I talked about the disadvantages of LALR parser generation as compared to the more general LR method. Although I now believe even more fervently that LR parser generation is the...

View Article


Image may be NSFW.
Clik here to view.

More forgotten parser generation algorithms

When writing a grammar specification that is input to a parser generator, the most natural way of describing the grammar is often ambiguous. There are two solutions: 1) rewrite the grammar to be less...

View Article

Image may be NSFW.
Clik here to view.

Parsing.py parser generator is now available

The parser generator I implemented has been quite stable for over a month now. It has the potential to be of use to others, so I am making it publicly available. Parsing.py is a stand-alone pure Python...

View Article

Image may be NSFW.
Clik here to view.

A simple Parsing-based parser example

As requested by several people, I have uploaded a simple example parser that uses the Parsing module. It is pretty self explanatory, so I encourage you to take a look at it, run it, and experiment with...

View Article


Image may be NSFW.
Clik here to view.

Why the overwhelming silence?

I uploaded an updated version of the Parsing module. The changes are minor, which is a good indicator of the code's maturity when you consider that I continue to use it heavily to create new parsers....

View Article


Image may be NSFW.
Clik here to view.

Unicode strings for Lyken

Lyken, a programming language I am currently developing, uses Unicode for all strings. Lyken is just one of many languages that has to overcome a set of design challenges associated with Unicode,...

View Article

Image may be NSFW.
Clik here to view.

Tagged unboxed floating point numbers

Several modern programming language implementations employ a representation of object reference slots that is self-describing, in order to facilitate run-time type checks and automatic garbage...

View Article

Image may be NSFW.
Clik here to view.

Fixed-precision (n choose k) and overflow

I recently found myself needing to compute (n choose k) with 64-bit integers. Recall that (n choose k) is equal to n!/[k!(n-k)!]. Mathematically, this is not a difficult computation, but when...

View Article

Image may be NSFW.
Clik here to view.

Firefox fragmentation?

As Firefox 3 nears release, some of its developers are taking a close look at memory fragmentation issues. There is good information over at pavlov.net that I won't repeat here. One recurring theme...

View Article


Image may be NSFW.
Clik here to view.

Perceived jemalloc memory footprint

For the past couple of months I have been working with the Mozilla folks to integrate jemalloc into Firefox. This past week, Stuart has been doing lots of performance testing to make sure jemalloc is...

View Article

Image may be NSFW.
Clik here to view.

Migrating from Subversion to Mercurial

jemalloc has settled into Firefox pretty nicely at this point, so after having mostly worked on Lyken for a few weeks while waiting for the dust to settle, I'm planning to start working on adding the...

View Article


Image may be NSFW.
Clik here to view.

Using Mercurial patch queues for daily development

I recently watched a video (slides) of Bryan O'Sullivan speaking about Mercurial. The presentation was mainly a (great) introduction to Mercurial, but I was surprised to learn that Mercurial patch...

View Article

Image may be NSFW.
Clik here to view.

Left-leaning red-black trees are hard to implement

Back in 2002, I needed balanced trees for a project I was working on, so I used the description and pseudo-code in Introduction to Algorithms to implement red-black trees. I vaguely recall spending...

View Article


Image may be NSFW.
Clik here to view.

Overzealous use of my red-black tree hammer

When Firefox 3 was released, jemalloc was left disabled for the OS X version, essentially because OS X's malloc implementation did as good a job as jemalloc (in terms of both speed and memory usage),...

View Article

Image may be NSFW.
Clik here to view.

Treaps versus red-black trees

In a previous blog entry, I discussed the difficulties associated with implementing left-leaning red-black trees. A couple of readers commented that treaps might be superior to red-black trees, and as...

View Article

Image may be NSFW.
Clik here to view.

Stand-alone jemalloc for Linux

I have received numerous requests for a version of jemalloc that is ported to various operating systems. My plan has long been to create a jemalloc distribution that supports *BSD, Linux, Solaris, OS...

View Article
Browsing all 22 articles
Browse latest View live


Latest Images