Tuesday, May 17, 2011

Some ICE design tidbits nonetheless

To avoid sharing no real info about the upcoming changes while remaining silent on the details and "secrets", I thought I'd share certain aspects of the new stuff for those interested in the pending developments surrounding ICE (Integrated Computation Engine) and Cool Calc:
  • Either users or programmers will be able to extend the library of supported operations (an operation is a special function, such as your favorite forumula or a built-in function like sine(), etc.).  Two primary extension methods are provided -- human-readable text formulae and programming extensions to the core ICEOperation library.
  • Data types are extensible also, meaning that both the simple, scalar types are supported (like integers and decimal/floating point numbers) and also arbitrary data types, such as your favorite list, matrix, data record, or other information-containing 'object'.
  • ICE is being designed and documented to eventually be sold separately as a math library for software development, so other engineers can use it in their own application products (and optionally extend it for their own purposes).
  • Multiple performance-vs-rich-features models are supported, giving programming users the ability to choose based on their application requirements.
  • Future growth into supporting math-education functions, such as equation solution, prime factorization, graphing, etc., is possible, should there be a need for those in a product version down the road.
  • ICE will be usable from multiple applications (both MJ App Factory's and others') and also will run on multiple OS platforms, like Windows, Windows 7 Phone, and multiple web browsers.
  • ICE will provide the functionality and extensibility options that allow Cool Calc to eventually be a competitive scientific/engineering-calculator product in its own right.  This will of course be a long and extensive process of product enhancement, testing, certification, and support.
That's probably enough tidbits for now.  If anyone is interested to learn more, just send me a note.

Progress on ICE

Since I last posted a couple of weeks ago, I've discarded some major design concepts in favor of better ones.  As they say, the proof is in the pudding, and in this case, you don't find out how good your design is until it makes it off the page and onto the screen.  In short, I've rethought some of the fundamental aspects of the ICE engine, and I believe what I have now is much better, both for my own app development purposes and for customers.  Sorry to be so vague, but I'm not much really into sharing internal technology details on a public forum.

Anyway, I think things are looking up, and I still believe the first fruits of my recent efforts will be showing up this next month, in the form of the scientific mode of Cool Calc.  Other stuff will appear a bit later, such as web/Windows versions, other apps like Cool Register, special-function pages for things like loan calculations, unit conversions, etc.  I'll keep you up to date as I have something to share.