<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<TITLE>Message</TITLE>

<META content="MSHTML 6.00.2900.2802" name=GENERATOR></HEAD>
<BODY>
<DIV><FONT face=Arial size=2><SPAN class=056220614-26012006>We have added 
support for event-based addons to the newly announced Python GME (PyGME) 
component generator.&nbsp; We felt this was important because addons present 
additional issues for dispatch-based components, due to the need to implement a 
COM interface (IMgaEventSink), and potential users would benefit from our 
solution to these issues.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=056220614-26012006></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN class=056220614-26012006>We have 
also&nbsp;relocated the component registration services from the XML-based 
component specification to the generator, and we have improved the PyGME web 
page.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=056220614-26012006></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN class=056220614-26012006>For GME users who 
have never contemplated using a dynamic language for components, particularly in 
RAD contexts, I can tell you (as one who has developed GME components in several 
languages) that nothing compares to the speed with which components can be 
developed and extended in Python.&nbsp;&nbsp; Due to the nature of dynamic 
languages, we have even developed a capability to create lightweight components 
that reside within the modeling language itself, which&nbsp;we call 
"wizards".&nbsp; These lightweight components address situations where tools 
that support the modeling task are not paradigm-scoped, but project-scoped or 
even model-scoped.&nbsp; Using Python, we have also developed a web 
services-based model repository (using&nbsp;Zope's object-oriented database 
ZODB) that supports model persistence and model sharing&nbsp;for our 
users.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=056220614-26012006></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN class=056220614-26012006>Python-based 
components are&nbsp;likely more relevant to building interactive tools than to 
computationally-intensive outbound transformations of models: the classical use 
case for model interpreters.&nbsp;&nbsp; But&nbsp;aside from a small class of 
interpreters where transformation performance is&nbsp;the&nbsp;preeminent 
concern (due to the size of models and/or the nature of the transformation), 
Python is an excellent&nbsp;alternative for component 
construction.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=056220614-26012006></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN class=056220614-26012006>The revisions are 
available at <A 
href="http://cape.vanth.org/Development/PyGME">http://cape.vanth.org/Development/PyGME</A>.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=056220614-26012006></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN class=056220614-26012006>Learn more about the 
open source Python dynamic programming language at <A 
href="http://www.python.org">http://www.python.org</A>.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=056220614-26012006></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN class=056220614-26012006>
<DIV><FONT face=Arial size=2><SPAN class=056220614-26012006>Adaptive Learning 
Technologies Project (<A 
href="http://cape.vanth.org/">http://cape.vanth.org</A>)</SPAN></FONT></DIV></SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=056220614-26012006></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=056220614-26012006></SPAN></FONT>&nbsp;</DIV></BODY></HTML>