From: Kevin A. <al...@se...> - 2001-09-09 17:56:22
|
-----Original Message----- From: Kevin Altis [mailto:al...@se...] Sent: Saturday, September 08, 2001 9:12 AM To: Michael Swaine Subject: RE: PythonCard Danger Will Robinson, long message ahead... The PythonCard project is roughly two and half months old. The beginning is described at: http://www.onlamp.com/pub/a/python/2001/08/16/pythonnews.html After we had the mailing list up I found that there was already a PythonCard project on SourceForge and so I contacted the project owner. After sending the email my synapses finally fired and I realized the owner, Dan Winkler, was the same person as Bill Atkinson hired for the original HyperCard. His PythonCard example in cvs (now the textIndexer sample) does text hinting for searches like HyperCard used to use. Anyway, Dan gave us his project space and I keep bugging him, so hopefully pretty soon he'll start working on PythonCard again; right now he is playing with Lisp instead of Python. Rowland Smith and I wrote the original framework which we've been modifying for the last two months. We're at the prototype stage right now. I wanted to make it clear that it is a prototype, so that everyone would understand why the API changes, features are missing, etc. We are using wxPython as our GUI layer, though it might be possible to generalize the GUI toolkit used via anygui (another Python project later. We should be done with the prototype in a few months or less. Then the API will be pretty stable and we'll rewrite the framework itself to be more efficient. The samples that can be written today are rough-equivelants of single backround, single card stacks where the user code manages data storage. The addresses sample is a port of the Addresses stack from HyperCard and includes the HyperTalk export script and documents the conversion process. The current focus for the PythonCard project is on GUI widgets, menus, windows, events, fonts, sizers, etc. Pretty soon we'll be getting into transparent data storage; two of the samples are already using mySQL and ZODB. We're also getting closer to some of the environment pieces. The resourceEditor is the beginning of a GUI for laying out widgets. Layout descriptions are stored in a separate resource (.rsrc.py) file which is actually a Python dictionary, once it is no longer necessary to hand edit the resources it will probably be stored in XML format. The simplest way to see more of PythonCard without reading the message list archives is to install it and run the samples.py launcher; install and a quick look should take less than half an hour. samples.py has brief descriptions of all the samples, displays the source code and resource files for each sample, and let's you turn on any of the run-time tools: Logging, Message Watcher, Namespace Viewer, Property Editor, and Shell (full Python interpreter available at runtime). The shell also serves the same function as the Message Box in HyperCard, so there is a Debug menu item to "Redirect stdout to Shell". PythonCard will probably always be an application framework as well as an environment, so that people that don't want to use the environment will be able to code directly in Emacs or another editor. My desire is to keep PythonCard simple, yet capable, so that simple projects can be coded in an afternoon without much planning. Pythoncard should provide the application framework to match Python in elegance and power. ka |