Re: Status of Generic Functions (a la lisp)

2013-08-04 Thread Răzvan Rotaru
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 based on Java types?). 

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




Re: Status of Generic Functions (a la lisp)

2013-08-04 Thread Robert Levy
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 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 based on Java types?).

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




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




Re: Status of Generic Functions (a la lisp)

2013-08-04 Thread Alex Baranosky
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 r.p.l...@gmail.com wrote:

 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 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 based on Java types?).

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




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




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




Re: Status of Generic Functions (a la lisp)

2013-08-04 Thread Mark Engelberg
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 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 haven't found
the need to do that myself.

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




Re: Status of Generic Functions (a la lisp)

2013-08-04 Thread Robert Levy
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 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 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 haven't
 found the need to do that myself.

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




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




Re: Status of Generic Functions (a la lisp)

2013-08-04 Thread Mikera
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). Custom 
solutions with instance checks and type hints can give you 1) and 3).

A good solution in my view would allow you to do things like this:

;; define a function with type-hinted overrides
(defn generic-function
  ([^Char c ^String cs] ())
  ([^Object o ^List os] (.)))

;; extend the function dynamically (protocol style)
(extend-fn generic-function ([^double d ^doubles ds] ()))

This would imply quite a bit of code generation to compile the right 
efficient dispatch logic. Extension would also imply recompilation. So not 
totally trivial to implement, but I still think it would be a great 
addition to Clojure (either in core or as a library). It would be best if 
it was in core, because then the compiler could take advantage of type 
information to generate direct calls rather than doing dynamic dispatch in 
the relatively common situation that the type of arguments is already known.

On Saturday, 3 August 2013 12:22:27 UTC+1, Răzvan Rotaru wrote:

 Hi,

 I'm looking for fast lisp style generic functions in clojure. In other 
 words: multimethods that dispatch on the java type.
 A search on the web revealed little, since protocols and multimethods 
 always show up. I have also seen some old discussion in this group on the 
 topic, but I couldn't figure out whether there is a usable implementation 
 out there. So I'm posting my question on this group.

 1/ Is there generic function implementation out there that I can use? 
 2/ Are there plans to include them in future versions of clojure? 
 3/ And lastly, could this be implemented as a sequence of single dispatch 
 (using the available single dispatch, which is fast)?

 Thanks,
 Răzvan


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




Re: Status of Generic Functions (a la lisp)

2013-08-04 Thread Răzvan Rotaru


 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 haven't 
 found the need to do that myself.


This is what I mean with a sequence of single dispatches. I'm not sure 
that this is real multiple dispatch though.

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




Re: [ANN] Nightcode, an IDE for Clojure and Java

2013-08-04 Thread Arie van Wingerden
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 fixes shortcuts on OS X so they
 use command instead of control.


 On Saturday, August 3, 2013 8:07:31 AM UTC-4, Manuel Paccagnella wrote:

 Wow, it looks very promising. I'd also like add a +1 for smart indent and
 paredit.

 Kudos to you Zach!

 Manuel

 Il giorno venerdì 2 agosto 2013 15:03:03 UTC+2, Zach Oakes ha scritto:

 I’ve been working on a simple IDE for the past few months. It started as
 an attempt to add Leiningen integration to Clooj, but eventually I decided
 to start a new project from scratch. It is very alpha-quality, so please be
 gentle:

 http://nightcode.info/

 Here’s what it has:

 -Written in Clojure (the UI is written with seesaw)

 -Built-in copy of Leiningen to build Clojure and pure-Java projects

 -Built-in templates for several common types of Clojure and Java projects

 -Always-on REPL in the corner to try Clojure commands

 -Android integration (includes the lein-droid plugin, LogCat output, etc)

 -ClojureScript integration (includes the lein-cljsbuild plugin)

 -Cool looking dark theme, because that’s trendy these days

 Here’s what it’s missing:

 -Fast build times (it launches Leiningen in a separate process, which is
 slw...I plan on fixing this and would love any help)

 -Important editing features (code completion, text replace, etc)

 -Quick switching between recent files

 -Jump to definition, built-in documentation

 -Integration between editor and REPL (eval form or entire file)

 -Integration with git
 -Many other things -- please give me your thoughts!

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




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




question about 10k processes post

2013-08-04 Thread Brent Millare
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 of 0, which to my knowledge is a channel that 
produces a nil value immediately?

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




Re: trying out overtone, leipzip, chris-ford's functional composition code

2013-08-04 Thread Chris Ford
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 and starting up a repl for you.

Once you have done that, I'd recommend getting some music playing from the
repl before you worry about editor integration. First, get into the
directory, download the dependencies and start a repl session:

  cd functional-composition
  lein deps
  lein repl

Then you can switch to the namespace and try and play something:

  (in-ns 'goldberg.variations.canone-alla-quarta)
  (beep)

If you hear a sound, great! You can play anything in that file. For
example, you can copy and paste this into the repl:

  (- melody
  canone-alla-quarta
  (concat bass)
  (where :pitch (comp G major))
  (where :time (bpm 90))
  play
  graph)

When I'm playing around with music, I use Vim to execute pieces of code
directly. All of the parts in the file where there is a (comment ...) form
are there so that when I load the file the music doesn't go off
immediately, but so that I can play them at my leisure. Once you get the
music going from the repl, I'm sure there will be plenty of people who can
help you get your Emacs singing.

Cheers,

Chris


On 3 August 2013 22:47, Geoffrey Knauth ge...@knauth.org wrote:

 I'm fairly new to Clojure.  At LambdaJam I saw Chris Ford give a great
 demo of functional composition [music].  I want to show my 16-yo the same
 code working, since he's really doing well with Racket (and Gregor
 Kiczales' MOOC via UBC) and loving it, and he loves music and music
 composition too.

 Chris Ford posted his code here:
 https://github.com/ctford/functional-composition/tree/LambdaJam-2013

 My directory structure looks like this:
   ~/test/github/lj2013/chris-ford/
 functional-composition/
 ...
 functional-composition/src/jazz/standards/in_the_mood.clj
 ...
 leipzig/
 overtone/
 whelmed/

 I've installed Clojure and Leiningen.  I'm in Emacs and have clojure-mode
 and nrepl.  I'm trying to figure out how to get things going.  I typed M-x
 nrepl-jack-in in Emacs and got a REPL.  I'm sure my classpath is not set
 up right; I'm not sure how to do that.  I think .clj files need to be
 compiled.  I'm not sure how to make that happen.

 How should I organize these files to get things to work?

 There is an Emacs-Live setup for Overtone+Emacs but when I tried that it
 completely moved my ~/.emacs aside and I'm not sure that's what I want,
 since I use Emacs for many many things that are not in Emacs-Live's setup.

 Geoff

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




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




Re: question about 10k processes post

2013-08-04 Thread David Nolen
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,
 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 of 0, which to my knowledge is a channel that
 produces a nil value immediately?

 --
 --
 You received this message because you are subscribed to the Google
 Groups Clojure group.
 To post to this group, send email to 
 clojure@googlegroups.comjavascript:_e({}, 'cvml', 
 '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 javascript:_e({}, 'cvml',
 'clojure%2bunsubscr...@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 javascript:_e({}, 'cvml',
 'clojure%2bunsubscr...@googlegroups.com');.
 For more options, visit https://groups.google.com/groups/opt_out.




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




Re: trying out overtone, leipzip, chris-ford's functional composition code

2013-08-04 Thread Geoffrey Knauth
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 functional-composition/
[gknauth@merlin functional-composition]$ lein deps
[gknauth@merlin functional-composition]$ lein repl
Retrieving org/thnetos/cd-client/0.3.6/cd-client-0.3.6.pom from clojars
Retrieving clj-http-lite/clj-http-lite/0.2.0/clj-http-lite-0.2.0.pom from 
clojars
Retrieving slingshot/slingshot/0.10.3/slingshot-0.10.3.pom from clojars
Retrieving cheshire/cheshire/4.0.3/cheshire-4.0.3.pom from clojars
Retrieving 
com/fasterxml/jackson/core/jackson-core/2.0.6/jackson-core-2.0.6.pom from 
central
Retrieving 
com/fasterxml/jackson/dataformat/jackson-dataformat-smile/2.0.6/jackson-dataformat-smile-2.0.6.pom
 
from central
Retrieving 
com/fasterxml/jackson/core/jackson-core/2.0.6/jackson-core-2.0.6.jar from 
central
Retrieving 
com/fasterxml/jackson/dataformat/jackson-dataformat-smile/2.0.6/jackson-dataformat-smile-2.0.6.jar
 
from central
Retrieving clj-http-lite/clj-http-lite/0.2.0/clj-http-lite-0.2.0.jar from 
clojars
Retrieving slingshot/slingshot/0.10.3/slingshot-0.10.3.jar from clojars
Retrieving cheshire/cheshire/4.0.3/cheshire-4.0.3.jar from clojars
Retrieving org/thnetos/cd-client/0.3.6/cd-client-0.3.6.jar from clojars
nREPL server started on port 53475
REPL-y 0.1.10
Clojure 1.4.0
Exit: Control+D or (exit) or (quit)
Commands: (user/help)
Docs: (doc function-name-here)
  (find-doc part-of-name-here)
  Source: (source function-name-here)
  (user/sourcery function-name-here)
 Javadoc: (javadoc java-object-or-class-here)
Examples from clojuredocs.org: [clojuredocs or cdoc]
  (user/clojuredocs name-here)
  (user/clojuredocs ns-here name-here)
user= (in-ns 'goldberg.variations.canone-alla-quarta)
#Namespace goldberg.variations.canone-alla-quarta
goldberg.variations.canone-alla-quarta= (beep)
*CompilerException java.lang.RuntimeException: Unable to resolve symbol: 
beep in this context, compiling:(NO_SOURCE_PATH:1) *

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




Re: trying out overtone, leipzip, chris-ford's functional composition code

2013-08-04 Thread Chris Ford
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 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 functional-composition/
 [gknauth@merlin functional-composition]$ lein deps
 [gknauth@merlin functional-composition]$ lein repl
 Retrieving org/thnetos/cd-client/0.3.6/cd-client-0.3.6.pom from clojars
 Retrieving clj-http-lite/clj-http-lite/0.2.0/clj-http-lite-0.2.0.pom from
 clojars
 Retrieving slingshot/slingshot/0.10.3/slingshot-0.10.3.pom from clojars
 Retrieving cheshire/cheshire/4.0.3/cheshire-4.0.3.pom from clojars
 Retrieving
 com/fasterxml/jackson/core/jackson-core/2.0.6/jackson-core-2.0.6.pom from
 central
 Retrieving
 com/fasterxml/jackson/dataformat/jackson-dataformat-smile/2.0.6/jackson-dataformat-smile-2.0.6.pom
 from central
 Retrieving
 com/fasterxml/jackson/core/jackson-core/2.0.6/jackson-core-2.0.6.jar from
 central
 Retrieving
 com/fasterxml/jackson/dataformat/jackson-dataformat-smile/2.0.6/jackson-dataformat-smile-2.0.6.jar
 from central
 Retrieving clj-http-lite/clj-http-lite/0.2.0/clj-http-lite-0.2.0.jar from
 clojars
 Retrieving slingshot/slingshot/0.10.3/slingshot-0.10.3.jar from clojars
 Retrieving cheshire/cheshire/4.0.3/cheshire-4.0.3.jar from clojars
 Retrieving org/thnetos/cd-client/0.3.6/cd-client-0.3.6.jar from clojars
 nREPL server started on port 53475
 REPL-y 0.1.10
 Clojure 1.4.0
 Exit: Control+D or (exit) or (quit)
 Commands: (user/help)
 Docs: (doc function-name-here)
   (find-doc part-of-name-here)
   Source: (source function-name-here)
   (user/sourcery function-name-here)
  Javadoc: (javadoc java-object-or-class-here)
 Examples from clojuredocs.org: [clojuredocs or cdoc]
   (user/clojuredocs name-here)
   (user/clojuredocs ns-here name-here)
 user= (in-ns 'goldberg.variations.canone-alla-quarta)
 #Namespace goldberg.variations.canone-alla-quarta
 goldberg.variations.canone-alla-quarta= (beep)
 *CompilerException java.lang.RuntimeException: Unable to resolve symbol:
 beep in this context, compiling:(NO_SOURCE_PATH:1) *

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




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




Re: trying out overtone, leipzip, chris-ford's functional composition code

2013-08-04 Thread Geoffrey Knauth
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 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.




Re: the snake game with core.async and swing

2013-08-04 Thread Daniel
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 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.




FYI: Intro to Clojure video from Java Tech Boise and Justin Reed

2013-08-04 Thread John Conti
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 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.




Incanter 1.5.2 has been released

2013-08-04 Thread Alex Ott
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 (Russian)
Skype: alex.ott

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




Re: FYI: Intro to Clojure video from Java Tech Boise and Justin Reed

2013-08-04 Thread Jim - FooBar();

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 *because* it 
is a Lisp.


http://youtu.be/CvRGJGK09tc

Cheers,
John

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




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




Re: FYI: Intro to Clojure video from Java Tech Boise and Justin Reed

2013-08-04 Thread Frank Hale
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 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 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+unsubscribe@**googlegroups.comclojure%2bunsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/**group/clojure?hl=enhttp://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+unsubscribe@**googlegroups.comclojure%2bunsubscr...@googlegroups.com
 .
 For more options, visit 
 https://groups.google.com/**groups/opt_outhttps://groups.google.com/groups/opt_out
 .



 --
 --
 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+unsubscribe@**googlegroups.comclojure%2bunsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/**group/clojure?hl=enhttp://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+unsubscribe@**googlegroups.comclojure%2bunsubscr...@googlegroups.com
 .
 For more options, visit 
 https://groups.google.com/**groups/opt_outhttps://groups.google.com/groups/opt_out
 .




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




Re: FYI: Intro to Clojure video from Java Tech Boise and Justin Reed

2013-08-04 Thread Jim - FooBar();
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:


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 *because* it is a Lisp.

http://youtu.be/CvRGJGK09tc

Cheers,
John

-- 
-- 
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
mailto: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
mailto:clojure%2bunsubscr...@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
mailto:clojure%2bunsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.



-- 
-- 
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
mailto: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
mailto:clojure%2bunsubscr...@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
mailto:clojure%2bunsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.



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




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




Re: Incanter 1.5.2 has been released

2013-08-04 Thread Bruce Durling
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
 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 (Russian)
 Skype: alex.ott

 --

 ---
 You received this message because you are subscribed to the Google Groups
 Incanter group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to incanter+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/groups/opt_out.





-- 
@otfrom | CTO  co-founder @MastodonC | mastodonc.com
See recent coverage of us in the Economist http://econ.st/WeTd2i and
the Financial Times http://on.ft.com/T154BA

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




Re: Can we please deprecate the :use directive ?

2013-08-04 Thread Anthony Grimes
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 objectively bad. Not much 
justification you can give me that'll make it unbad. But that isn't what 
this is about. Deprecating :use doesn't make doing the aforementioned bad 
thing impossible, and :refer :all was added to require for that specific 
purpose. :require still lets you do bad things if you really want to. All 
we're doing by deprecating :use is removing cruft and making things less 
complicated for new people. We currently have two things, and one of them 
does all the things the other one does and more, yet we still have both of 
them.

Just my $0.02.

On Tuesday, July 23, 2013 8:50:50 AM UTC-7, Greg wrote:

 I think I read somewhere that :use is no longer encouraged, but I could be 
 mistaken. 

 From what I've read, it seems like most people agree that Clojure has too 
 many ways of including/importing/referencing/requiring/using things: 


 http://blog.8thlight.com/colin-jones/2010/12/05/clojure-libs-and-namespaces-require-use-import-and-ns.html
  

 The above gives a very nice explanation of all the various difference, but 
 it also acknowledges their complexity. 

 Since :use uses :require, and since :require can do everything that :use 
 can, can we simplify Clojure programming a bit for newcomers by deprecating 
 the use of :use? The situation in ClojureScript is even worse because it 
 adds :require-macros on top of all the other ways of including files. 

 Ideally, it would be awesome if there was just a single directive for 
 everything, but perhaps there's some complicated low-level reason why 
 that's not possible. :-\ 

 Thoughts? 

 Thanks, 
 Greg 

 P.S. If this has already been brought up you have my sincere apologies. 

 -- 
 Please do not email me anything that you are not comfortable also sharing 
 with the NSA. 



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




Re: Incanter 1.5.2 has been released

2013-08-04 Thread Tom Faulhaber
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 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 (Russian)
 Skype: alex.ott 


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




Re: [ANN] Nightcode, an IDE for Clojure and Java

2013-08-04 Thread Matthew Chadwick
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 Oakes wrote:

 I’ve been working on a simple IDE for the past few months. It started as 
 an attempt to add Leiningen integration to Clooj, but eventually I decided 
 to start a new project from scratch. It is very alpha-quality, so please be 
 gentle:

 http://nightcode.info/

 Here’s what it has:

 -Written in Clojure (the UI is written with seesaw)

 -Built-in copy of Leiningen to build Clojure and pure-Java projects

 -Built-in templates for several common types of Clojure and Java projects

 -Always-on REPL in the corner to try Clojure commands

 -Android integration (includes the lein-droid plugin, LogCat output, etc)

 -ClojureScript integration (includes the lein-cljsbuild plugin)

 -Cool looking dark theme, because that’s trendy these days

 Here’s what it’s missing:

 -Fast build times (it launches Leiningen in a separate process, which is 
 slw...I plan on fixing this and would love any help)

 -Important editing features (code completion, text replace, etc)

 -Quick switching between recent files

 -Jump to definition, built-in documentation

 -Integration between editor and REPL (eval form or entire file)

 -Integration with git
 -Many other things -- please give me your thoughts!


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




Re: [ANN] Nightcode, an IDE for Clojure and Java

2013-08-04 Thread Frank Hale
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 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 Oakes wrote:

 I’ve been working on a simple IDE for the past few months. It started as
 an attempt to add Leiningen integration to Clooj, but eventually I decided
 to start a new project from scratch. It is very alpha-quality, so please be
 gentle:

 http://nightcode.info/

 Here’s what it has:

 -Written in Clojure (the UI is written with seesaw)

 -Built-in copy of Leiningen to build Clojure and pure-Java projects

 -Built-in templates for several common types of Clojure and Java projects

 -Always-on REPL in the corner to try Clojure commands

 -Android integration (includes the lein-droid plugin, LogCat output, etc)

 -ClojureScript integration (includes the lein-cljsbuild plugin)

 -Cool looking dark theme, because that’s trendy these days

 Here’s what it’s missing:

 -Fast build times (it launches Leiningen in a separate process, which is
 slw...I plan on fixing this and would love any help)

 -Important editing features (code completion, text replace, etc)

 -Quick switching between recent files

 -Jump to definition, built-in documentation

 -Integration between editor and REPL (eval form or entire file)

 -Integration with git
 -Many other things -- please give me your thoughts!

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




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