Wahoo! We're done with all things wedding related (with the exception of the honeymoon, now that I think about it). We had our MN reception on Saturday at my parent's house in Sartell, and it went off without a hitch. We had about 60 people show up throughout the day. Even though the invite said 1-4, we were entertaining guests from about 10am until 10pm, which is about what I figured it would be. When you have a family as large as mine... ;-) I brought Lis back to the airport today since she has to get back to work
June 2008 Archives
A little-discussed fact about the Operator_Convert method is that it actually performs two different (but similar) conversion operations. Understanding what each of those conversion operations do will help you to better understand when to use the feature, and why it may not work in some instances. The first type of conversion that Operator_Convert supports is a "convert-from" operation. This is where you are converting an existing class instance from its existing to into a different type. These operations look like: Function Operator_Convert() as SomeType When you use a convert-from operator, the compiler doesn't really have to do any work. Whenever
A recent revival of an old thread brought up the discussion about REALbasic's debugger, and how poorly Zone Alarm (amongst other personal packet filters) handles debugging sessions. I figured that a better understanding of debuggers might make it more apparent as to why this happens. Most developer tools are only designed to run on a single platform, which means that the tool can make use of all sorts of great OS facilities for features like debugging. Even when you see a cross platform dev tool (like Code Warrior), it's still a rewrite from one platform to the next. REALbasic, on
A bug report drifted into my muddled field of vision today that would make for a wonderful blog posting. The reporter was wondering what was so ambiguous about the following code: Sub Test( foo as ListBox, bar() as String ) Sub Test( foo as ListBox, bar as Variant ) dim s() as String dim v as Variant Test( Nil, s ) Test( Nil, v ) If you compile this sort of a project, you'll notice that the compiler barks at you about ambiguous method overloading. That's because Nil counts as a conversion -- we have to convert Nil into an
Sorry about the silence on the blog for the past while. Elissa brought me home a gift: a wonderful head cold (or perhaps flu, we've not figured it out yet). My sore throat can be worked around by not talking, but the really hard part to deal with has been the distractions. I'll be chugging along on a project, and every few minutes my mind drifts off into wondering when my throat will stop hurting. And then I sneezed. Oh dear god, that was excruciating. So yeah, I hope to have some interesting posts up in the future (before I
We've had several users request that we deprecate the Collection class since it's ancient, and trivial to implement yourself. It's not exactly high on my list of things to deprecate because it works, and doesn't have a very high maintenance burden. But, it would be a very interesting test case for a deprecation strategy I've had. My idea has been to take some of the simpler functionality that we deprecate and replace it with example projects. When it comes time to remove the deprecated feature, we could have a process automatically add the example project to your existing project. Voila!
Just a gentle reminder to plugin authors: the names you pick for your shared libraries do matter! You should always pick a descriptive name for your shared libraries on all three platforms, which will help ensure that the name is unique. You see, when an application is compiled that uses a plugin, the compiler simply reuses the shared library name when writing the plugin out to disk. So if you have multiple plugins that share the same shared library name, you can run into problems. I spent some time looking into a bug report where there were *five* plugins whose