Re: A (foolish) plan to re-invent IO on top of core.async

2015-01-05 Thread Ricardo Gomez
There are, it'll just never happen. -- 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

Re: Recognising Clojure-generated classes

2015-01-05 Thread fabiot
Thanks a lot. There is now http://dev.clojure.org/jira/browse/CLJ-1632 specifically. Il giorno domenica 4 gennaio 2015 20:15:27 UTC+1, Andy Fingerhut ha scritto: Possibly the most relevant Clojure ticket in JIRA related to your question is: http://dev.clojure.org/jira/browse/CLJ-394 If you

Re: Creating Hiccup From Code Keeping Formatting and Comments

2015-01-05 Thread Stefan Kamphausen
Hi, Thanks for your pointers. That is something to dive into. Cheers, stefan -- 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

Re: Please critique my code (barber problem with core.async)

2015-01-05 Thread Thomas
Thank you all for you valuable feedback. I really appreciate it and the suggestions are really good. Thomas -- 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

Re: How to handle refactoring with TDD and mocking/stubbing

2015-01-05 Thread Colin Yates
(Happy new year all!) I have thousands of lines of tests written using Midje and it was the second one I turned to when I started using Clojure full-time a couple of years ago. I think it would be fairer to say that Midje is powerful enough to hang yourself, but that doesn't make that power

[ANN] Adi 0.3.1

2015-01-05 Thread Timothy Washington
Hi all, The latest adi https://github.com/zcaudate/adi (0.3.1) is available on clojars https://clojars.org/im.chit/adi. Adi is a wrapper around datomic, or *a datomic interface*. The documentation http://docs.caudate.me/adi/ gives a better mental model. It's still being fleshed out. But what's

New Functional Programming Job Opportunities

2015-01-05 Thread Functional Jobs
Here are some functional programming job opportunities that were posted recently: Senior Software Engineer at McGraw-Hill Education http://functionaljobs.com/jobs/8775-senior-software-engineer-at-mcgraw-hill-education Cheers, Sean Murphy FunctionalJobs.com -- You received this message

[ANN] cuerdas 0.2.0: A string manipulation library for clojure and clojurescript.

2015-01-05 Thread Andrey Antukh
Hello everybody. I wanted to announce the second release of cuerdas. A string manipulation library for clojure and clojurescript. That release includes a bunch of fixes and improvements suggested in previous release announcement and reddit. Thanks for the feedback! Relevant changes: - Remove

Clojure ecommerce

2015-01-05 Thread gvim
Are there currently any Clojure ecommerce packages or libraries, preferably open source? Something like Shopify. Failing that, what are Clojure developers using to build ecommerce sites? gvim -- You received this message because you are subscribed to the Google Groups Clojure group. To post

Re: Clojure ecommerce

2015-01-05 Thread Sean Corfield
I can't answer the first part but I can say that at World Singles, we're using a combination of Braintree, SBW, Paymentwall, Paypal and a few others, almost all wrapped up in custom Clojure code. Paymentwall is easy to integrate (since it uses a captive UI on the front end and then just pings

Re: A (foolish) plan to re-invent IO on top of core.async

2015-01-05 Thread Thomas Heller
I built a PostgreSQL Java client from scratch recently. Since it was not a goal to support JDBC ever I thought about writing it with non-blocking async IO. I played with some ideas but ultimately I decided not to. The reason is quite simple. Async IO works well if you do enough IO to keep one

Re: A (foolish) plan to re-invent IO on top of core.async

2015-01-05 Thread Timothy Baldridge
Many database APIs already contain async interfaces. Simply use those and use core.async/put! and take! to allow them to operate on core.async channels. You often don't need much more than that. Timothy On Mon, Jan 5, 2015 at 3:18 PM, Robin Heggelund Hansen skinney...@gmail.com wrote: I guess

A (foolish) plan to re-invent IO on top of core.async

2015-01-05 Thread Robin Heggelund Hansen
I guess this post is mostly going to be a question, but one that could shape up to be a long open source project and contribution on my part, if it is warranted. The Clojure community has been blessed with good language interoperability with Java, which has made it easy to use and wrap

Re: A (foolish) plan to re-invent IO on top of core.async

2015-01-05 Thread Robin Heggelund Hansen
But wouldn't those async interaces either use their own threads or threadpool, which would compete with core.async's threadpool for resources/cycles? kl. 23:31:53 UTC+1 mandag 5. januar 2015 skrev tbc++ følgende: Many database APIs already contain async interfaces. Simply use those and use

Re: A (foolish) plan to re-invent IO on top of core.async

2015-01-05 Thread Robin Heggelund Hansen
Sure, the actual DB operation is not going to benefit from async io, but if you have a server using go-blocks to handle incoming requests, using blocking io would also block the threadpool running the go-blocks, limiting the number of requests you can handle. If you have a threadpool of four

Re: A (foolish) plan to re-invent IO on top of core.async

2015-01-05 Thread David James
In case you are interested in a recent example, I wrote an NIO.2 based Riak client in Clojure without Netty. https://github.com/bluemont/kria It uses callback functions, so the consumer can do whatever they want; such as core.async. I agree with Timothy, above. My take-away from the experience

Re: A (foolish) plan to re-invent IO on top of core.async

2015-01-05 Thread Timothy Baldridge
And if you want async web frameworks, Pedestal supports core.async. You just return a channel as a response body and it assumes that you will eventually pipe your data down that channel. Timothy On Mon, Jan 5, 2015 at 6:09 PM, David James davidcja...@gmail.com wrote: In case you are interested

Re: A (foolish) plan to re-invent IO on top of core.async

2015-01-05 Thread Robin Heggelund Hansen
So there are no benefits to having core.async being the only threadpool in the app? kl. 03:12:15 UTC+1 tirsdag 6. januar 2015 skrev tbc++ følgende: And if you want async web frameworks, Pedestal supports core.async. You just return a channel as a response body and it assumes that you will

Re: ANN: boltzmann 0.1.1 - a deep-learning library

2015-01-05 Thread Mike Anderson
On Tuesday, 6 January 2015 04:27:55 UTC+8, Christian Weilbach wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 05.01.2015 03:34, Mike Anderson wrote: Very cool stuff! Like yours! I wish nurokit was EPLed, then I could have had a look at it and try to include it there. Have

Re: Clojure ecommerce

2015-01-05 Thread Daniel Kersten
I'm building a fairly simple online store site using http-kit, ring, bidi, enlive, clj-rethinkdb, stripe-clj, clauth, mailer and DomKM's server-side Om rendering technique on the server and cljs-http, om, bootstrap-cljs, markdown-clj and core.async on the client. It's not my day job so it's

Re: Is there a reason ns macro is not a function?

2015-01-05 Thread Phillip Lord
There are only, I think, four reasons for making things a macro rather than a function. The one that seems to apply to the ns macro is that it saves typing -- that is, you don't have to sprinkle quoted symbols everywhere. And you can ignore the difference between lists and vectors. Compare...

Re: ANN: boltzmann 0.1.1 - a deep-learning library

2015-01-05 Thread Christian Weilbach
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 05.01.2015 03:34, Mike Anderson wrote: Very cool stuff! Like yours! I wish nurokit was EPLed, then I could have had a look at it and try to include it there. Have libraries like this high commercial value? I thought the knowledge to apply them

Re: Clojure ecommerce

2015-01-05 Thread gvim
On 05/01/2015 17:39, Sean Corfield wrote: I can't answer the first part but I can say that at World Singles, we're using a combination of Braintree, SBW, Paymentwall, Paypal and a few others, almost all wrapped up in custom Clojure code. Paymentwall is easy to integrate (since it uses a

Re: Clojure ecommerce

2015-01-05 Thread Sean Corfield
On Jan 5, 2015, at 11:00 AM, gvim gvi...@gmail.com wrote: SBW? https://www.sbw.com -- Secure Billing Worldwide Sean Corfield -- (904) 302-SEAN An Architect's View -- http://corfield.org/ Perfection is the enemy of the good. -- Gustave Flaubert, French realist novelist (1821-1880) -- You

hash function behaves different with empty vector in clojure and clojurescript

2015-01-05 Thread Feng Xue
These days, I was trying to utilize function hash in clojure/clojurescript to generate unique id, but it turns out this function has very strange behaviour to empty vector parsed from read-string in cljs with in clj. In clojure, hash function return -2017569654 for empty vector and the one

Re: How to handle refactoring with TDD and mocking/stubbing

2015-01-05 Thread Sam Ritchie
Agreed, Timothy - obviously the mental model gets more tangled when state mocking comes into play, but the fact is, sometimes you don't have the option (right away) of rewriting the code you're testing. Midje has been great for the Cascalog community:

[ANN] Bkell 0.2.1

2015-01-05 Thread Timothy Washington
Bkell https://github.com/twashing/bkell is a double-entry bookkeeping system. It provides a Shell and API for maintaining balanced records for business transactions. Clojars https://clojars.org/bkell is here. Before running the system or tests, make sure that *resource/config.edn* exists (`*cp

Re: How to handle refactoring with TDD and mocking/stubbing

2015-01-05 Thread Timothy Baldridge
I think you are coming across a bit strong That's probably true. At the end of the day I believe that tests should be written in the same language with the same semantics as the code they are testing. Midje does not recommend this. It is a multi-thousand line compiler that transforms a DSL into