So from what I read the philosophy of Clojure discourages inheritance on concrete data types. However, maybe I am too entrenched in my OO thinking, how do I define a new record type that includes all the data members of another record type? I am thinking about the classic Employee/Person example.
If I can define a record of Employee with Person's data members included, even that is not true inheritance (as no protocols of "Person" will be automatically extended to "Employee"), I need that for function re-use (so a function working on Person will automatically work on Employee because Employee is guaranteed to have all the data members in Person). Also, again, maybe I am too OO minded, is there a way inherit another record type's protocol implementation? That seems to give the best combination of both worlds (OO and functional), so you can either have you own very customized combination of data type/protocols, or use the very common OO pattern. Just like we have both the single-typed dispatching (which is more OO like and covers a large portion of use cases), and more advanced multimethods. Thanks. -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en