[Types-sig] Re: [ZODB-Dev] Pre-announce: Oscar 0.1
by Christian Robottom Reis other posts by this author
Aug 27 2001 3:15PM messages near this date
[Types-sig] Re: [ZODB-Dev] Pre-announce: Oscar 0.1
|
[Types-sig] Query about Types SIG status
On Tue, 21 Aug 2001, Greg Ward wrote:
> First of all, let me modify the announcement a bit. There are too many
> software packages out there already called "Oscar" -- so Oscar is dead,
> long live the Grouch! (Does anyone who grew up outside of North America
> get it? Oh well...)
Ewww. This looks awfully cool. Congrats, Greg, this works nicely. :)
> When/if a new schema language becomes part of Grouch, it will be offered
> as a complement to schema extraction from docstrings.
This would be an XML schema thing like we have for gnome's GAL and
libglade?
> Yes, although it's a tad clunky right now. Eg. say I have a schema in
> schema.pkl, as created by the gen_schema script:
[... include general clunkiness ...]
> ...and around we go. You get the picture. The documentation for this
> API is all in the code.
Hmm. It is a bit clunky (the open database part definitely is!). Okay, so
now let me ask you this: Don't _you_ do runtime typechecking of anything?
How do you prevent 3vil things going into the database if no runtime
checking is done? Oh, this _is_ how you do runtime checking?
> > Oh, this _is_ a runtime typecheck? :)
>
> Not currently. Right now, we do a type-checking pass nightly on our
> database. So far, it mostly finds documentation errors -- ie. it's
> mainly peace-of-mind, rather than something that regularly finds bugs.
Okay, so if it only finds doc errors, how do you avoid user-input data to
be in the correct types? One thing that bothers me is that, f.i., GTK
entries always give me back strings, which I have to "cast" into a
float/int/DateTime/whatever.
Apart from having in-field validation (using GtkEntry's *_text callbacks),
I do validation in the domain classes. However, this is very ugly using
custom-written code because everybody has to specify the types inside the
handler themselves (with some type(foo) == type(0.0) statements). This
could be done using Grouch's runtime system very transparently, AFAICS.
Agreed?
> * invoke Grouch in __setattr__(), so every attribute is checked at
> assignment time (this is the one that really scares me, performance-
> wise)
Yeah, but for user-input data going into persistent domain classes, it's a
must.
> Give it a whirl -- pre-release tarball is at
> http://starship.python.net/~gward/Grouch-0.1.tar.gz. Shh! Don't tell
> anyone I mentioned this. It's *not* the final release. There will be
> another Grouch-0.1.tar.gz with possible differences in a few days.
Vere is da stone? :)
Take care,
--
Christian Reis, Senior Engineer, Async Open Source, Brazil.
http://async.com.br/~kiko/ | [+55 16] 272 3330 | NMFL
_______________________________________________
Types-SIG mailing list
Types-SIG@[...].org
http://mail.python.org/mailman/listinfo/types-sig
Thread:
Greg Ward
Chris McDonough
Jeremy Hylton
Christian Robottom Reis
Greg Ward
Christian Robottom Reis
Andrew Kuchling
Greg Ward
Christian Robottom Reis
Greg Ward
Christian Robottom Reis
Greg Ward
Christian Robottom Reis
Greg Ward
Michel Pelletier
Greg Ward
Christian Robottom Reis
Andrew Kuchling
Christian Robottom Reis
Christian Robottom Reis
Chris McDonough
|