I've been reworking my old APL+Win prototype called TABULA, best described as a scientific calculator for intelligent laypersons. It's now in a fit state to be exhibited and I'd like someone else to play with it, please.
Dowload the app (scripts only: no proper installer yet, sorry) at: http://www.jsoftware.com/jwiki/IanClark/TABULA Completely rewriting it in J has allowed major simplifications. Plus the possibility of porting to palmtops and shipping it as a free download, to underpin a planned range of pop-science books on topics like climate science, exobiology and hard sf. This gives a flavour of what you can do with it. Here's something I cobbled-up quickly tonight without any effort... [From the info slot in the user file:] "Fat stores energy in your body. It's a very efficient store: a pound of fat yields a lot of energy. Which has implications if you try burning it off with exercise. This leads to an intriguing question: How many pounds of ugly fat would it take to launch an elephant into low earth orbit? Assume low-earth orbit just grazes the surface, so the total distance travelled in one orbital period is roughly the earth's circumference. If we divide that by the orbital period, that will give us the velocity of the elephant, from which we can get the kinetic energy, which is the minimum energy needed to launch it. We thus have two energy quantities which we divide and force 1 into the dividend, holding everything we don't want to change. The result is approx 1557 lb of fat. This is 21% of the body weight of the elephant, a not unreasonable estimate of its fat content. So maybe an elephant carries round with it enough fat which (burnt efficiently) would launch it into low-earth orbit. Waddya know!" The resulting table looks like this: 1 1 eq.r equatorial radius of earth! 2 1 ea.g g:earth gravity unit! 3 168.853 min p:orbital period 4 4.00752e7 m circumference of earth at equator 5 3955.63 m/s velocity in orbit 6 3400 kg Average weight of African elephant! 7 2.65999e10 J energy to launch an elephant 8 1.70805e7 J/lb energy per pound of fat! 9 1557.33 lb amount of fat 10 2.65999e10 J energy in ugly fat 11 1 J/J force equality 12~ 20.7763 % the proportion of elephant's weight ...best viewed in a proportional font, e.g. pasting into the J session. A feature you can't see here (but you can on the wiki) is a pictorial "plug-board" of arrows down the left hand side which shows what items feed into what. By all means check the calculations: it will show up bugs. I'd also welcome crits on the example concept. For another worked example, see: http://www.jsoftware.com/jwiki/TABULA/ChurchClock Comments: The UI is naff. VisiCalc's was better. It's there just to support development of the two underlying engines: calculation (CAL) and units-conversion (UU). I'm given to understand J version 8 will allow a far better UI to be developed than I can manage with the wd interface. I've been on the point of implementing everything using isigraph. Bear in mind that I want it cross-platform to include palmtops, hence no menus, no freaky grid, everything on buttons. There's a bottom bank of buttons which will be user-customisable. I'd be grateful if someone could download it and get it working on a virgin machine: my J installation has been heavily customised and there may be a definition or two missing from the scripts. I haven't tested it on Windows. I use an iMac now. Also I'd like to beg the J community for advice on the "retrofit" feature (used above with reference to item 11). That's best conducted in the Programming forum, I guess. "Retrofit" lets you type a new value into a computed item, and it retrofits supporting values into its ancestor items. You set "holds" on the ancestors you don't want to change. A feature resembling this was called "break-back" in Adaytum Planning (AP), formerly Kunzle Planning System, which became Cognos Planning -- and I don't know what it's called now that IBM has bought Cognos Inc. The "break-back" algorithm is proprietary and closely-guarded. I have to stress I'm using quite a different one, based on altogether different principles. Alas it's not as good as I'd like yet. But I'm working on a better one. Am I reinventing the wheel with all this? I guess I mean the open-source wheel? Ian ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
