About The Contest
The first ever Olympiad of Misguided Geeks contest at Worse Than Failure (or OMGWTF for short) is a new kind of programming contest. Readers are invited to be creative with devising a calculator with the craziest code they can write. One lucky and potentially insane winner will get either a brand new MacBook Pro or comparable Sony VAIO laptop.
Entry #100342: ExtensibleCalc
by James Ng
It's the year 3000, and the Planet Express team have come across an ancient computer while digging around old New York. (Cue Futurama theme song).
As Fry and Leela manage to power up the computer, they're amazed at the "Windows XP" logo. They try some programs, including a long lost copy of the Extensible Calculator. They're surprised at how... the calculator seems to produce the wrong results. They bring the computer back to the Professor, who writes and loses his notes on the wierd old Mathematics. His notes get sucked into a Fry (Hawking) Hole and land on the desk of the OMGWTF Software Consultants Inc.
Back in the year 2007, the software consultants at OMGWTF Software Consultants decide to make their contracted calculator be compliant all the way to the year 3000. So they decided to ensure that when the rules of mathematics are rewritten sometime amongst the alien takeovers, the Extensible Calculator will still work. After all, we've seen the Y2k issue, and we never expected that 30 year old software would be used beyond the end of the decade they were written in. So it's reasonable to expect that software may last 993 more years.
Alas, the problem of deadlines prevented the first software drop (at midnight May 14, 2007, EST) prevented the implementation of the New Math as contained in the scroll.
However, all's not lost, for the OMGWTF Software Consultants team have done something unusual. They have included plenty of examples of how to write new calculating modules, and even documented the API. So someone at Planet Express can write the necessary code.
Some of the other features are some interesting test cases, for there are two ways to do the test cases. Oh, and for those who adapted the Skeleton Solution for their entries, you can easily add your code as a module using the CalcSkeleton project. (We will assimilate you. Resistance is futile). And should calculation ever get too hard, a chain module lets you chain together calculation modules. So one module can handle 1+1, while another one handles 1+2, and so on.
This is perhaps one of the few entries that comes with 10 DLLs as part of the default build.