[gephex-devel] Scheduling
JS
js at drone.ws
Mon Feb 20 22:42:02 CET 2006
Hi all,
I'm currently working out to try to integrate one new programming
paradigm in Drone (apart from dataflow): hierarchical finite-state
machines. The point would be to facilitate the creation of event-based,
complex behaviors that could change the way data is processed. This
paradigm should in fact be a module that integrate seamlessly with the
dataflow paradigm that is currently Drone's core (which would thus also
become a module). Thinking about this had me consider the idea of using
a scripting language as the "middleground" between those various
modules. In the end, the structure I was thinking of looked like this:
FSM-GUI dataflow-GUI
| |
script code (scheme)
|
script engine (guile) <--> FSM/dataflow libraries
This is rather close to proposed GePhex 0.5 architecture, except
there is no bytecode layer. The reason is
1) I didn't really find any reason to use a bytecode
2) GePhex 0.5 bytecode was useless because it has no event scheduling
However I recently read this comment about a scheduling unit in
GePhex 0.5 bytecode:
http://lists.gephex.org/pipermail/gephex-devel/2005-November/000795.html
I guess that such a feature would add what is, in my mind, truly
missing in gephex bytecode in order for it to support various paradigmas
(though I'm thinking that I would still need some kind of event
sender/listener facility).
However, I still don't really see the point of creating such a
bytecode language under the Scheme layer. Why not simply code it in
Scheme with the help of Guile? I've reproduced the Kalkulon example in
Scheme here and it's pretty neat:
http://orangeseeds.net/wiki/drone/Core/Drone0.4/Scripting/Spike
Plus, that would allow users to script their own way of
handling/scheduling data.
--
Jean-Sébastien Senécal
Reseach Assistant, Hexagram / Assistant de recherche à Hexagram
M. A. Student in Interactive Media / Étudiant en Médias Interactifs, Université du Québec à Montréal
M. Sc. Computer Sciences / Informatique, Université de Montréal
Mail: js at drone.ws
Web: http://drone.ws
More information about the gephex-devel
mailing list