Hi, I have in my hands an XML description of data structures that I want to mechanically translate into Clojure. There are <struct> and <typedef> elements, with <struct> being similar to structs in C (list of fields) and <typedef> being similar to typedef in C (defining new name for already defined <struct>s).
I model <struct>s using Clojure records, but I'm not sure how to refer to them with a new name when it comes to <typedef>s. Given the following specification: <struct name="foo"> <field name="a"/> <field name="b"/> </struct> <typedef oldname="foo" newname="bar"> I would create records: (defrecord foo [a b]) (defrecord bar [a b]) The problem is that struct foo and typedef bar lives in different namespaces, i.e. I don't have foo's specification when I encounter typedef bar. What I'd like to do is (def bar some-ns/foo), but what about ->foo and map->foo? So should I: - (def bar some-ns/foo) (def ->bar some-ns/->foo) (def map->bar some-ns/map->foo), while hoping that Clojure doesn't extend records syntax/capabilities in the future? - Use something else than records to model structs (suggestions welcome)? - Other? Thanks, Vincent -- -- 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 --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.