From what I see, Lotus::Model mapping is limited to mapping simple tuple attributes to simple object attributes.
I’ve played around with ROM for while, its mapping functionallity is VERY powerful, it can perform all types of transformations on the data before building the entity or value object, it can even map a single tuple, to a complex aggregate of objects, or use various steps to map.
You can check various examples at ROM’s mappers guide.
This is very useful for getting the same data in different formats according to the context, and I miss it when using Lotus::Model.
What do you guys think about this?
ROM itself is very powerful and has various other interesting ideas we should look into, another example is ROM structs, returned from repositories.
And, could be relevant, ROM also uses Sequel as their SQL adapter and are build a Gem to integrate with Lotus.