This post showed up on the forums the other day, but I think it requires some more time in the spotlight -- I am very happy about all of the new hires we've been making recently. So I'd like to personally introduce you to the people we've hired in the past six months. Nathan Regener is our new engineering manager. He's in charge of the builds, and so that makes him in charge of all the little pieces and parts that go into the builds as well. His job consists of making sure programmers are getting stuff done on time
April 2008 Archives
For the past few weeks, I've been working in a new job. I still work for REAL Software, of course. However, my role within the company has changed. I now carry two complementary (not to be confused with complimentary!) new titles. I'm the lead compiler architect, as well as the lead programmer. So what do these sundry titles actually mean? As lead compiler architect, I am in charge of language direction, design and implementation. New compiler features, compiler-related bug fixes, etc are all things which eventually land on my plate. Before you start to fret that I'm going to totally
So I found a rather interesting code generator bug in XCode that happens when converting a 64-bit floating point value to an unsigned 32-bit integer. Here's a good example of what I'm talking about in REALbasic: dim d as Double = -1.0 dim u as UInt32 = d MsgBox Str( u ) If you run that code, it will display 0, and not 0xFFFFFFFF like you'd expect! In fact, any negative number will still display 0. But this bug isn't limited to just the REALbasic compiler. You can see it in a straight-up C application too: double d = -1.0;
So I had an interesting thing happen, which I should have seen coming when I posted my wedding photos -- I didn't realize just how many REALbasic users are on Facebook! ;-) But it forced me to do some interesting evaluations I've been able to skirt around before. How much do I mix work with personal life? With my blog, it's more of a "push" model -- if I want everyone to know about personal stuff, such as my wedding, then I can push the content out to my blog and anyone can see it. But Facebook is different in
We finally got our wedding photos back (all 1100+ of them!), and I picked out my favorite 180 to put online. If you're interested in seeing the pictures, I put them up on Facebook for the whole world to see (or ignore, since most people probably aren't *that* interested in our wedding). One Two Three Enjoy!
I've seen this question come up several times since the announcement of the compiler feature. And I've seen several valiant attempts at answering the question in a general case. Generally, these attempts fall into one of two categories: 1) If you have to ask, you probably don't need it 2) When you need it, you'll know Very deep, eh? ;-) Well, I'm going to take a stab at giving a general and specific response. But I have to admit that I also agree with #1 and #2 above. I'm simply explaining away the corollary question of: "but if I won't
DWM is a great new Vista technology that allows you to create live thumbnails of application windows (among other things). If you use Vista, you've probably noticed DWM in action with the task bar: These thumbnails are a live view of what's happening in the window, and are quite a neat way to visually see what's happening "behind the scenes" so to speak. However, they have some very unfortunate drawbacks which are really annoying. For starters -- you can only display a thumbnail for a top-level window. This totally destroys them for the use I had in mind, as for
One of the uses for introspection is as a way to build a serialize and unserialize library so that you can take an arbitrary object, write it out to disk (or the wire, etc) and be able to reconstruct that exact object later. In REALbasic 2008r1, you can serialize the object to disk but you cannot unserialize. There are a few key components that are missing before that becomes possible -- and that's what I'd like to discuss today. For starters, you'd have to be able to create an object instance. This sounds simple, but it happens to have some
One question that comes up with relative frequency is: why does ConsoleApplication.UnhandledException behave differently from Application.UnhandledException? Obviously, they both tell you when an exception hasn't been handled anywhere in the call chain. But they differ in that one has a return value, and the other does not. Why is that? In the case of a GUI application, the event has a boolean return value. If you return true, then the unhandled event doesn't terminate the application. Instead, control is returned to the main event loop and the application can continue to run. In the case of a console application, the