May 2006 - Don Box's Spoutlet

Don Box's Spoutlet

Syndication

  • IanG on Continuations

    Several people have pointed me to Ian's reaction . I'm hoping some seasiders out there comments on how Seaside addresses Ian's concerns. Coincidentally, I also just got done reviewing Dharma's first chapter and anxiously await the day I can point to it...
  • Bracha and Bray on Continuations

    http://www.tbray.org/ongoing/When/200x/2006/05/19/Continuations-and-GUIs and http://blogs.sun.com/roller/page/gbracha?entry=will_continuations_continue Gilad is correct that it's a non-trivial feature for a VM, especially one that does code access security...
  • VB9 and Atom

    A lot of my friends have been giving me grief over my recent attempts to show how C# is getting features from high-brow languages. In an attempt to appeal to the blue collar programmer in all of us, I thought I'd cleanse the palette with a little VB9...
  • Cats and Dogs Marrying,

    Titanium Thinkpads, Black Macintosh Laptops , … the world may indeed be coming to an end!
  • On The Road Again - Canada and Transactions

    I haven't done any road work since PDC 05. I'm happy to say I'm headed for Ottawa for PLDI/ACM Transact and am giving the opening remarks at a workshop on transactional memory workloads and am looking forward to hanging out a few more days to go to the...
  • Eval !=> (Code == Data)

    I've noticed a lot of people misinterpreting my discussion about code and data . Specifically, people are confusing the ability to evaluate a string containing an expression with the ability to have the language front end present an expression as parsed...
  • Code and Data in C#

    I've noticed that at least one really smart guy doesn't get how LINQ works despite my best attempts to explain . Let me try again a bit more slowly this time, dissecting a simple program that elaborates on the code==data theme in both Scheme and C# 3...
  • New drop of C# 3.0/LINQ

    http://www.microsoft.com/downloads/details.aspx?familyid=1e902c21-340c-4d13-9f04-70eb5e3dceea&displaylang=en Favorite new feature: LambdaExpression.Compile Expression<Func<int, int>> expr = a => a + 3; Console.WriteLine(expr); // prints...
  • Sowmy Rules

    I've always felt that the heart of Indigo is its contract system. Architecturally, the contract system is our "type system" in Indigo and gives us a runtime-neutral way to think about both structural and behavioral types. We have two kinds of contracts...
  • Sapphire in Steel: Ruby in VS

    Again, via Larry O'Brien, I just found Steel and am no longer editing Ruby in (gasp) notepad.
  • Ruby, War, and Peace

    Larry O' Brien chimes in on Patrick Logan's missive that due to my personal blog entry , that my employer has already lost the war. First, let me state the obvious that I blog as myself and my posts in no way represent the official voice of Microsoft...
  • Block Perf Questions Redux

    Both James Robertson and Vincent Foley-Bourgon responded to my question about block performance in Ruby . In looking at both of their posts, I have a feeling I didn't word my question well enough. Here's my original question: What's the performance penalty...
  • Ruby, Blocks, CPS and call/cc

    It's been a weekend of Ruby at Chez Box (ok, actually it's been a weekend of pollen and allergy meds but that's another story). What I'm wondering about this evening is about how various mechanisms get used in the wild and how the ruby runtime handles...
  • Ruby, DSLs and Scheme's null-environment

    In looking at the eval-based DSL stuff, I can't help but wonder if there's a mechanism through which the DSL designer can effectively prohibit all symbols except a specific small handful. I've seen BlankSlate, but I don't see how the technique of removing...
  • &quot;DSL&quot; mechanisms in Ruby

    I'm trying to get the zen of building DSLs using Ruby. After reading a dozen or so pieces referenced by my favorite search engine, I have a feeling I'm still not quite getting it. I grok the various forms of eval (eval, module_eval and instance_eval)...