Greetings, I have a question for the community in general, and Marc in particular. As some of you may know the Pediatric Anesthesia Research team at UBC uses Gambit as part of their LambdaNative framework (http://www.lambdanative.org/) to develop medical software. Some of our applications are mission and safety critical as they control drug delivery to patients (doi: 10.1145/2635648.2635651), or provide decision support during triage of pregnant women by community health workers (doi: 10.1109/JBHI.2014.2301156). Hence, we are trying to identify which version of Gambit to use, with the main deciding factor being reliability and stability.
While the main LambdaNative branch uses 4.7.9 - we are considering updating to 4.8.5 once we figure out how to integrated the revised tracing into our exception handler/logger, we use much older versions for our production-quality applications: Specifically, we use 4.7.2 for our mobile Android apps, as there were issues with both the ##thread-heartbeat! and other hard-to-reproduce crashes in very large Android apps with later Gambit versions. For our closed-loop system on Linux we reverted back even further at 4.7.0. Here, our attempt to update to 4.7.9 resulted in weeks of debugging after the application segfaulted during clinical pilot testing, having passed weeks of both manual and automated system tests in the lab. Unfortunately, we were never to identify the exact crash location, but all we could show was that the crash did not originate from our (user-level) code but the Gambit infrastructure code.
I appreciate that the project's current goals are more along the line of making a more universal output language processor, which is a laudable endeavor e.g. for improved in-browser support. However, I would appreciate some guidance in helping us chose a "stable" version without potentially wasting man-months in testing (and failing) to identify such a version ourselves.
Many Thanks, Matthias