Thanks Oliver for the feedback,
actually I came up with the idea of relational_mapper while working on a project in which I had one "data-model" that contained all the database related information, but the database related code contained a lot of features, and I really like working with small, focused clojure libraries, so in the end relational_mapper is as small as I could think of it.
Also as you can see in this commit:
https://github.com/netizer/relational_mapper/commit/6b4d79f92570bf723e4092d329978d484c01d2ab#diff-2b44df73d826687086fd1972295f8bd0L8 I actually was storing both: relations and fields in the same structure, but I changed that because I needed "fields" only for migrations that I used in tests, and because the whole structure was unnecessarily complex (it was much easier to make mistake modifying the fields/associations structure).
Relational Mapper is meant only for reading data because whenever I tried to use complex structures to write data, I was unhappy with the result (often you have to update indexes of related records after one of them - with auto-increment field - is created, and there is a problem of determining if the related record has to be created or updated).
I didn't write compare/contrast points because I couldn't find similar libraries in clojure. I mentioned ActiveRecord in README mostly because of the wording in types of relations, but even ActiveRecord is very far from Relational Mapper (it's much bigger, and has features that go way beyond simple relational mapping).
Thanks again,
Krzysiek