webMathematica and loss of context
- To: mathgroup at smc.vnet.net
- Subject: [mg51214] webMathematica and loss of context
- From: flip phillips <flip at skidmore.edu>
- Date: Fri, 8 Oct 2004 02:55:19 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
I have a strange situation that is clearly pilot error and was wondering if this was something others have seen before / could identify a place to look for a solution. I have a package called "Human`". Human is a MathLink executable (Fortran of all things :) and a bunch of .m wrapper and support routines. (It isn't important here, but it is a very complete human physiological model I am helping a fellow faculty migrate to Mathematica) It is put together in traditional WRI recommended style. There is an init.m with DefinePackage, etc. I'm skeptical the MathLink component is causing any problem, but include a reference to it for completeness. I have included it as part of a webMMa 2.1 page (generated via the excellent webMMa author palette) via Needs["Human`"] The first time through everything works as expected. The executable (called MHuman) launches, the MathLink communication takes place, answers are returned, joy is obtained. The -second- time the page is evaluated there is a seeming problem. All of the Human routines have now lost their space in the global context and don't evaluate. I verified this by embedding a call to Names["Human`*"] within the page. The first time through, Names returns all of the un-context-qualified names, i.e. HumanRun, HumanCondition, HumanKill (I know, I know...) and all works as advertised... The second time through, however, the call to Names returns Human`Being`HumanRun, Human`Being`HumanCondition, etc... and calls to HumanRun return unevaluated. Restarting the kernel through the KernelMonitor allows me to run it once again, etc. Is there somewhere obvious I am missing?