Thursday, August 21st, 2008
One of the funny little benefits of switching the Mozilla Developer Center from MediaWiki to Deki is that page names can contain actual underscores. The big headline on the JS_EvaluateScript page always used to say “JS EvaluateScript”.
Well, not anymore! Since Deki has an HTTP API, I was able to write a Python script [...]
Monday, August 18th, 2008
Thanks to Ben Hearsum and Ted Mielczarek, the Try server has a cool new feature: you can now try out some changes without manually creating and uploading a patch. Just hg commit or hg qrefresh your work, and then
hg push -f ssh://hg.mozilla.org/try/
The Try server will kick off Linux, Windows, and [...]
Wednesday, February 6th, 2008
Brad Lassey recently vented some understandable frustration with Mercurial, the new distributed version control system we’re using for Mozilla 2 development.
I sympathize with Brad, especially because almost all of the comments seem to be along the lines of “No no, you’re mistaken, Mercurial makes things easier, not harder” or “Well, you should have done X,” [...]
Tuesday, October 30th, 2007
This is cool (if you care how malloc() works, always a big if), but it requires a lot of background.
Background
One very common way to implement malloc() is to use size classes and freelists. If you already know all about this, skip this section.
Here’s a sample malloc() that uses size classes and freelists. (Note [...]
Tuesday, October 23rd, 2007
I just posted to mozilla.dev.platform about Mozilla 2 platform changes. In short: Mercurial is coming, Tamarin is coming, and we’re going to give garbage collection a chance to prove itself.
Tuesday, September 4th, 2007
Want to help the Mozilla project? Here’s something anyone with a web browser can help with.
A lot of technical documents still live on www.mozilla.org. This is bad for a lot of reasons, but fundamentally it’s just the wrong place for them. developer.mozilla.org is their proper home. The pages will be much [...]
Thursday, August 9th, 2007
Maybe you’re curious about how the MMgc garbage collector works. Here’s my rambling attempt to explain it on IRC this morning (edited for clarity and layout).
(Note: The MMgc documentation is another good place to start, if you already know all about the C++ stack and heap.)
peter: this “scanning the C stack” is a mystery [...]
Wednesday, August 8th, 2007
For the past 4 weeks or so, Ed Lee and I have been incrementally nudging the actionmonkey repository toward a state where we can switch over from SpiderMonkey’s existing memory management routines to Tamarin’s memory management library, MMgc.
Today some key patches for ActionMonkey Stage 0 were posted on bug 391211. These patches delete the [...]
ActionMonkey dwells on the frontier of Mozilla. Its source code lives in a Mercurial repository, not CVS. There is no Tinderbox and no Bonsai. Worse, the usual build instructions don’t quite work in ActionMonkey-land, and until now, just building it has involved a lot of guesswork.
Today, some kind-hearted genius updated the ActionMonkey [...]
Thursday, July 19th, 2007
Stage 0 of the ActionMonkey project is underway. Read all about it. Mardak and I are replacing SpiderMonkey’s garbage collector with the new Tamarin garbage collector, which is called MMgc (for MacroMedia garbage collector—nobody ever renames anything :).
We’ve spent the past month almost entirely in preparation for this day. I’ve read a [...]