ANN Langohr 2.1.0 is released

2014-01-07 Thread Michael Klishin
Langohr [1] is a small, feature complete Clojure client for RabbitMQ.

2.1.0 is a bug fix and usability improvements release.

Release notes:
http://blog.clojurewerkz.org/blog/2014/01/07/langohr-2-dot-1-0-is-released/

1. http://clojurerabbitmq.info
-- 
MK

http://github.com/michaelklishin
http://twitter.com/michaelklishin

-- 
-- 
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: ClojureScript integration with Emacs/Cider ?

2014-01-07 Thread Alexandru Nedelcu
On Mon, Jan 6, 2014 at 11:10 PM, Colin Fleming
colin.mailingl...@gmail.comwrote:

 Since Cursive (http://cursiveclojure.com) resolves everything statically
 from source, ClojureScript completion and navigation works for most
 symbols. There are still a lot that it doesn't know about since
 cljs-specific functionality is still pretty low, so js/* symbols have no
 support, and any functions included from Closure are not found either. But
 for pure cljs it should work pretty well. There are quite a few people
 using Cursive for cljs dev now, despite the slightly embarrassing lack of
 explicit support :-)



Hi Colin,

I just installed Cursive and looks very promising. I'll try using it.

Do you plan to explicitly support ClojureScript? Do you have an ETA? That
would be awesome, because viewing the implementation of Clojure's core libs
is very valuable and from what I understand, there are differences between
Clojure and ClojureScript (e.g. protocols are at the bottom in
ClojureScript) and it would be valuable if I could click on a function and
see its ClojureScript specific code and documentation. Also handling the
Javascript interop would be awesome too.

Thanks,

-- 
Alexandru Nedelcu
www.bionicspirit.com

PGP Public Key:
https://bionicspirit.com/key.aexpk

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


Hadoop Online Training in Canada

2014-01-07 Thread Online Training
Hadoop Online Training by Sunitlabs We are providing excellent Hadoop 
Training by real-time IT industry experts Our training methodology is very 
unique Our Course Content covers all the in-depth critical scenarios. We 
have completed more than 200 Hadoop batches through Online Hadoop Training 
program, Our Hadop Classes covers all the real time scenarios, and its 
completely on Hands-on for each and every session.Please call us for the 
Demo Classes we have regular batches and weekend batches.

Contact Number : India :+91 9030928000,

Email : i...@sunitlabs.com ,

Web: http://www.sunitlabs.com/hadoop-online-training/

-- 
-- 
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: [ClojureScript] Re: ANN: Om, a ClojureScript binding to Facebook's React

2014-01-07 Thread David Nolen
If you install locally you need to depend on

[om 0.1.6-SNAPSHOT]

I did make a mistake and accidentally did not push the previous version to
Clojars which you can depend on as specified in the README:

[om 0.1.5]


On Tue, Jan 7, 2014 at 6:29 AM, Rick Walsh rick.wa...@gmail.com wrote:

 Hi Guys,

 So... I'm trying to compile a cljs project with OM.

 As in instructed above I've:

 cloned the repo:

 git clone https://github.com/swannodette/om.git

 Installed:

 lein install

 (Output shown below)

 Retrieving org/clojure/clojurescript/0.0-2138/clojurescript-0.0-2138.pom
 from central
 Retrieving
 org/clojure/core.async/0.1.267.0-0d7780-alpha/core.async-0.1.267.0-0d7780-alpha.pom
 from central
 Retrieving com/facebook/react/0.8.0.1/react-0.8.0.1.pom from clojars
 Retrieving
 org/clojure/core.async/0.1.267.0-0d7780-alpha/core.async-0.1.267.0-0d7780-alpha.jar
 from central
 Retrieving org/clojure/clojurescript/0.0-2138/clojurescript-0.0-2138.jar
 from central
 Retrieving com/facebook/react/0.8.0.1/react-0.8.0.1.jar from clojars
 Created G:\om\target\om-0.1.6-SNAPSHOT.jar

 I then added to my projects cljs a dependency of [om 0.1.6]

 I still get the following error on compilation:

 Could not find artifact om:om:jar:0.1.6 in central (
 http://repo1.maven.org/maven2/)
 Could not find artifact om:om:jar:0.1.6 in clojars (
 https://clojars.org/repo/)

 I'm clearly being terribly stupid.

 Any suggestions?

 --
 Note that posts from new members are moderated - please be patient with
 your first post.
 ---
 You received this message because you are subscribed to the Google Groups
 ClojureScript group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to clojurescript+unsubscr...@googlegroups.com.
 To post to this group, send email to clojurescr...@googlegroups.com.
 Visit this group at http://groups.google.com/group/clojurescript.


-- 
-- 
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: Namespaces in waiting

2014-01-07 Thread Alex Ott
You can use find-namespaces from
http://clojure.github.io/tools.namespace/#clojure.tools.namespace.find to +
clojure.java.classpath to get a list of all namespaces in current
classpath...


On Mon, Jan 6, 2014 at 7:45 PM, Stephen C. Gilardi scgila...@gmail.comwrote:


 On Jan 1, 2014, at 3:26 PM, Dave Tenny dave.te...@gmail.com wrote:

  When I use 'lein repl' in some project context and get to the REPL
 prompt, there's an available but as yet not ... present ... namespace, i.e.
 (all-ns) won't list the namespace(s) created in the lein project directory
 tree.
 
  Is there some API I can use to see a list these available but not active
 namespaces?

 I’m not aware of one.

  I'm guessing that looking at what's on the class path doesn't
 necessarily tell me what namespaces might be USE-able via (use 'x).

 Walking the classpath including the contents of jar files would be a way
 to construct such a list of USE-able (or REQUIRE-able) namespaces. It would
 involve  traversing the directory structure under each entry in the
 classpath and reading at least the first ns form in each candidate file (or
 jar entry).

 —Steve

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




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


Are all clojure namespaces loaded in repl by default?

2014-01-07 Thread John Kida
I am using Clojure 1.5, and reading a book on Clojure 1.3. I am reading 
over the namespaces chapters but I appears in my repl I can already access 
everything with its fully qualified name without a require. For example on 
this website, namespaces 
examplehttp://blog.8thlight.com/colin-jones/2010/12/05/clojure-libs-and-namespaces-require-use-import-and-ns.htmlthey
 show how if you try to use (clojure.string.split) without first using 
require you get a class not found exception... but it works fine for me.

I also am able to use (clojure.test/is) , which makes sense to me why would 
i need to require it if I am accessing its fully qualified name... but i 
suppose there probably is a good reason.. I am just wondering why I dont 
need to require any of these libs but examples in the books and online show 
I do. I am assuming something changed in a latest version.

Can someone please explain for me, since my references appear to be 
outdated.

-- 
-- 
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: Are all clojure namespaces loaded in repl by default?

2014-01-07 Thread Jim - FooBar();
The namespaces you mentioned have already been loaded and thus you can 
use the fully qualified name . What if you try 
(clojure.inspector/inspect [1 2 3]) in a bare repl???


ClassNotFoundException clojure.inspector java.net.URLClassLoader$1.run 
(URLClassLoader.java:366)


I hope that clarifies it a bit :)

Jim


On 07/01/14 14:55, John Kida wrote:
I am using Clojure 1.5, and reading a book on Clojure 1.3. I am 
reading over the namespaces chapters but I appears in my repl I can 
already access everything with its fully qualified name without a 
require. For example on this website, namespaces example 
http://blog.8thlight.com/colin-jones/2010/12/05/clojure-libs-and-namespaces-require-use-import-and-ns.html 
they show how if you try to use (clojure.string.split) without first 
using require you get a class not found exception... but it works fine 
for me.


I also am able to use (clojure.test/is) , which makes sense to me why 
would i need to require it if I am accessing its fully qualified 
name... but i suppose there probably is a good reason.. I am just 
wondering why I dont need to require any of these libs but examples in 
the books and online show I do. I am assuming something changed in a 
latest version.


Can someone please explain for me, since my references appear to be 
outdated.

--
--
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: Are all clojure namespaces loaded in repl by default?

2014-01-07 Thread John Kida
Thanks, that does work as expected now.

Is it simply documented somewhere what clojure preloads for you? Or is 
there a way to reflect this?

I found the (all-ns) command, not sure if there is a better way to view 
this info. Are the preloaded classed documented on the clojure site?

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


[ANN] Yesql 0.3.0 - Clojure SQL queries rethought.

2014-01-07 Thread Kris Jenkins
Yesql is a simple library for blending SQL queries  Clojure together, 
cleanly. Here's how it workshttps://github.com/krisajenkins/yesql#rationale, 
and how to use it https://github.com/krisajenkins/yesql#example-usage.

Project: https://github.com/krisajenkins/yesql
Leiningen: [yesql 0.3.0]

New since v0.2.x: Support for multiple queries in a single file.

Feedback welcomed,
Kris

-- 
-- 
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: Clojure.org: Concurrency screencast 404

2014-01-07 Thread abhi
http://clojure.org/concurrent_programming

Apologies for the delayed response.


On Fri, Dec 27, 2013 at 1:41 AM, Alex Miller a...@puredanger.com wrote:

 Which page had the link?

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




-- 
Queer little twists and quirks go into the making of an individual. To
suppress them all and follow clock and calendar and creed until the
individual is lost in the neutral gray of the host is to be less than
true to our inheritance Life, that gorgeous quality of life, is
not accomplished by following another man's rules. It is true we have
the same hungers and same thirsts, but they are for different things
and in different ways and in different seasons Lay down your own
day, follow it to its noon, your own noon, or you will sit in an outer
hall listening to the chimes but never reaching high enough to strike
your own.
   - Angelo Patri

-- 
-- 
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: Clojure.org: Concurrency screencast 404

2014-01-07 Thread abhi
Oh. Looks like the link has been updated already. Missed that earlier.


On Tue, Jan 7, 2014 at 9:49 PM, abhi abhiji...@gmail.com wrote:

 http://clojure.org/concurrent_programming

 Apologies for the delayed response.


 On Fri, Dec 27, 2013 at 1:41 AM, Alex Miller a...@puredanger.com wrote:

 Which page had the link?

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




 --
 Queer little twists and quirks go into the making of an individual. To
 suppress them all and follow clock and calendar and creed until the
 individual is lost in the neutral gray of the host is to be less than
 true to our inheritance Life, that gorgeous quality of life, is
 not accomplished by following another man's rules. It is true we have
 the same hungers and same thirsts, but they are for different things
 and in different ways and in different seasons Lay down your own
 day, follow it to its noon, your own noon, or you will sit in an outer
 hall listening to the chimes but never reaching high enough to strike
 your own.
- Angelo Patri




-- 
Queer little twists and quirks go into the making of an individual. To
suppress them all and follow clock and calendar and creed until the
individual is lost in the neutral gray of the host is to be less than
true to our inheritance Life, that gorgeous quality of life, is
not accomplished by following another man's rules. It is true we have
the same hungers and same thirsts, but they are for different things
and in different ways and in different seasons Lay down your own
day, follow it to its noon, your own noon, or you will sit in an outer
hall listening to the chimes but never reaching high enough to strike
your own.
   - Angelo Patri

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


ANN Route One 1.0.0 is released

2014-01-07 Thread Michael Klishin
Route One [1] is a small library that generates URLs/URIs from routes
and parameters.

Release notes:
http://blog.clojurewerkz.org/blog/2014/01/04/route-one-1-dot-0-0-is-released/

1. https://github.com/clojurewerkz/route-one
-- 
MK

http://github.com/michaelklishin
http://twitter.com/michaelklishin

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


ANN Validateur 1.6.0 is released

2014-01-07 Thread Michael Klishin
Validateur [1] is a Clojure data validation library.

Release notes:
http://blog.clojurewerkz.org/blog/2014/01/04/validateur-1-dot-6-0-is-released/

1. http://clojurevalidations.info
-- 
MK

http://github.com/michaelklishin
http://twitter.com/michaelklishin

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


ANN Machine Head 1.0.0-beta6

2014-01-07 Thread Michael Klishin
Machine Head [1] is a small Clojure MQTT client.

Release notes:
http://blog.clojurewerkz.org/blog/2014/01/07/machine-head-1-dot-0-0-beta6-is-released/

1. http://clojuremqtt.info
-- 
MK

http://github.com/michaelklishin
http://twitter.com/michaelklishin

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


ANN Meltdown 1.0.0-beta3 is released

2014-01-07 Thread Michael Klishin
Meltdown [1] is a Clojure interface to Reactor [2].

Release notes:
http://blog.clojurewerkz.org/blog/2014/01/07/meltdown-1-dot-0-0-beta3-is-released/

1. http://github.com/clojurewerkz/meltdown
2.
https://spring.io/blog/2013/11/12/it-can-t-just-be-big-data-it-has-to-be-fast-data-reactor-1-0-goes-ga
-- 
MK

http://github.com/michaelklishin
http://twitter.com/michaelklishin

-- 
-- 
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: Are all clojure namespaces loaded in repl by default?

2014-01-07 Thread Jim - FooBar();
Generally speaking, you wouldn't care what has been loaded and what 
hasn't and you certainly should not rely on something having been 
implicitly loaded.
The current best practice is to use :require in conjunction with :refer 
or :as, in all  your ns declarations, thus avoiding the need for fully 
qualified names.


Also, it needs to be noted that strictly speaking, Clojure doesn't 
preload anything for you...these namespaces just happen to have been 
loaded because Clojure needed them during bootstrap...Nothing really 
happens for the user - at least this is my understanding.


Jim


On 07/01/14 15:44, John Kida wrote:

Thanks, that does work as expected now.

Is it simply documented somewhere what clojure preloads for you? Or is 
there a way to reflect this?


I found the (all-ns) command, not sure if there is a better way to 
view this info. Are the preloaded classed documented on the clojure site?

--
--
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: Clojure.org: Concurrency screencast 404

2014-01-07 Thread Alex Miller
Yeah, I found it. :) 

On Tuesday, January 7, 2014 10:21:24 AM UTC-6, Abhijith wrote:

 Oh. Looks like the link has been updated already. Missed that earlier.


 On Tue, Jan 7, 2014 at 9:49 PM, abhi abhi...@gmail.com javascript:wrote:

 http://clojure.org/concurrent_programming

 Apologies for the delayed response.


 On Fri, Dec 27, 2013 at 1:41 AM, Alex Miller 
 al...@puredanger.comjavascript:
  wrote:

 Which page had the link?

 --
 --
 You received this message because you are subscribed to the Google
 Groups Clojure group.
 To post to this group, send email to clo...@googlegroups.comjavascript:
 Note that posts from new members are moderated - please be patient with 
 your first post.
 To unsubscribe from this group, send email to
 clojure+u...@googlegroups.com javascript:
 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+u...@googlegroups.com javascript:.
 For more options, visit https://groups.google.com/groups/opt_out.




 -- 
 Queer little twists and quirks go into the making of an individual. To
 suppress them all and follow clock and calendar and creed until the
 individual is lost in the neutral gray of the host is to be less than
 true to our inheritance Life, that gorgeous quality of life, is
 not accomplished by following another man's rules. It is true we have
 the same hungers and same thirsts, but they are for different things
 and in different ways and in different seasons Lay down your own
 day, follow it to its noon, your own noon, or you will sit in an outer
 hall listening to the chimes but never reaching high enough to strike
 your own.
- Angelo Patri
  



 -- 
 Queer little twists and quirks go into the making of an individual. To
 suppress them all and follow clock and calendar and creed until the
 individual is lost in the neutral gray of the host is to be less than
 true to our inheritance Life, that gorgeous quality of life, is
 not accomplished by following another man's rules. It is true we have
 the same hungers and same thirsts, but they are for different things
 and in different ways and in different seasons Lay down your own
 day, follow it to its noon, your own noon, or you will sit in an outer
 hall listening to the chimes but never reaching high enough to strike
 your own.
- Angelo Patri
  

-- 
-- 
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] Yesql 0.3.0 - Clojure SQL queries rethought.

2014-01-07 Thread Gary Johnson
defqueries for the win!

Excellent minimal syntax choice, Kris. I'm using yesql in my current work 
project, and it's been a real delight to work with thus far. Being able to 
put multiple queries in one file just makes it that much sweeter.

  ~Gary

On Tuesday, January 7, 2014 10:57:55 AM UTC-5, Kris Jenkins wrote:

 Yesql is a simple library for blending SQL queries  Clojure together, 
 cleanly. Here's how it 
 workshttps://github.com/krisajenkins/yesql#rationale, 
 and how to use it https://github.com/krisajenkins/yesql#example-usage.

 Project: https://github.com/krisajenkins/yesql
 Leiningen: [yesql 0.3.0]

 New since v0.2.x: Support for multiple queries in a single file.

 Feedback welcomed,
 Kris


-- 
-- 
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] Yesql 0.3.0 - Clojure SQL queries rethought.

2014-01-07 Thread Benjamin Yu
You just gave me a great solution to the sql pain points I've been having.

On Tue, Jan 7, 2014 at 10:30 AM, Gary Johnson gwjoh...@uvm.edu wrote:
 defqueries for the win!

 Excellent minimal syntax choice, Kris. I'm using yesql in my current work
 project, and it's been a real delight to work with thus far. Being able to
 put multiple queries in one file just makes it that much sweeter.

   ~Gary


 On Tuesday, January 7, 2014 10:57:55 AM UTC-5, Kris Jenkins wrote:

 Yesql is a simple library for blending SQL queries  Clojure together,
 cleanly. Here's how it works, and how to use it.

 Project: https://github.com/krisajenkins/yesql
 Leiningen: [yesql 0.3.0]

 New since v0.2.x: Support for multiple queries in a single file.

 Feedback welcomed,
 Kris

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


clojure.core.async java.lang.IllegalArgumentException

2014-01-07 Thread Gerrit Jansen van Vuuren
Hi,

I'm getting the following error over and over again in my code, I've tried 
adding in some print statement and suddenly the error went away and my code 
worked again, then today I got the same error yet again. I suspect this 
might be a race condition or something similar. I can take the same library 
from the repl and it works, but when I use it from inside another app I 
suddenly get this problem error only at certain times. 

I've removed all close! statements from my code and I still get the same 
error :(, 

The code 
is 
https://github.com/gerritjvv/clj-tcp/blob/master/clj-tcp/src/clj_tcp/client.clj

Exception in thread async-dispatch-6 java.lang.IllegalArgumentException: 
No implementation of method: :close! of protocol: 
#'clojure.core.async.impl.protocols/Channel found for class: nil
at clojure.core$_cache_protocol_fn.invoke(core_deftype.clj:541)
at 
clojure.core.async.impl.protocols$fn__779$G__774__784.invoke(protocols.clj:21)
at 
clojure.core.async.impl.ioc_macros$run_state_machine_wrapped.invoke(ioc_macros.clj:818)
at clj_tcp.client$client$fn__6374.invoke(client.clj:334)
at clojure.lang.AFn.run(AFn.java:24)
at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:724)

Any ideas?





-- 
-- 
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: Contributors needed for Rouge (Clojure on Ruby)

2014-01-07 Thread Rich Morin
On Jan 4, 2014, at 06:43, gvim wrote:
 I have recently moved most of my work to Clojure and ClojureScript but
 neither of these implementations seem suitable for non-http scripting,
 for which I currently use Ruby. So, you can imagine my elation when I
 discovered Rouge which is Clojure implemented on Ruby:


This might be of interest:

  Clojure to Objective-C compiler
  https://github.com/joshaber/clojurem

It's not Ruby, but the start-up time should be better than on the JVM.
It might also be possible to link in MacRuby liobraries, etc.

-r

 -- 
http://www.cfcl.com/rdm   Rich Morin   r...@cfcl.com
http://www.cfcl.com/rdm/resumeSan Bruno, CA, USA   +1 650-873-7841

Software system design, development, and documentation


-- 
-- 
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: clojure.core.async java.lang.IllegalArgumentException

2014-01-07 Thread Luc Prefontaine
You are trying to close a nil 
channel. 

W/O the code it's all I can say :)
Did you check to make sure
you are not trying to handle nil
as a channel ?

Luc P.


 Hi,
 
 I'm getting the following error over and over again in my code, I've tried 
 adding in some print statement and suddenly the error went away and my code 
 worked again, then today I got the same error yet again. I suspect this 
 might be a race condition or something similar. I can take the same library 
 from the repl and it works, but when I use it from inside another app I 
 suddenly get this problem error only at certain times. 
 
 I've removed all close! statements from my code and I still get the same 
 error :(, 
 
 The code 
 is 
 https://github.com/gerritjvv/clj-tcp/blob/master/clj-tcp/src/clj_tcp/client.clj
 
 Exception in thread async-dispatch-6 java.lang.IllegalArgumentException: 
 No implementation of method: :close! of protocol: 
 #'clojure.core.async.impl.protocols/Channel found for class: nil
 at clojure.core$_cache_protocol_fn.invoke(core_deftype.clj:541)
 at 
 clojure.core.async.impl.protocols$fn__779$G__774__784.invoke(protocols.clj:21)
 at 
 clojure.core.async.impl.ioc_macros$run_state_machine_wrapped.invoke(ioc_macros.clj:818)
 at clj_tcp.client$client$fn__6374.invoke(client.clj:334)
 at clojure.lang.AFn.run(AFn.java:24)
 at 
 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
 at 
 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:724)
 
 Any ideas?
 
 
 
 
 
 -- 
 -- 
 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.
 
--
Luc Prefontainelprefonta...@softaddicts.ca sent by ibisMail!

-- 
-- 
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] Yesql 0.3.0 - Clojure SQL queries rethought.

2014-01-07 Thread Luc Prefontaine
This lib is a perfect fit here, we create
adapter plugins for databases 
of various software suppliers.

Being able to load the queries as
resources is absolutely in line
with how we handle these plugins,
as optional configurable dynamically
loadable components.

Combined with views to return
EDN data compliant with our
business model it simplifies the
support of these plugins.

Thank you, great idea :)

Luc P.


 Yesql is a simple library for blending SQL queries  Clojure together, 
 cleanly. Here's how it 
 workshttps://github.com/krisajenkins/yesql#rationale, 
 and how to use it https://github.com/krisajenkins/yesql#example-usage.
 
 Project: https://github.com/krisajenkins/yesql
 Leiningen: [yesql 0.3.0]
 
 New since v0.2.x: Support for multiple queries in a single file.
 
 Feedback welcomed,
 Kris
 
 -- 
 -- 
 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.
 
--
Luc Prefontainelprefonta...@softaddicts.ca sent by ibisMail!

-- 
-- 
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: clojure.core.async java.lang.IllegalArgumentException

2014-01-07 Thread Gerrit Jansen van Vuuren

I've changed all of the go blocks to thread and got an exception that I 
cannot recur over a try catch. mm.. did not get this error in my go block.
removing the recur's over try catch blocks makes the code work now with 
both go and thread. At least this is what I've changed now and the error 
has gone away.



On Tuesday, 7 January 2014 21:55:06 UTC+1, Gerrit Jansen van Vuuren wrote:

 I do not have a single close! statement in my code anywhere. I've double 
 checked with grep -lhr close\! . through my whole codebase and all the 
 projects in it.



 On Tuesday, 7 January 2014 21:05:53 UTC+1, Luc wrote:

 You are trying to close a nil 
 channel. 

 W/O the code it's all I can say :) 
 Did you check to make sure 
 you are not trying to handle nil 
 as a channel ? 

 Luc P. 


  Hi, 
  
  I'm getting the following error over and over again in my code, I've 
 tried 
  adding in some print statement and suddenly the error went away and my 
 code 
  worked again, then today I got the same error yet again. I suspect this 
  might be a race condition or something similar. I can take the same 
 library 
  from the repl and it works, but when I use it from inside another app I 
  suddenly get this problem error only at certain times. 
  
  I've removed all close! statements from my code and I still get the 
 same 
  error :(, 
  
  The code 
  is 
 https://github.com/gerritjvv/clj-tcp/blob/master/clj-tcp/src/clj_tcp/client.clj
  
  
  Exception in thread async-dispatch-6 
 java.lang.IllegalArgumentException: 
  No implementation of method: :close! of protocol: 
  #'clojure.core.async.impl.protocols/Channel found for class: nil 
  at clojure.core$_cache_protocol_fn.invoke(core_deftype.clj:541) 
  at 
  
 clojure.core.async.impl.protocols$fn__779$G__774__784.invoke(protocols.clj:21)
  

  at 
  
 clojure.core.async.impl.ioc_macros$run_state_machine_wrapped.invoke(ioc_macros.clj:818)
  

  at clj_tcp.client$client$fn__6374.invoke(client.clj:334) 
  at clojure.lang.AFn.run(AFn.java:24) 
  at 
  
 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
  

  at 
  
 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
  

  at java.lang.Thread.run(Thread.java:724) 
  
  Any ideas? 
  
  
  
  
  
  -- 
  -- 
  You received this message because you are subscribed to the Google 
  Groups Clojure group. 
  To post to this group, send email to clo...@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+u...@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+u...@googlegroups.com. 
  For more options, visit https://groups.google.com/groups/opt_out. 
  
 -- 
 Luc Prefontainelprefo...@softaddicts.ca sent by ibisMail! 



-- 
-- 
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: clojure.core.async java.lang.IllegalArgumentException

2014-01-07 Thread Luc Prefontaine
Maybe hidden in the go macro
expanded code. I do not have access
to it (iPhone). 

You may want to use macroexpand
and grep on the expansion.

Just take your go block
and wrap it in

(macroexpand '(your form))

Don't forget the quote.

Maybe the expansion will
shed some light. Do not panic
on the look of the expansion,
the code shuffling is kind of 
heavy. 

Luc

 I do not have a single close! statement in my code anywhere. I've double 
 checked with grep -lhr close\! . through my whole codebase and all the 
 projects in it.
 
 
 
 On Tuesday, 7 January 2014 21:05:53 UTC+1, Luc wrote:
 
  You are trying to close a nil 
  channel. 
 
  W/O the code it's all I can say :) 
  Did you check to make sure 
  you are not trying to handle nil 
  as a channel ? 
 
  Luc P. 
 
 
   Hi, 
   
   I'm getting the following error over and over again in my code, I've 
  tried 
   adding in some print statement and suddenly the error went away and my 
  code 
   worked again, then today I got the same error yet again. I suspect this 
   might be a race condition or something similar. I can take the same 
  library 
   from the repl and it works, but when I use it from inside another app I 
   suddenly get this problem error only at certain times. 
   
   I've removed all close! statements from my code and I still get the same 
   error :(, 
   
   The code 
   is 
  https://github.com/gerritjvv/clj-tcp/blob/master/clj-tcp/src/clj_tcp/client.clj
   
   
   Exception in thread async-dispatch-6 
  java.lang.IllegalArgumentException: 
   No implementation of method: :close! of protocol: 
   #'clojure.core.async.impl.protocols/Channel found for class: nil 
   at clojure.core$_cache_protocol_fn.invoke(core_deftype.clj:541) 
   at 
   
  clojure.core.async.impl.protocols$fn__779$G__774__784.invoke(protocols.clj:21)
   
 
   at 
   
  clojure.core.async.impl.ioc_macros$run_state_machine_wrapped.invoke(ioc_macros.clj:818)
   
 
   at clj_tcp.client$client$fn__6374.invoke(client.clj:334) 
   at clojure.lang.AFn.run(AFn.java:24) 
   at 
   
  java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
   
 
   at 
   
  java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
   
 
   at java.lang.Thread.run(Thread.java:724) 
   
   Any ideas? 
   
   
   
   
   
   -- 
   -- 
   You received this message because you are subscribed to the Google 
   Groups Clojure group. 
   To post to this group, send email to clo...@googlegroups.comjavascript: 
   Note that posts from new members are moderated - please be patient with 
  your first post. 
   To unsubscribe from this group, send email to 
   clojure+u...@googlegroups.com javascript: 
   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+u...@googlegroups.com javascript:. 
   For more options, visit https://groups.google.com/groups/opt_out. 
   
  -- 
  Luc Prefontainelprefo...@softaddicts.ca javascript: sent by ibisMail! 
 
 
 -- 
 -- 
 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.
 
--
Luc Prefontainelprefonta...@softaddicts.ca sent by ibisMail!

-- 
-- 
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: clojure.core.async java.lang.IllegalArgumentException

2014-01-07 Thread Luc Prefontaine
Just got your email, I remember
vaguely about this issue maybe when
Tim did is presentation at fhe
Conj.

Or maybe on the mailing list.

You may try what I described
in my previous email and make
your mind about this.

Luc P.
 
 I've changed all of the go blocks to thread and got an exception that I 
 cannot recur over a try catch. mm.. did not get this error in my go block.
 removing the recur's over try catch blocks makes the code work now with 
 both go and thread. At least this is what I've changed now and the error 
 has gone away.
 
 
 
 On Tuesday, 7 January 2014 21:55:06 UTC+1, Gerrit Jansen van Vuuren wrote:
 
  I do not have a single close! statement in my code anywhere. I've double 
  checked with grep -lhr close\! . through my whole codebase and all the 
  projects in it.
 
 
 
  On Tuesday, 7 January 2014 21:05:53 UTC+1, Luc wrote:
 
  You are trying to close a nil 
  channel. 
 
  W/O the code it's all I can say :) 
  Did you check to make sure 
  you are not trying to handle nil 
  as a channel ? 
 
  Luc P. 
 
 
   Hi, 
   
   I'm getting the following error over and over again in my code, I've 
  tried 
   adding in some print statement and suddenly the error went away and my 
  code 
   worked again, then today I got the same error yet again. I suspect this 
   might be a race condition or something similar. I can take the same 
  library 
   from the repl and it works, but when I use it from inside another app I 
   suddenly get this problem error only at certain times. 
   
   I've removed all close! statements from my code and I still get the 
  same 
   error :(, 
   
   The code 
   is 
  https://github.com/gerritjvv/clj-tcp/blob/master/clj-tcp/src/clj_tcp/client.clj
   
   
   Exception in thread async-dispatch-6 
  java.lang.IllegalArgumentException: 
   No implementation of method: :close! of protocol: 
   #'clojure.core.async.impl.protocols/Channel found for class: nil 
   at clojure.core$_cache_protocol_fn.invoke(core_deftype.clj:541) 
   at 
   
  clojure.core.async.impl.protocols$fn__779$G__774__784.invoke(protocols.clj:21)
   
 
   at 
   
  clojure.core.async.impl.ioc_macros$run_state_machine_wrapped.invoke(ioc_macros.clj:818)
   
 
   at clj_tcp.client$client$fn__6374.invoke(client.clj:334) 
   at clojure.lang.AFn.run(AFn.java:24) 
   at 
   
  java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
   
 
   at 
   
  java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
   
 
   at java.lang.Thread.run(Thread.java:724) 
   
   Any ideas? 
   
   
   
   
   
   -- 
   -- 
   You received this message because you are subscribed to the Google 
   Groups Clojure group. 
   To post to this group, send email to clo...@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+u...@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+u...@googlegroups.com. 
   For more options, visit https://groups.google.com/groups/opt_out. 
   
  -- 
  Luc Prefontainelprefo...@softaddicts.ca sent by ibisMail! 
 
 
 
 -- 
 -- 
 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.
 
--
Luc Prefontainelprefonta...@softaddicts.ca sent by ibisMail!

-- 
-- 
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: clojure.core.async java.lang.IllegalArgumentException

2014-01-07 Thread Timothy Baldridge
Like normal clojure code, gos don't support a recur that jumps out through
a try. However, the go macro should be patched to bring that to the
attention of the user.

Timothy


On Tue, Jan 7, 2014 at 2:22 PM, Luc Prefontaine lprefonta...@softaddicts.ca
 wrote:

 Just got your email, I remember
 vaguely about this issue maybe when
 Tim did is presentation at fhe
 Conj.

 Or maybe on the mailing list.

 You may try what I described
 in my previous email and make
 your mind about this.

 Luc P.
 
  I've changed all of the go blocks to thread and got an exception that I
  cannot recur over a try catch. mm.. did not get this error in my go
 block.
  removing the recur's over try catch blocks makes the code work now with
  both go and thread. At least this is what I've changed now and the error
  has gone away.
 
 
 
  On Tuesday, 7 January 2014 21:55:06 UTC+1, Gerrit Jansen van Vuuren
 wrote:
  
   I do not have a single close! statement in my code anywhere. I've
 double
   checked with grep -lhr close\! . through my whole codebase and all
 the
   projects in it.
  
  
  
   On Tuesday, 7 January 2014 21:05:53 UTC+1, Luc wrote:
  
   You are trying to close a nil
   channel.
  
   W/O the code it's all I can say :)
   Did you check to make sure
   you are not trying to handle nil
   as a channel ?
  
   Luc P.
  
  
Hi,
   
I'm getting the following error over and over again in my code, I've
   tried
adding in some print statement and suddenly the error went away and
 my
   code
worked again, then today I got the same error yet again. I suspect
 this
might be a race condition or something similar. I can take the same
   library
from the repl and it works, but when I use it from inside another
 app I
suddenly get this problem error only at certain times.
   
I've removed all close! statements from my code and I still get the
   same
error :(,
   
The code
is
  
 https://github.com/gerritjvv/clj-tcp/blob/master/clj-tcp/src/clj_tcp/client.clj
   
Exception in thread async-dispatch-6
   java.lang.IllegalArgumentException:
No implementation of method: :close! of protocol:
#'clojure.core.async.impl.protocols/Channel found for class: nil
at clojure.core$_cache_protocol_fn.invoke(core_deftype.clj:541)
at
   
  
 clojure.core.async.impl.protocols$fn__779$G__774__784.invoke(protocols.clj:21)
  
at
   
  
 clojure.core.async.impl.ioc_macros$run_state_machine_wrapped.invoke(ioc_macros.clj:818)
  
at clj_tcp.client$client$fn__6374.invoke(client.clj:334)
at clojure.lang.AFn.run(AFn.java:24)
at
   
  
 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
  
at
   
  
 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
  
at java.lang.Thread.run(Thread.java:724)
   
Any ideas?
   
   
   
   
   
--
--
You received this message because you are subscribed to the Google
Groups Clojure group.
To post to this group, send email to clo...@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+u...@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+u...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
   
   --
   Luc Prefontainelprefo...@softaddicts.ca sent by ibisMail!
  
  
 
  --
  --
  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.
 
 --
 Luc Prefontainelprefonta...@softaddicts.ca sent by ibisMail!

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

[ANN] jnanomsg 0.2.0 - Clojure and Java bindings for nanomsg.

2014-01-07 Thread Andrey Antukh
Clojure and Java bindings for nanomsg[1] (build on top of JNA)

nanomsg[1] is a socket library that provides common communication patterns.
It aims to make the networking layer fast, scalable, and easy to use.

This is a first announcement of this library with 0.2 version! 0.1
version was just a proof of concept.

Github: https://github.com/niwibe/jnanomsg
Doc: http://niwibe.github.io/jnanomsg/

[1]: http://nanomsg.org/

-- 
Andrey Antukh - Андрей Антух - n...@niwi.be
http://www.niwi.be http://www.niwi.be/about.html
https://github.com/niwibe

-- 
-- 
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: ClojureScript integration with Emacs/Cider ?

2014-01-07 Thread Colin Fleming
Great, let me know if you have any questions. I'm definitely planning
ClojureScript support sometime soon. I think most of the symbol resolution
for core cljs should work (since it's mostly the same as clj) for for pure
cljs (including the core libs) everything at
http://cursiveclojure.com/userguide/documentation.html should work. If you
see anything that's not working either let me know directly or we have an
issue tracker at https://github.com/cursiveclojure/cursive/issues.

I'm also planning to handle JS interop but that's tricky because that
support is only present in IntelliJ Ultimate. I'm still working out how to
handle that but it's definitely on the roadmap.


On 8 January 2014 00:26, Alexandru Nedelcu a...@bionicspirit.com wrote:

 On Mon, Jan 6, 2014 at 11:10 PM, Colin Fleming 
 colin.mailingl...@gmail.com wrote:

 Since Cursive (http://cursiveclojure.com) resolves everything statically
 from source, ClojureScript completion and navigation works for most
 symbols. There are still a lot that it doesn't know about since
 cljs-specific functionality is still pretty low, so js/* symbols have no
 support, and any functions included from Closure are not found either. But
 for pure cljs it should work pretty well. There are quite a few people
 using Cursive for cljs dev now, despite the slightly embarrassing lack of
 explicit support :-)



 Hi Colin,

 I just installed Cursive and looks very promising. I'll try using it.

 Do you plan to explicitly support ClojureScript? Do you have an ETA? That
 would be awesome, because viewing the implementation of Clojure's core libs
 is very valuable and from what I understand, there are differences between
 Clojure and ClojureScript (e.g. protocols are at the bottom in
 ClojureScript) and it would be valuable if I could click on a function and
 see its ClojureScript specific code and documentation. Also handling the
 Javascript interop would be awesome too.

 Thanks,

 --
 Alexandru Nedelcu
 www.bionicspirit.com

 PGP Public Key:
 https://bionicspirit.com/key.aexpk

 --
 --
 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: Namespaces in waiting

2014-01-07 Thread Dave Tenny
Thanks for the pointer.  This appears to work solely off the clojure source
and may be very useful.  It raises all kinds of non-namespace-related
questions for me though that I'll ask in another topic.


On Tue, Jan 7, 2014 at 9:02 AM, Alex Ott alex...@gmail.com wrote:

 You can use find-namespaces from
 http://clojure.github.io/tools.namespace/#clojure.tools.namespace.find to
 + clojure.java.classpath to get a list of all namespaces in current
 classpath...


 On Mon, Jan 6, 2014 at 7:45 PM, Stephen C. Gilardi scgila...@gmail.comwrote:


 On Jan 1, 2014, at 3:26 PM, Dave Tenny dave.te...@gmail.com wrote:

  When I use 'lein repl' in some project context and get to the REPL
 prompt, there's an available but as yet not ... present ... namespace, i.e.
 (all-ns) won't list the namespace(s) created in the lein project directory
 tree.
 
  Is there some API I can use to see a list these available but not
 active namespaces?

 I’m not aware of one.

  I'm guessing that looking at what's on the class path doesn't
 necessarily tell me what namespaces might be USE-able via (use 'x).

 Walking the classpath including the contents of jar files would be a way
 to construct such a list of USE-able (or REQUIRE-able) namespaces. It would
 involve  traversing the directory structure under each entry in the
 classpath and reading at least the first ns form in each candidate file (or
 jar entry).

 —Steve

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




 --
 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 a topic in the
 Google Groups Clojure group.
 To unsubscribe from this topic, visit
 https://groups.google.com/d/topic/clojure/mu25hM3Cw4w/unsubscribe.
 To unsubscribe from this group and all its topics, 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.


Clojure deployment questions w.r.t. jars, clojure source files, compiled class files

2014-01-07 Thread Dave Tenny
So if I sample some clojure jars in my local maven .m2 directory, most of 
the jar files have only clojure code, and a project.clj.
If I look at the org.clojure project there, it has many java class files, 
what appear to be corresponding clojure source files, and *no* project.clj.

With only a little experiencing on some single AOT compiled modules, I 
wondered 

1) When and under what circumstances projects are compiled in  source 
versus .class form?
2) Why there is no project.clj in the org.clojure jar file?
3) When the clojure 'compile' function comes into play in your typical 
clojure project deployments? (vs. :aot targets or other leiningen 
deployment techniques).

Any pointers or enlightenment on the above questions appreciated.
I read the clojure compilation page, but I haven't quite put together 
what that's telling me about *how* to comjpile a file and gen-class a class,
versus why I see all these clojure .m2 jar files with no classes whatsoever.

Thanks,

Dave

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


[ANN] Yesql 0.3.0 - Clojure SQL queries rethought.

2014-01-07 Thread Marco Shimomoto
It looks great and I will try it.
Have you thought about namespaces and different database implementations? 
Something like a general repository for SQL files and some vendor specific 
override repositories.

-- 
-- 
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: Namespaces in waiting

2014-01-07 Thread Dave Tenny
I just stumbled across this, which looks very much like it may be what I 
wanted:  clojure.core/loaded-libs

http://clojure.github.io/clojure/clojure.core-api.html#clojure.core/loaded-libs

E.g.

$ lein repl
user= (loaded-libs)
bultitude.core
cemerick.pomegranate
cemerick.pomegranate.aether
classlojure.core
clj-stacktrace.core
clj-stacktrace.repl
clj-stacktrace.utils
clojure.core
clojure.core.protocols
clojure.instant
...
clojure.zip
complete.core
dynapath.defaults
dynapath.dynamic-classpath
dynapath.util
flatland.useful.fn
flatland.useful.seq
flatland.useful.utils
jdt.cl
jdt.core
jdt.java
jdt.shell
leiningen.core.classpath
leiningen.core.eval
leiningen.core.main
leiningen.core.project
leiningen.core.ssl
leiningen.core.user
leiningen.core.utils
leiningen.repl
leiningen.trampoline
me.raynes.conch
me.raynes.conch.low-level
net.cgrand.parsley
net.cgrand.parsley.fold
net.cgrand.parsley.grammar
net.cgrand.parsley.lrplus
net.cgrand.parsley.stack
net.cgrand.parsley.tree
...

and so on

-- 
-- 
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: Clojure deployment questions w.r.t. jars, clojure source files, compiled class files

2014-01-07 Thread Gary Trakhman
AOT in my experience is a little dicey and complicated.


On Tue, Jan 7, 2014 at 7:26 PM, Dave Tenny dave.te...@gmail.com wrote:

 So if I sample some clojure jars in my local maven .m2 directory, most of
 the jar files have only clojure code, and a project.clj.
 If I look at the org.clojure project there, it has many java class files,
 what appear to be corresponding clojure source files, and *no* project.clj.

 With only a little experiencing on some single AOT compiled modules, I
 wondered

 1) When and under what circumstances projects are compiled in  source
 versus .class form?


In general, you always want to distribute libs as maven artifacts with
source included and no AOT compilation.  Adding in compiled classes means
also adding a dependency on whatever clojure version was used to compile
those classes.  The effects of this lead to often confounding errors.

As an extra caveat, AOT currently does not make it easy to separate that
project's class files from every other deps generated class files, so any
project artifact will have extra classfiles in it.  My company has grappled
with separating these about five different ways in order to not distribute
source, and there is a ticket to address it, but it looks like it'll
persist.


 2) Why there is no project.clj in the org.clojure jar file?


Clojure itself isn't built with leiningen, hence no project.clj.


 3) When the clojure 'compile' function comes into play in your typical
 clojure project deployments? (vs. :aot targets or other leiningen
 deployment techniques).

 Any pointers or enlightenment on the above questions appreciated.
 I read the clojure compilation page, but I haven't quite put together
 what that's telling me about *how* to comjpile a file and gen-class a class,
 versus why I see all these clojure .m2 jar files with no classes
 whatsoever.

 Thanks,

 Dave

 --
 --
 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: [ANN] Yesql 0.3.0 - Clojure SQL queries rethought.

2014-01-07 Thread Alexandr Kurilin
This is neat, I'll need to give this a shot.

Our application involves a lot of OLAP-style queries and I currently have
several DAL namespaces of  clojure.jdbc with 30+ lines of SQL query in
them, which is pretty nasty to look at. This should clean up things nicely.


On Tue, Jan 7, 2014 at 4:26 PM, Marco Shimomoto mashi...@gmail.com wrote:

 It looks great and I will try it.
 Have you thought about namespaces and different database implementations?
 Something like a general repository for SQL files and some vendor specific
 override repositories.

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




-- 
Alexandr Kurilin
206.687.8740 | @alex_kurilin https://twitter.com/alex_kurilin |
bloghttp://www.kurilin.net

-- 
-- 
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] jnanomsg 0.2.0 - Clojure and Java bindings for nanomsg.

2014-01-07 Thread am
Andrey,

Thank-you for the lib and adding the pipeline protocol.

Cheers.

Amar

On Tuesday, January 7, 2014 5:10:17 PM UTC-5, Andrey Antukh wrote:

 Clojure and Java bindings for nanomsg[1] (build on top of JNA)

 nanomsg[1] is a socket library that provides common communication 
 patterns. It aims to make the networking layer fast, scalable, and easy to 
 use.

 This is a first announcement of this library with 0.2 version! 0.1 
 version was just a proof of concept.

 Github: https://github.com/niwibe/jnanomsg
 Doc: http://niwibe.github.io/jnanomsg/

 [1]: http://nanomsg.org/

 -- 
 Andrey Antukh - Андрей Антух - ni...@niwi.be javascript:
 http://www.niwi.be http://www.niwi.be/about.html
 https://github.com/niwibe


-- 
-- 
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 - New podcast Functional Geekery

2014-01-07 Thread Steven Proctor
The feed is live in iTunes for those who were wanting to subscribe there. 
 
https://itunes.apple.com/us/podcast/functional-geekery/id790455326?mt=2ign-mpt=uo%3D4

Thanks,
--Proctor

On Wednesday, January 1, 2014 7:08:06 PM UTC-6, Steven Proctor wrote:

 I am doing a new podcast Functional Geekery, with the goal to cover topics 
 across multiple languages, Clojure included.  I am announcing it here, as 
 Clojure was the language that got me to dig deeper into functional 
 programming.

 The site can be found here: http://www.functionalgeekery.com/ and the 
 first episode is posted.  I am working on getting the feed in iTunes and 
 the Zune Music Marketplace, but it should be in those soon.

 If you have any suggestions or topics for the show, I would love to hear 
 you feedback.

 Thanks!
 --Proctor


-- 
-- 
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: Clojure deployment questions w.r.t. jars, clojure source files, compiled class files

2014-01-07 Thread Sean Corfield
On Tue, Jan 7, 2014 at 4:26 PM, Dave Tenny dave.te...@gmail.com wrote:
 1) When and under what circumstances projects are compiled in  source versus
 .class form?

Most Clojure projects ship in source form (and are therefore compiled
to bytecode on demand as they are loaded).

 2) Why there is no project.clj in the org.clojure jar file?

It's built with Maven. As are most of the Clojure contrib libraries
too, although some are now starting to sport project.clj files to make
local development easier. In the last round of development, I added
Leiningen support to clojure.java.jdbc to make it easier to jack in
with Emacs and test the code. It still uses Maven for primary testing
(on build.clojure.org) and packaging - and Clojure plus its contrib
libraries are hosted on Maven Central (where they are retrieved
primarily by Leiningen into other Clojure projects).

 3) When the clojure 'compile' function comes into play in your typical
 clojure project deployments? (vs. :aot targets or other leiningen deployment
 techniques).

At World Singles, we AOT compile very little of our code. We only AOT
namespaces that generate Java-compatible classes for situations where
we must be natively callable from Java (e.g., we have a log4j appender
written in Clojure). Within that AOT-compiled code, we require
namespaces and resolve symbols dynamically (at runtime) to bind the
Java-called code to the rest of our code base.

Part of the reason is for the flexibility that source deployments
provide: the ability to REPL into a live, running process and reload
code from updated source files without needing to stop the world,
for example.

If you're relatively new to Clojure, I'd recommend completely ignoring
the whole compilation thing unless you specifically need to generate
natively callable code for Java to Clojure interop.

In case anyone is interested, our pattern for bridging from the
AOT-compiled namespace to the rest of the code base tends to look like
this:

(def the-symbol
  (delay
(do
  (require 'the.namespace)
  (resolve (symbol the.namespace/the-symbol)

and then:

  ... (@the-symbol arg1 arg2) ...

Our AOT-compiled layer is deliberately minimal and serves only to
provide the Java-callable API so the rest of our code can be developed
and tested in our normal interactive, incremental way.
-- 
Sean A Corfield -- (904) 302-SEAN
An Architect's View -- http://corfield.org/
World Singles, LLC. -- http://worldsingles.com/

Perfection is the enemy of the good.
-- Gustave Flaubert, French realist novelist (1821-1880)

-- 
-- 
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 - New podcast Functional Geekery

2014-01-07 Thread Magnar Sveen
Excellent! Downloading as I type. 

 - Magnar

 Den 8. jan. 2014 kl. 03:23 skrev Steven Proctor steven.proc...@gmail.com:
 
 The feed is live in iTunes for those who were wanting to subscribe there.  
 https://itunes.apple.com/us/podcast/functional-geekery/id790455326?mt=2ign-mpt=uo%3D4
 
 Thanks,
 --Proctor
 
 On Wednesday, January 1, 2014 7:08:06 PM UTC-6, Steven Proctor wrote:
 I am doing a new podcast Functional Geekery, with the goal to cover topics 
 across multiple languages, Clojure included.  I am announcing it here, as 
 Clojure was the language that got me to dig deeper into functional 
 programming.
 
 The site can be found here: http://www.functionalgeekery.com/ and the first 
 episode is posted.  I am working on getting the feed in iTunes and the Zune 
 Music Marketplace, but it should be in those soon.
 
 If you have any suggestions or topics for the show, I would love to hear you 
 feedback.
 
 Thanks!
 --Proctor
 
 -- 
 -- 
 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 a topic in the Google 
 Groups Clojure group.
 To unsubscribe from this topic, visit 
 https://groups.google.com/d/topic/clojure/aaFoQeR7_F8/unsubscribe.
 To unsubscribe from this group and all its topics, 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: Clojure deployment questions w.r.t. jars, clojure source files, compiled class files

2014-01-07 Thread Softaddicts
Just to throw a wrench in this thread  :)))

a) We AOT our stuff to avoid shipping our sourde code to customer sites
(:aot [regex...]), this requirement is the basis for what follows.

b) We filter classes using lein to remove from our artifacts classes
from other libs so only our AOT code is shipped in our jar files
(:jar-exclusions [regex...]). This prevents mixing compiled classes
of third party in our own jars which I agree can be pretty confusing
(from which jar comes this compiled class ? Euuuh)

c) We are strict on version control and obviously will not ship
Clojure code compiled with different versions of Clojure, this is
a recipe for disaster when there are feature changes in Clojure.
We follow Orson's advice here, We will sell no wine before its time. 
We skipped some Clojure releases in the past and we moved to 1.5.1
by mid 2013.

d) Most of the source code shipped comes from the open source
libs we build upon. We can deploy site patches as source code and
get them applied at app startup time when we need quick fixes in prod
but they are not part of the build (otherwise they would not be called
patches :)

e) We also have Clojure data/code stored as part of the configuration and 
loaded on demand, it's been mixing fine with our AOT compiled
aritfacts.

e) We use an integrated nrepl console embedded in our apps and 
attach to it. We can investigate live in prod, apply patches live
albeit with some limitations but as far as I can see AOT is
not bitting us here. Restrictions have more to do with the app life cycle
which we are improving along the way.

f) We obvisously do integration tests using AOT compiled artifacts while dev
   testing is not to avoid time travels to stone age (edit compile restart hell)

In our design most of the stuff is done in our supervisor process and each 
supervisor auto configures itself differently using plugins according to the 
local configuration and it has to run 24/7. I think we kept most of the 
dynamic benefits while meeting the goal in a).

We have been using AOT for 4 years now. It's not at as hard as people
think it is but you need a minimal understanding of the underlying
machinery and if you come from a non Java background I agree
100%, it's not easy to find a path between the sand traps to get you
to putt in the hole from dev to prod.

End of the wrench throwing :)))

Luc P.

 AOT in my experience is a little dicey and complicated.
 
 
 On Tue, Jan 7, 2014 at 7:26 PM, Dave Tenny dave.te...@gmail.com wrote:
 
  So if I sample some clojure jars in my local maven .m2 directory, most of
  the jar files have only clojure code, and a project.clj.
  If I look at the org.clojure project there, it has many java class files,
  what appear to be corresponding clojure source files, and *no* project.clj.
 
  With only a little experiencing on some single AOT compiled modules, I
  wondered
 
  1) When and under what circumstances projects are compiled in  source
  versus .class form?
 
 
 In general, you always want to distribute libs as maven artifacts with
 source included and no AOT compilation.  Adding in compiled classes means
 also adding a dependency on whatever clojure version was used to compile
 those classes.  The effects of this lead to often confounding errors.
 
 As an extra caveat, AOT currently does not make it easy to separate that
 project's class files from every other deps generated class files, so any
 project artifact will have extra classfiles in it.  My company has grappled
 with separating these about five different ways in order to not distribute
 source, and there is a ticket to address it, but it looks like it'll
 persist.
 
 
  2) Why there is no project.clj in the org.clojure jar file?
 
 
 Clojure itself isn't built with leiningen, hence no project.clj.
 
 
  3) When the clojure 'compile' function comes into play in your typical
  clojure project deployments? (vs. :aot targets or other leiningen
  deployment techniques).
 
  Any pointers or enlightenment on the above questions appreciated.
  I read the clojure compilation page, but I haven't quite put together
  what that's telling me about *how* to comjpile a file and gen-class a class,
  versus why I see all these clojure .m2 jar files with no classes
  whatsoever.
 
  Thanks,
 
  Dave
 
  --
  --
  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 

Re: Clojure deployment questions w.r.t. jars, clojure source files, compiled class files

2014-01-07 Thread Softaddicts
To complement my previous post and in relation to this one,
we use (if-not *compile-file* ...) to wrap expressions that cannot be
AOT compiied (like loading configuration or connecting to external
resources which you do not want  to do at compile time but at run time only:)

This confused a lot of people in the past trying to use AOT.
For many the compilation phase and code execution are perceived
as a single step. When working in the REPL you do not need to be aware of
this. With AOT it's important to be aware of the difference when writing code
in dev.

Luc P.


 On Tue, Jan 7, 2014 at 4:26 PM, Dave Tenny dave.te...@gmail.com wrote:
  1) When and under what circumstances projects are compiled in  source versus
  .class form?
 
 Most Clojure projects ship in source form (and are therefore compiled
 to bytecode on demand as they are loaded).
 
  2) Why there is no project.clj in the org.clojure jar file?
 
 It's built with Maven. As are most of the Clojure contrib libraries
 too, although some are now starting to sport project.clj files to make
 local development easier. In the last round of development, I added
 Leiningen support to clojure.java.jdbc to make it easier to jack in
 with Emacs and test the code. It still uses Maven for primary testing
 (on build.clojure.org) and packaging - and Clojure plus its contrib
 libraries are hosted on Maven Central (where they are retrieved
 primarily by Leiningen into other Clojure projects).
 
  3) When the clojure 'compile' function comes into play in your typical
  clojure project deployments? (vs. :aot targets or other leiningen deployment
  techniques).
 
 At World Singles, we AOT compile very little of our code. We only AOT
 namespaces that generate Java-compatible classes for situations where
 we must be natively callable from Java (e.g., we have a log4j appender
 written in Clojure). Within that AOT-compiled code, we require
 namespaces and resolve symbols dynamically (at runtime) to bind the
 Java-called code to the rest of our code base.
 
 Part of the reason is for the flexibility that source deployments
 provide: the ability to REPL into a live, running process and reload
 code from updated source files without needing to stop the world,
 for example.
 
 If you're relatively new to Clojure, I'd recommend completely ignoring
 the whole compilation thing unless you specifically need to generate
 natively callable code for Java to Clojure interop.
 
 In case anyone is interested, our pattern for bridging from the
 AOT-compiled namespace to the rest of the code base tends to look like
 this:
 
 (def the-symbol
   (delay
 (do
   (require 'the.namespace)
   (resolve (symbol the.namespace/the-symbol)
 
 and then:
 
   ... (@the-symbol arg1 arg2) ...
 
 Our AOT-compiled layer is deliberately minimal and serves only to
 provide the Java-callable API so the rest of our code can be developed
 and tested in our normal interactive, incremental way.
 -- 
 Sean A Corfield -- (904) 302-SEAN
 An Architect's View -- http://corfield.org/
 World Singles, LLC. -- http://worldsingles.com/
 
 Perfection is the enemy of the good.
 -- Gustave Flaubert, French realist novelist (1821-1880)
 
 -- 
 -- 
 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.
 
--
Softaddictslprefonta...@softaddicts.ca sent by ibisMail from my ipad!

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


Extracting a database schema and using it to synthesize and check SQL queries at compile time

2014-01-07 Thread Alexander Hudek
Hey everyone,

We've been exploring ways to make working with database code more efficient 
and less error prone.
For complex queries, we prefer working directly with SQL. However, like for 
many others, a lot of our 
queries are very simple and repetitive. For example, retrieving or updating 
single rows, or a set of rows 
based on a foreign key. 

As an experiment, we wrote a prototype that uses the information_schema 
standard to automatically 
extract the schema from a database and represent it as clojure code at 
compile time. With this, we 
were able to synthesize some simple SQL queries. The interesting part of 
this is that the code generator
automatically picks up primary key constraints and also performs validation 
on table and column names.
All of this is done at compile time. Errors are caught early and the 
compiled code uses clojure.java.jdbc
prepared statements. You can find the code and demo here:

https://github.com/diligenceengine/edl

I'm personally not a big fan of huge ORM systems, so I don't know where to 
go with this, if anywhere.
Though it seems useful for building small macros for common patterns we 
have. 

Would love to hear if anyone has thoughts on the technique.

Alex



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