[ANNOUNCE] SPOPSx::Ginsu (inheritance for SPOPS)

From: Ray Zimmerman (rz10_at_cornell.edu)
Date: 04/24/04

  • Next message: Sherm Pendley: "ANN: CamelBones 0.2.3"
    Date: Sat, 24 Apr 2004 01:48:19 GMT
    
    

    The uploaded file

        SPOPSx-Ginsu-0.57.tar.gz

    has entered CPAN as

      file: $CPAN/authors/id/Z/ZM/ZMAN/SPOPSx-Ginsu-0.57.tar.gz
      size: 66975 bytes
       md5: 7b6f18bc0d1f8a7ecb8612c909d61632

    SPOPSx::Ginsu (which began its life as ESPOPS) stands for SPOPS
    eXtension for Generalized INheritance SUpport. It is a Perl object
    oriented persistence tool. To put it in the context of the other tools
    summarized at (http://poop.sourceforge.net/) it essentially adds some of
    Tangram's functionality to SPOPS.

    SPOPS::DBI implements an inherited persistence mechanism for classes
    whose objects are each stored as a row in a single database table. Each
    class has its own table and all of the persistent fields are stored in
    that table. Ginsu extends this implementation to handle subclassing of
    such objects, including polymorphic retrieval. The fields of a given
    object are stored across several database tables, one for each parent
    class with persistent fields. A Ginsu object is simply an SPOPS::DBI
    object stored across multiple database tables.

    Ginsu and SPOPS also differ in the usage style. With standard SPOPS,
    classes are typically created at runtime from configuration files and
    any code for the classes is imported from a separate code class. With
    Ginsu, each class looks like a standard Perl class, with its own .pm
    file containing the class's code. The BEGIN block includes variables
    containing the SPOPS configuration data for the class. To use a Ginsu
    class, you simply 'use' it as you would any other Perl class.

    Currently, Ginsu has only been tested with MySQL, since that's what we
    use. It should be fairly easy to make it work with any database SPOPS
    supports, but that has not become a priority for my own use.

    Any help with any of the following development tasks is appreciated.
     - making Ginsu database independent
     - fixing some of the SPOPS functionality that we've broken or ignored in
       Ginsu (security, lazy loading, database independence, strict fields)
     - integrating Ginsu functionality into the SPOPS core
     - implementing the enhanced object relationship configuration

    --
    Ray Zimmerman
    Director, Laboratory for Experimental Economics and Decision Research
    428-B Phillips Hall, Cornell University, Ithaca, NY 14853
    phone:  (607) 255-9645       fax: (815) 377-3932
    

  • Next message: Sherm Pendley: "ANN: CamelBones 0.2.3"