Monthly Archives: December 2013

A Pardon for Alan Turing

This probably shouldn’t be allowed to pass by without comment on this site.

Of course, on one level, this is great news for friends, family and the Computer Science community as a whole.  It might also be seen as a small step towards righting a larger injustice (although it equally might not).  On the other hand, a pardon is really a ‘let-off’ with a slapped wrist; “naughty boy but we forgive you”.

What it certainly doesn’t do is:

  1. Accept that the prosecution should never have been brought,
  2. Accept that the law was wrong and should never have been in force, or
  3. Offer anything for the tens of thousands of others, also victimised in the same way.

It’s doubtful that any of these will ever come to pass …

A Christmas Cracker Algorithm!

T’is the season to be jolly … and silly.  So here’s a seasonal and jolly silly example of why it’s hard to implement high-level languages efficiently.  Liberties are taken with the hardware/software relationship in some parts of the analogy but, hey, it’s Christmas!

Let’s write an algorithm for pulling a Christmas cracker …

  • Buy a box of crackers and bring home
  • Take a cracker out of the box
  • Get two people to hold an end each
  • Pull in opposite directions
  • Have fun with what’s inside
  • Clear up the mess

That’s probably going to be enough detail for most people (and more than enough for some).  However, if you’re the one that’s been entrusted with the initial purchase or the child told to do the clearing up, you might want a bit more to go on; what’s actually involved in that bit?  And who are the ‘two people’ anyway?  OK then, if needed, we can easily expand this a touch …

Continue reading