Hi,
While not a production use of Termite, my recent reading of the sources led me to write our Butterfly system in Common Lisp. My initial attempts at using Termite let to this, as its performance seemed sporadic (more often failing than succeeding -- can't be sure why). But it became increasingly clear that in order to track down the difficulty, I would have to delve deeper into the threading mechanism of Gambit. I'd love to do that someday, but not now.
Butterfly takes a similar approach to Termite, offering both local and remote spawning of tasks across the network. In the case of both Butterfly and Termite, my own opinion is that we have a Mutex / Locking mechanism that serves perfectly well for simple thread coordination needs. Anything requiring more than one lock should probably be placed into a spawned server task. Erlang carries this to extremes, inserting even the most trivial things into autonomous threads. No doubt that helps its robustness, but we have more expensive thread switching mechanisms than Erlang, and it just seems like overkill. Your opinions could differ on this...
Our Butterfly will be used to control an interconnected series of millimeter-wave transceivers carrying data at rates 10-40 Gbps for wireless "ubiquitous computing".
Dr. David McClain Sr. VP, Embedded Systems Asyrmatos Inc. Boston & Tucson phone: 520-529-2437 cell: 520-390-3995 web: www.asyrmatos.com email: dbm@asyrmatos.com
On Apr 29, 2008, at 4:58 PM, Marc Feeley wrote:
On 29-Apr-08, at 2:13 PM, Mikael More wrote:
Hi!
I'm interested in hearing what uses you and others have had of termite, in production as well as experimentally. What is your general experience? Is it mature for production use? If not, then what needs to be improved? If so, what are the areas that would benefit from further development?
By what reasons would you or would you not go with Erlang, or any other environment, to fill the same purposes? If any other environment, then what environment?
Interesting question! I'm not aware of "production use" of Termite but if someone knows please speak up!
I would like to ask you a question... what are you trying to do with Termite or Erlang, and why do you have a specific interest in Termite?
One of the nice things about Gambit is that it can be used to implement Termite-like embedded languages relatively easily. All the infrastructure is there (networking, object serialization, efficient threads). If you want to see how, look at the example in examples/ distr-comp particularly examples/distr-comp/dc.scm . If that's not exactly what you want, go ahead and change it. Try that with Erlang!
Marc
Gambit-list mailing list Gambit-list@iro.umontreal.ca https://webmail.iro.umontreal.ca/mailman/listinfo/gambit-list