The keyword here is speed. Multimethods are not fast. They don't use the
JVM for dispatch (as far as I know). Protocols are fast. That's the reason
for their existence. I want to find out whether there's some effort
invested in making fast multiple dispatch in Clojure (and how else can it
be
But isn't that the whole point of protocols, polymorphic dispatch that is
fast?
On Sat, Aug 3, 2013 at 11:45 PM, Răzvan Rotaru razvan.rot...@gmail.comwrote:
The keyword here is speed. Multimethods are not fast. They don't use the
JVM for dispatch (as far as I know). Protocols are fast. That's
Razvan, are you asking about dispatch on multiple types... protocols only
give fast dispatch on their first arg's type.
Currently you can either get fast dispatch on the type of the first arg, or
you get slower dispatch on anything w/ multimethods.
On Sat, Aug 3, 2013 at 11:48 PM, Robert Levy
The word fast is relative, of course. I've been happily using Clojure's
multimethods for a long time. They are certainly fast enough for a wide
range of uses.
I've seen a couple instances where people used a couple levels of protocols
(e.g., one function dispatching on the type of the first
Multiple vs single dispatch, hmm. You can always use a case statement too.
On Sat, Aug 3, 2013 at 11:56 PM, Mark Engelberg mark.engelb...@gmail.comwrote:
The word fast is relative, of course. I've been happily using Clojure's
multimethods for a long time. They are certainly fast enough for
I don't think there is currently a way to do this that is simultaneously:
1) Generic (dispatches on the type of all arguments)
2) Extensible (can be extended to new types at runtime)
3) Fast (about as fast as JVM dispatch allows)
Protocols give you 2) and 3). Multimethods give you 1) and 2).
I've seen a couple instances where people used a couple levels of
protocols (e.g., one function dispatching on the type of the first argument
in turn calling something that dispatches on the second argument) in order
to get some additional speed with multiple dispatch on type, but I
Hi Zach,
0.0.1 worked OK.
0.0.3 gives this error when Run with REPL:
Error: Could not find or load main class nightcode.lein
TIA,
Arie
2013/8/3 Zach Oakes zsoa...@gmail.com
Thanks for the complements! I just released 0.0.2, which should make
Run/Build faster and more reliable. It also
From David Nolen's recent post with core.async,
http://swannodette.github.io/2013/08/02/10-processes/
in the last let block, what is the purpose of:
(when (zero? (mod i 1000))
(! (timeout 0)))
?
Why pull from a channel that produces nothing useful (nil) ?
What create a timeout
Hi Geoff,
Thanks for taking an interest. :-)
The first thing I would recommend on getting a Clojure environment set up
is to install Leiningen https://github.com/technomancy/leiningen. That's
the most popular Clojure build tool, and it will take care of things like
managing the Java classpath
That's a hack for some versions of Safari and probably better handled
inside of render-loop. The problem is dispatch backed by MessageChannel in
Safari and seeing repaints.
On Sunday, August 4, 2013, Brent Millare wrote:
From David Nolen's recent post with core.async,
On Sunday, August 4, 2013 9:06:35 AM UTC-5, Chris Ford wrote:
Thanks for taking an interest. :-)
Of course, Chris. Your stuff is fantastic. I can't wait for my son Alex
to see and hear it.
I tried your instructions and I think I'm close:
[gknauth@merlin chris-ford]$ cd
Ooops. Try this instead:
(use 'goldberg.variations.canone-alla-quarta)
On 4 August 2013 17:57, Geoffrey Knauth ge...@knauth.org wrote:
On Sunday, August 4, 2013 9:06:35 AM UTC-5, Chris Ford wrote:
Thanks for taking an interest. :-)
Of course, Chris. Your stuff is fantastic. I can't
That worked, many thanks!
On Sunday, August 4, 2013 10:07:41 AM UTC-5, Chris Ford wrote:
Ooops. Try this instead:
(use 'goldberg.variations.canone-alla-quarta)
--
--
You received this message because you are subscribed to the Google
Groups Clojure group.
To post to this group, send
Or quil, a processing wrapper, would be well suited to this application.
--
--
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
Hi all,
Justin Reed recently spoke at our local user group on Clojure. One thing I
like about this talk is it addresses many of the concerns and complaints of
programmers who do not want to try Clojure *because* it is a Lisp.
http://youtu.be/CvRGJGK09tc
Cheers,
John
--
--
You received
Hi all
I've just pushed new release of Incanter to Clojars. This is mostly bugfix
release. More information is at
http://data-sorcery.org/2013/08/04/incanter-1-5-2-bugfix-release/
--
With best wishes,Alex Ott
http://alexott.net/
Twitter: alexott_en (English), alexott
the video is not available from that link...
Jim
On 04/08/13 17:25, John Conti wrote:
Hi all,
Justin Reed recently spoke at our local user group on Clojure. One
thing I like about this talk is it addresses many of the concerns and
complaints of programmers who do not want to try Clojure
That video seems to work fine for me.
On Sun, Aug 4, 2013 at 3:56 PM, Jim - FooBar(); jimpil1...@gmail.comwrote:
the video is not available from that link...
Jim
On 04/08/13 17:25, John Conti wrote:
Hi all,
Justin Reed recently spoke at our local user group on Clojure. One thing
I
hmmm... this is strange. I am getting the classic The video is
currently unavailable. Learn more crap ...
Jim
On 04/08/13 20:59, Frank Hale wrote:
That video seems to work fine for me.
On Sun, Aug 4, 2013 at 3:56 PM, Jim - FooBar(); jimpil1...@gmail.com
mailto:jimpil1...@gmail.com wrote:
Alex,
Thanks for taking the time to do this and keep Incanter going!
cheers,
Bruce
On Sun, Aug 4, 2013 at 7:20 PM, Alex Ott alex...@gmail.com wrote:
Hi all
I've just pushed new release of Incanter to Clojars. This is mostly bugfix
release. More information is at
I can't think of a single good reason to not deprecate :use. :require can
do everything :use could do now.
This isn't about whether or not (:use ..) without :only is bad. I'd go as
far as to say that outside of test files (and sometimes not even those) and
repl sessions, :use without :only is
Thanks for keeping the ball rolling, Alex. We appreciate it very much!
Could you tag the release on github so that autodoc will build for it
correctly?
Thanks,
Tom
On Sunday, August 4, 2013 11:20:07 AM UTC-7, Alex Ott wrote:
Hi all
I've just pushed new release of Incanter to Clojars.
this is great!
please please add structural editing (not simply bracket-matching in a
text-editor, but direct manipulation of Clojure data structures (including
code). I've been trying out some ideas in this area would be happy to
help out.
On Friday, August 2, 2013 11:03:03 PM UTC+10, Zach
Zach, I just want to say THANK YOU for doing what you are doing. Your work
is very much needed! Take care!
On Sun, Aug 4, 2013 at 11:19 PM, Matthew Chadwick mathn...@gmail.comwrote:
this is great!
please please add structural editing (not simply bracket-matching in a
text-editor, but
25 matches
Mail list logo