On Sun, Feb 1, 2009 at 7:22 PM, David Nolen <dnolen.li...@gmail.com> wrote:
> I've changed the name of my project since that was a joke anyway.
> http://github.com/swannodette/spinoza/tree/master
>
> Spinoza isn't just for people who want object oriented behaviors.  It's also
> for anyone who plans on instantiating many structs.  Spinoza's make-instance
> macro automatically orders your key/values and uses struct not struct-map.

What are the reasons it avoids the use of struct-map?

> (defclass shape [object]
>   (:position [0 0]))
> (defclass rect [shape]
>   (:position [5 5])
>   :width
>   :height)
> (time (dotimes [x 1000000]
> (make-instance rect :height 100 :width 150)))
>> ~280ms
> (defstruct rect-struct :tag :position :width :height)
> (time (dotimes [x 1000000]
> (struct-map rect-struct :tag ::rect :position [50 50] :width 100 :height
> 190)))
>> ~800ms
> Also, it is now available under an MIT license, feel free to fork, send
> patches at will etc.

-- 
R. Mark Volkmann
Object Computing, Inc.

--~--~---------~--~----~------------~-------~--~----~
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
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to