Ilias Lazaridis wrote: > peoples words: > > "SQLAlchemy implements the Data Mapper pattern, of which the Active > Record pattern (which SQLObject implements) is a subset." > > please notice: "subset". > > My conclusion is of course correct, and is based on the meaning of the > term "subset".
The direct quote of your conclusion was this: "SQLAlchemy (DataMapper) can implement SQLObject (Active Record) SQLObject (Active Record) cannot implement SQLAlchemy (DataMapper)" Which is not "of course correct" because the statement is mixing terms a bit and isn't really very accurate. Let me see if I can help you out a bit on those terms. Libraries cannot implement other libraries. Libraries _can_ implement design patterns, though. SQLAlchemy and SQLObject are libraries. Data Mapper and Active Record are design patterns. Using this as a basis, here is a more correct conclusion that you could draw from the original statement: SQLAlchemy roughly implements the Data Mapper design pattern. SQLObject roughly implements the Active Record design pattern. The Active Record design pattern can be considered a subset of the Data Mapper design pattern. As a result of this, it is possible to implement the Active Record design pattern in SQLAlchemy, which is provided by the ActiveMapper extension to SQLAlchemy. It might be possible for someone to implement an SQLObject compatibility module for SQLAlchemy, but it might be difficult to provide 100% compatibility with the SQLObject API. I hope this makes a bit more sense to you, and I again would encourage you to read up on design patterns a bit so that you can have a better understanding of the subject that you are discussing. > So, possibly "peoples words" were wrong. Please don't take this the wrong way, but you clearly aren't armed with the knowledge that is necessary to come to that conclusion. The original quote is correct, and your interpretation of it is not. Its not a big deal, but its kind of irritating when people make blanket statements from a position of ignorance. Also, if you don't want people to come to the conclusion that you are a troll, it would probably be a good idea to take the advice of the creator of the project, rather than ignoring it. > Sadly, I've currently not the time to further look at the persistency > case. Well, good luck anyhow. > Just wondering more and more about "A Dynamic Language, Without a > Dynamic ORM" (Python). > > Seems like Zope DB and Durus are the only dynamic solutions for > python. > > The ORM league has (till now) failed to produce an dynamic OO layer on > top of Relational databases. I am not going to comment on these statements, because I really don't think that they make any sense at all. Good luck - -- Jonathan LaCour http://cleverdevil.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 -~----------~----~----~----~------~----~------~--~---