From: Andy T. <an...@cr...> - 2001-09-12 09:37:43
|
Peter Cleaveland wrote: > This is fairly obvious as feature requests go - but I'm curious. > > What's the best candidate to provide the implicit card-level persistence > HyperCard had? Not to mention a place to store the code and resources, > when we get to the point of having a PythonCard IDE. I'd like to address that as two separate issues. We are generally talking about two types of information to store here, 'metadata' about the application and the application's actual data. Although HyperCard used to store the whole lot as one item I'm not sure its the best approach for PythonCard. As Kevin said in a post the other day we want to be able to edit the application 'metadata' (code and resource description) in a text editor to broaden the appeal of the toolset. We don't necessarily want to store the application data in a text form though as that may not be the most efficient solution. In addition, the format and content of the actual application data is in the control of the developer and we should not constrain that in any way. I think we should support multiple back ends, and to that end we already have applications that support ZODB and MySQL. I'm currently working on a csv module and will also look at other RDBMS (Oracle and PostgreSQL are on my list). The developer of a PythonCard application should have the ability to choose where to store their data rather than us forcing a solution on them. Eventually we would want to support some kind of agnostic persistence layer (much like the approach AnyGui has taken to windowing toolkits) but we should wait until the framework and API have been worked out a bit more thoroughly. Thats not to stop us planning such a persistence model now though ... > > Shelve leaps to mind, but I'm not sure the DB files Shelve creates are > portable across platforms. Shelve also seems to create more than just a > single file, which is non-optimal. I haven't looked at shelve in any great detail, but it seems quite popular. I've got an item on my to-do list to change the addresses sample application to use pickle or shelve but if you want to step into the breach please feel free. > > What we really want is the single-file clarity of cPickle, with the > memory friendly aspects of Shelve, in an efficient platform neutral > file. Does anyone know of such a technology? > Ah, the holy grail of storage technology. When we discover it can we sell it on to Oracle, IBM, et al? - only joking ;-) My theory is to leave data storage to the data storage solutions, just as we are leaving GUI provision to the GUI toolkit. Please feel free to pitch in if you feel differently. > Peter > > Regards, Andy -- ----------------------------------------------------------------------- From the desk of Andrew J Todd esq. "Hit me with your fax machine, baby" - Francis Dunnery, "Because I Can" |