Re: [ANN] Fluokitten - Category theory concepts in Clojure - Functors, Applicatives, Monads, Monoids and more

2013-07-03 Thread Dragan Djuric
On Wednesday, July 3, 2013 2:06:34 AM UTC+2, Ben wrote: > > On Tue, Jul 2, 2013 at 4:33 PM, Dragan Djuric > > wrote: > >> And in this case you have to explicitly specify which monad you want to >> use, every time you call bind. I understand that in some case it might be a >> preferred way, but

Re: [ANN] Fluokitten - Category theory concepts in Clojure - Functors, Applicatives, Monads, Monoids and more

2013-07-03 Thread Dragan Djuric
The specific bind implementations always get the instance of the Monad protocol the bind was called with (since it is a part of an implementation of the Monad protocol), so you use that instance as a first argument to pure. Of course, if you call bind with a function that does not make sense in

[ANN] clojure-sql 0.1.0: relational algebra in clojure

2013-07-03 Thread Carlo Zancanaro
Hey guys! I've been working on a small library to make writing SQL queries a little bit easier. It's along the same lines as ClojureQL, but takes a different approach and compiles into quite different SQL in the end. At the moment it's quite immature, but it should be able to support any queries

How to implement a distributed and concurrent system in Clojure?

2013-07-03 Thread Hussein B.
Hi, I read recently on the internet that Clojure concurrency tools make it easy to implement a highly concurrent system but on a single machine. But how to implement a highly concurrent system that runs on a multiple machines? Erlang, Elixir and Scala have the Actors model. Please correct me

Re: Clojure generates unnecessary and slow type-checks

2013-07-03 Thread Jim
After following Jason's suggestion to use BigInteger and .multiply instead of BigInt and * I too am getting speed on par with Java (108-109 miroseconds on my RPI). Therefore, I consider this issue closed :) @Stuart thanks for running the benchmark yourself...maybe I could have save you so

Re: Build fails with any IBM JDK above 6.0.x

2013-07-03 Thread Sherif Ali
Hello Andy, Thanks for getting back to me. The problem is that I specifically need to build Clojure 1.1 which doesn't seem to have the io.clj in neither clojure nor clojure-contrib. Disabling the JIT compiler (-Xnojit to JVM Arguments), I was able to build both successfully with IBM JDK 1.6.+.

Re: [ANN] Pedestal 0.1.9 has been released

2013-07-03 Thread Leon Talbot
> Brenton has been working hard at preparing a full tutorial of pedestal-app. > We're expecting to release that in just under a month or so. Great news! -- -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure

Re: [ANN] Pedestal 0.1.9 has been released

2013-07-03 Thread Ryan Neufeld
It's so close I can almost taste it. Most Relevance Pedestallions are going to be doing what I think is a final review on Friday. I really think you folks are going to enjoy it. -- Ryan Neufeld On Jul 3, 2013, at 6:47 AM, Leon Talbot wrote: >> Brenton has been working hard at preparing a full

Re: [ANN] Pedestal 0.1.9 has been released

2013-07-03 Thread Mayank Jain
Looking forward to an elaborate docs/video tuts on pedestal. Cheers On Wed, Jul 3, 2013 at 4:38 PM, Ryan Neufeld wrote: > It's so close I can almost taste it. Most Relevance Pedestallions are > going to be doing what I think is a final review on Friday. > > I really think you folks are going to

Re: [ANN] Pedestal 0.1.9 has been released

2013-07-03 Thread Ryan Neufeld
Docs first, videos in a bit. I don't want this to be like that Christmas where you thought you were going to get *all* the presents and you were all disappointed but had to put on a brave face to seem like you still appreciated it. -- Ryan Neufeld On Jul 3, 2013, at 7:20 AM, Mayank Jain wrote

Re: [ANN] Fluokitten - Category theory concepts in Clojure - Functors, Applicatives, Monads, Monoids and more

2013-07-03 Thread Ambrose Bonnaire-Sergeant
This looks fantastic. I probably won't be able to resist to type check it with core.typed at some point. And enough documentation to satisfy Michael Klishin? I'm impressed :) Thanks, Ambrose On Wed, Jul 3, 2013 at 2:07 AM, Dragan Djuric wrote: > I am pleased to announce a first public release

Re: [ANN] Pedestal 0.1.9 has been released

2013-07-03 Thread Mayank Jain
Sure :) On Wed, Jul 3, 2013 at 4:55 PM, Ryan Neufeld wrote: > Docs first, videos in a bit. I don't want this to be like that Christmas > where you thought you were going to get *all* the presents and you were all > disappointed but had to put on a brave face to seem like you still > appreciated

Re: [ANN] Fluokitten - Category theory concepts in Clojure - Functors, Applicatives, Monads, Monoids and more

2013-07-03 Thread Dragan Djuric
> > > I probably won't be able to resist to type check it with core.typed at > some point. > If you contribute that, or help me baking in (some) non-invasive type checking into Fluokitten, that would be FANTASTIC! I have that in vague long-term plans, but I haven't had time to look at core.typ

Re: [ANN] Fluokitten - Category theory concepts in Clojure - Functors, Applicatives, Monads, Monoids and more

2013-07-03 Thread Ambrose Bonnaire-Sergeant
On Wed, Jul 3, 2013 at 7:50 PM, Dragan Djuric wrote: > >> I probably won't be able to resist to type check it with core.typed at >> some point. >> > > If you contribute that, or help me baking in (some) non-invasive type > checking into Fluokitten, that would be FANTASTIC! I have that in vague >

Re: [ANN] Fluokitten - Category theory concepts in Clojure - Functors, Applicatives, Monads, Monoids and more

2013-07-03 Thread Michael Klishin
2013/7/3 Dragan Djuric > one of the main project goals is to make monads (et al) approachable for > beginners, and for that, docs and tutorials are the main thing. So, this > library really does not make much sense without lots of documentation. I > hope to even improve it on that point. Dragan

Re: [ANN] Fluokitten - Category theory concepts in Clojure - Functors, Applicatives, Monads, Monoids and more

2013-07-03 Thread Dragan Djuric
Michael, The site source is in the gh-pages branch in the main source repository on github: https://github.com/uncomplicate/fluokitten/tree/gh-pages On Wednesday, July 3, 2013 2:19:07 PM UTC+2, Michael Klishin wrote: > > > 2013/7/3 Dragan Djuric > > >> one of the main project goals is to make mo

Re: [ANN] Fluokitten - Category theory concepts in Clojure - Functors, Applicatives, Monads, Monoids and more

2013-07-03 Thread Michael Klishin
2013/7/3 Dragan Djuric > The site source is in the gh-pages branch in the main source repository on > github: https://github.com/uncomplicate/fluokitten/tree/gh-pages > It's worth mentioning somewhere. ClojureWerkz projects link to doc source at the top of every guide, adding a README link is fi

Re: How to implement a distributed and concurrent system in Clojure?

2013-07-03 Thread Joseph Guhlin
I'd like to hear others opinions on this too. I don't believe Clojure has anything built in at this point. My plan of action (not yet implemented) is to use gearman(possibly java, but it seems that it is no longer updated) and zeroconf for clusters (just for automatic master determination). I k

Re: [ANN] Fluokitten - Category theory concepts in Clojure - Functors, Applicatives, Monads, Monoids and more

2013-07-03 Thread Ben Wolfson
On Wed, Jul 3, 2013 at 12:32 AM, Dragan Djuric wrote: > > > On Wednesday, July 3, 2013 2:06:34 AM UTC+2, Ben wrote: > >> On Tue, Jul 2, 2013 at 4:33 PM, Dragan Djuric wrote: >> >>> And in this case you have to explicitly specify which monad you want to >>> use, every time you call bind. I unders

Re: [ANN] Fluokitten - Category theory concepts in Clojure - Functors, Applicatives, Monads, Monoids and more

2013-07-03 Thread Ben Wolfson
On Wed, Jul 3, 2013 at 7:07 AM, Ben Wolfson wrote: > However, I think this, regarding the second law, is telling: "The second > does not too, since it says what happens when you bind with (pure m) not > (pure n)" > > *all* the laws only say what happen when you stay within the same monad, > becau

Re: How to implement a distributed and concurrent system in Clojure?

2013-07-03 Thread Softaddicts
clj-zookeeper + avout. We run our solution on clusters of small nodes, we needed a lightweight solution. We implemented cluster queues and use avout locking. Our configuration is also stored in zookeeper as clojure expressions. We isolated this in a coordinator module so nothing spills out in the

Re: [ANN] Fluokitten - Category theory concepts in Clojure - Functors, Applicatives, Monads, Monoids and more

2013-07-03 Thread Dragan Djuric
Monads as a Haskell construct is what the previously mentioned laws describe. Monads in category theory are defined in a category X as a triple (T, n, m) where T is a functor and m and n certan natural transformations such that certan diagrams commute. In that sense, I am not sure that even Has

Re: [ANN] lein-spell: Spell check your clojure docstrings and library docs

2013-07-03 Thread Phillip Lord
That's really nice. It would be good to have an option to *not* pick up parameter names; I often refer to these in doc strings, and they are not always spelling mistakes. Phil Gabriel Horner writes: > Introducing lein-spell, https://github.com/cldwalker/lein-spell - a library > to quickly a

Re: [ANN] Fluokitten - Category theory concepts in Clojure - Functors, Applicatives, Monads, Monoids and more

2013-07-03 Thread Phillip Lord
I've never really used monads or monoids, but one thing that does confuse me is how come there are so may libraries for supporting them. I've been reading the documentation of morph (https://github.com/blancas/morph) recently, which is the first one I've understood. A quick look at fluokitten su

Re: [ANN] Fluokitten - Category theory concepts in Clojure - Functors, Applicatives, Monads, Monoids and more

2013-07-03 Thread Dragan Djuric
If Clojure has all of the Haskell's type features, I guess there would be only one Clojure monad library, more or less a direct port of Haskell's. As Clojure is different, there are different ways to approach monads from neither of which can be the same as Haskell's, each having its pros and co

Re: [ANN] Pedestal 0.1.9 has been released

2013-07-03 Thread Manuel Paccagnella
I'm sure I will :) In the meantime, I'll dive in the "Application Overview" section to wrap my head around all the moving parts. Loving it so far! Nice job. Il giorno mercoledì 3 luglio 2013 13:08:11 UTC+2, Ryan Neufeld ha scritto: > > It's so close I can almost taste it. Most Relevance Pedestal

Re: [ANN] Fluokitten - Category theory concepts in Clojure - Functors, Applicatives, Monads, Monoids and more

2013-07-03 Thread Nils Bertschinger
Hi, Am Mittwoch, 3. Juli 2013 16:49:43 UTC+2 schrieb Dragan Djuric: > > Monads as a Haskell construct is what the previously mentioned laws > describe. Monads in category theory are defined in a category X as a triple > (T, n, m) where T is a functor and m and n certan natural transformations >

Re: [ANN] lein-spell: Spell check your clojure docstrings and library docs

2013-07-03 Thread Gabriel Horner
Yep. I hadn't got around to that but it's definitely possible with :arglists I've added a ticket to track it if anyone gets to it before I do - https://github.com/cldwalker/lein-spell/issues/4 On Wed, Jul 3, 2013 at 10:51 AM, Phillip Lord wrote: > > That's really nice. > > It would be good to h

Re: [ANN] Fluokitten - Category theory concepts in Clojure - Functors, Applicatives, Monads, Monoids and more

2013-07-03 Thread Dragan Djuric
Yes, I agree completely, when we stay inside Haskell. However, Clojure is dynamic. Here are two objects that are equal despite having different types: Consider this case: (= [1] (list 1)) ;=> true (isa? (type [1]) (list 1)) ;=> false In fact, equality in Java (and Clojure) depends on the implem

Re: [ANN] Fluokitten - Category theory concepts in Clojure - Functors, Applicatives, Monads, Monoids and more

2013-07-03 Thread Ben Wolfson
On Wed, Jul 3, 2013 at 10:31 AM, Dragan Djuric wrote: > Yes, I agree completely, when we stay inside Haskell. However, Clojure is > dynamic. Here are two objects that are equal despite having different types: > If you're going to talk about "category theory concepts", then that's the constraint

Re: [ANN] Fluokitten - Category theory concepts in Clojure - Functors, Applicatives, Monads, Monoids and more

2013-07-03 Thread Dragan Djuric
> If you're going to talk about "category theory concepts", then that's the > constraint you have to operate under. "monad" is constituted by the laws, > the laws involve operations with a certain type, and that's just it. It's > not a matter of being in Haskell or not, it's a matter of accura

Re: [ANN] Fluokitten - Category theory concepts in Clojure - Functors, Applicatives, Monads, Monoids and more

2013-07-03 Thread Ben Wolfson
On Wed, Jul 3, 2013 at 7:49 AM, Dragan Djuric wrote: > Monads as a Haskell construct is what the previously mentioned laws > describe. Monads in category theory are defined in a category X as a triple > (T, n, m) where T is a functor and m and n certan natural transformations > such that certan d

Pedestal introduction question

2013-07-03 Thread Greg
I know there's a pedestal-users mailing list, and I sent my question to it, but for whatever reason it hasn't shown up there (perhaps it's still in the moderation queue?). Hopefully someone here might be able to help. On this page: http://pedestal.io/documentation/application-introduction/ Ther

core.match error?

2013-07-03 Thread Ben Wolfson
This is with 0.2.0-rc2. This expression evaluates as expected: user> (m/match [:r :d] [:s :d] nil [:r :t] nil [:r :d] :x [:s :t] nil) :x But this one throws an exception: user> (m/match [:r :d] [:r :t] nil

Re: core.match error?

2013-07-03 Thread David Nolen
Thanks for the report, that's definitely a bug and I know the cause: http://dev.clojure.org/jira/browse/MATCH-80 David On Wed, Jul 3, 2013 at 9:07 PM, Ben Wolfson wrote: > This is with 0.2.0-rc2. > > This expression evaluates as expected: > > user> (m/match [:r :d] >[:s :d] nil

Re: Adding implicit indexing to Clojure lists and arrays?

2013-07-03 Thread david
(defn indexed "Returns a lazy sequence of [index, item] pairs, where items come from 's' and indexes count up from zero. (indexed '(a b c d)) => ([0 a] [1 b] [2 c] [3 d])" [s] (map vector (iterate inc 0) s)) -- -- You received this message because you are subscribed to the Google Grou

Re: core.match error?

2013-07-03 Thread David Nolen
0.2.0-rc3 going out with a fix. On Wed, Jul 3, 2013 at 9:14 PM, David Nolen wrote: > Thanks for the report, that's definitely a bug and I know the cause: > http://dev.clojure.org/jira/browse/MATCH-80 > > David > > > On Wed, Jul 3, 2013 at 9:07 PM, Ben Wolfson wrote: > >> This is with 0.2.0-rc2

Re: core.match error?

2013-07-03 Thread Ben Wolfson
Thanks! On Wed, Jul 3, 2013 at 6:44 PM, David Nolen wrote: > 0.2.0-rc3 going out with a fix. > > > On Wed, Jul 3, 2013 at 9:14 PM, David Nolen wrote: > >> Thanks for the report, that's definitely a bug and I know the cause: >> http://dev.clojure.org/jira/browse/MATCH-80 >> >> David >> >> >> On