[gst-devel] 0.9 proposals

Martin Soto soto at informatik.uni-kl.de
Fri Dec 3 10:17:07 CET 2004


Hello David,

On Thu, 2004-12-02 at 11:04 -0800, David Schleef wrote:
[snip]
> Have you ever tried?  IMO, getting an element 100% right is easier
> to do by 1) realizing you have a state machine, 2) designing a
> state machine, and 3) implementing the state machine.  It's certainly
> easier than 1) writing some code, 2) bug fixing hidden state
> transitions in the code, and 3) realizing (oh shit!) that you have
> a pooly-designed state machine.

Yes I have. For example,The DVD VM in Seamless is such a thing. And I'm
planning to reimplement it using Python generators, because I'm fed up
with the hard to track bugs that happen when you forget a transition,
or, even worse, make it wrong. State machines are hard to hold in your
brain when they have more than a few states. They were cool in the
1970's and, since them, people have been hard at work inventing
abstractions to hide them, for a good reason.

M. S.






More information about the gstreamer-devel mailing list