On Tue, Aug 19, 2008 at 8:54 PM, Michael Bayer <[EMAIL PROTECTED]> wrote:
>
>
> On Aug 19, 2008, at 2:43 PM, Jose Galvez wrote:
>
>>
>> What is the proposed stability of declarative functions which I guess
>> are pretty new.  From what I've read so far I really like it and was
>> thinking of using it, but was just wondering what the long turn
>> outlook
>> for it looked like?  After doing some reading on the new release of
>> Elixir, Elixir looks like a mich simplier and more feature complete
>> then
>> declarative, but It does not look like Elixir works with a legacy
>> databse (but I'm still looking into that) so I was wondering about
>> declarative's long term stability.
>
> declarative is intended to be a lot simpler than Elixir, so thats
> funny you see it the other way around.

Disclaimer for Jose: I'm one of Elixir authors.

Simpler than Elixir? How so? If you are speaking about the internal
guts, then you are right declarative is simpler (which is normal since
it does less), but if you meant the usage (and I *think* it's what the
original poster meant here), I have to disagree... Their simplicity is
comparable, and I would even vote for Elixir as slightly simpler
because of the little helper methods you get for free... If you meant
"usage" here, please explain why you think so.

> I'm using it (declarative) on
> a production project and so are many others, and forms the basis of
> the object-relational plugin for Grok.  Its fully stable since it is
> using the same SQLAlchemy constructs that regular mapper() and Table
> calls do.

Well, in my opinion, apart from the different syntax which is probably
a matter of taste, the only real difference between Elixir and
declarative is that Elixir can generate columns and tables for you,
which makes development faster (and arguably simpler) when you are
building the database from scratch as you develop your application. It
allows to implement recurring (database) patterns without repeating
yourself. Those pattern range from the simple "many-to-one" column, to
the different inheritance patterns, via the table for a many-to-many
relationship. On the other hand, if you are using a legacy database,
Elixir doesn't offer any significant advantage (*) over declarative
even though it does provide support to work on them.

(*) except maybe the different helper methods on the Entity base class
which can be used as-is, while you need to reimplement (or copy-paste)
them on your own base class if you are using declarative. I wouldn't
consider this significant though ;-).

-- 
Gaƫtan de Menten
http://openhex.org

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to