At the very least, all the places where you switched to method/property syntax now require runtime reflection. Try leaving those as they were, or switching to using the keyword as the function (which is somewhat more idiomatic). You could instead hint the appropriate object type in each function, but part of the benefit of records is that most code should be agnostic as to whether it has a plain map or a record.
On Wednesday, January 28, 2015 at 10:35:12 AM UTC-5, Pedro Pereira Santos wrote: > > Hello, > > I have a vector with ~20 elements that don't change. They are basically > metadata information that are used on the application. Those 20 elements > are maps, and I gathered them like: > > (defn units [] > [unit1 unit2 ...]) > > I created a record and changed the gathering to: > > (defn units [] > (map #(map->UnitRecord %) [unit1 unit2 ...])) > > I have autotest running. Pressing enter gives me all the suites run time. > From my n-tries-check-time benchmark, I noticed that on the original > version the suite took ~500ms, but with the record it takes abount ~800ms. > > What can explain this? I don't change these units anywhere, just read from > them. I access the properties via functions on the namespace. > > I was expecting the opposite result. Any ideas on what am I doing wrong? > > Thanks > > PS: The PR on my project with this change: > https://github.com/orionsbelt-battlegrounds/obb-rules/pull/12/files > -- 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/d/optout.