On a more serious note, FluentData is a wheel reinvented, square. PetaPoco anyone?
I like Peta because it's the smallest most minimal ORM I've found. I can grasp most of what it's doing after little work with it and it's fast enough for me though I'm definitely not pushing it too hard.
Recently I've wondered what other ORMs support this feature or something similar to it. Anyone care to comment?
[1] https://metacpan.org/module/DBIx::Class::ResultSet#prefetch
[1] http://stackoverflow.com/questions/1299374/what-is-eager-loa...
[2] https://docs.djangoproject.com/en/dev/ref/models/querysets/#...
[3] http://nhforge.org/blogs/nhibernate/archive/2008/09/06/eager...
[4] http://guides.rubyonrails.org/active_record_querying.html#ea...
[5] http://stackoverflow.com/questions/97197/what-is-the-n1-sele...
It looks like select_related is the equivalent Django method to what I'm referring to in DBIx::Class, although prefetch_related (which you linked) looks superior in many respects. I'm fairly certain DBIx::Class allows a similar method to prefetch_related, but it may or may not be automatically done. I know it supports object caching, so it shouldn't be to hard to achieve in a few lines (but automatic is nice).
Interestingly, I don't see a way in Django to specify complex select fields to be included along with the default fields for a record. In a simple case that can be used to get a count of something, in complex cases it could be used to actually compute something on the DB to group and/or limit by (group by having). I'm probably just not familiar enough with QuerySets from this small bit of exposure to work it out.
NHibernate... That's a lot of code for something that should be simple. I imagine that's for explanatory reasons, and that much code isn't needed for most queries.
Dapper has been very useful at my current gig and more innovation in that space the better. Okay these micro-ORMs lack fundamentals like identity maps and caching but do you always need these features?
Inertia is dangerous.
Plus, if its good enough for the Stack Exchange team, then its plenty good enough for me.