Scheduling

JS <[email protected]> Mon, 20 Feb 2006 16:42:02 -0500
Newsgroups gmane.comp.video.gephex.devel
Message-ID <[email protected]>
Hi all,

    I'm currently working out to try to integrate one new programming=20
paradigm in Drone (apart from dataflow): hierarchical finite-state=20
machines. The point would be to facilitate the creation of event-based,=20
complex behaviors that could change the way data is processed. This=20
paradigm should in fact be a module that integrate seamlessly with the=20
dataflow paradigm that is currently Drone's core (which would thus also=20
become a module). Thinking about this had me consider the idea of using=20
a scripting language as the "middleground" between those various=20
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=20
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=20
GePhex 0.5 bytecode:
    http://lists.gephex.org/pipermail/gephex-devel/2005-November/000795.h=
tml

    I guess that such a feature would add what is, in my mind, truly=20
missing in gephex bytecode in order for it to support various paradigmas=20
(though I'm thinking that I would still need some kind of event=20
sender/listener facility).

    However, I still don't really see the point of creating such a=20
bytecode language under the Scheme layer. Why not simply code it in=20
Scheme with the help of Guile? I've reproduced the Kalkulon example in=20
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=20
handling/scheduling data.

--=20
Jean-S=E9bastien Sen=E9cal
Reseach Assistant, Hexagram / Assistant de recherche =E0 Hexagram
M. A. Student in Interactive Media / =C9tudiant en M=E9dias Interactifs, =
Universit=E9 du Qu=E9bec =E0 Montr=E9al
M. Sc. Computer Sciences / Informatique, Universit=E9 de Montr=E9al
Mail: [email protected]
Web: http://drone.ws