[visionegg] A few quibbles

Seems like I'm gravitating towards issues surrounding ve_types.

1) VisionEgg.FlowControl.FunctionController calls during_go_function once on line 1222 during initialization to see what type it returns. This is one issue that might be productively addressed by a switch to enthought.traits from ve_types. I start some of my experiments in "paused" mode, so I need special logic in my update function to not modify graphical state the first time it is called.

This in turn makes testing a little wonky... there's a cascade of accomodation that has to occur if you do things this way.

I did figure out that a better way to do this would be to pass FunctionController an argument of 'return_type=VisionEgg.ParameterTypes.NoneType'. But this was not obviously something I should do without reading code (which I don't mind, but will dissuade end-users, I recon).

2) In a related issue, I am using generator functions, with the "send" functionality to implement coroutines. This is really nice and allows for clean presentation logic with a long, complicated sequence of stimuli. However, the way the FunctionController is implemented, I need to create a wrapper which takes, for example, "t" as a named argument, and then passes it to "send" as a positional argument.

In any case, updating data across classes is a place where Traits is quite good, and so this issue would perhaps be better addressed in some kind of HasTraitsController or similar.

I post these to the list as a first-attempt at having these documented, but I'm happy to contribute to more formal docs someplace. Maybe something on the wiki?

Cheers,
Dav
======================================
The Vision Egg mailing list
Archives: http://www.freelists.org/archives/visionegg
Website: http://www.visionegg.org/mailinglist.html

Other related posts: