Re: Running a certain function of your project

2016-07-15 Thread Erik Assum
If you're on OSX and not opposed to Clojurescript, Planck[1] starts up in no 
time and is very useful for scripting and playing around. 

There is also replete if you have an iOS device. 

1 http://planck-repl.org/

Erik. 
-- 
i farta

> Den 14. jul. 2016 kl. 23.15 skrev Cecil Westerhof :
> 
> In my project I have some functions I use when calling ‘lein repl’ in the 
> project directory. Would it be possible to use just that function? So use 
> lein to call this function and return?
> 
> Maybe not very useful because of the time it takes to start the JVM, but I 
> like to experiment. ;-)
> 
> -- 
> Cecil Westerhof
> -- 
> 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/d/optout.

-- 
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/d/optout.


Re: Error when upgrading yesql from 0.4.2 to 0.5.0

2016-07-15 Thread Cecil Westerhof
2016-07-15 2:19 GMT+02:00 Sean Corfield :

> Google has the Migration Guide cached, if that helps:
>
>
>
>
> https://webcache.googleusercontent.com/search?q=cache:zvoaA9nrTaUJ:https://github.com/krisajenkins/yesql/wiki/Migration+&cd=1&hl=en&ct=clnk&gl=us&client=safari
>
>

>
> And, yes, a LOT of API changes…
>

​It was luckily a simple project. Everything has been updated. :-D

-- 
Cecil Westerhof

-- 
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/d/optout.


Re: Running a certain function of your project

2016-07-15 Thread Cecil Westerhof
2016-07-15 9:12 GMT+02:00 Erik Assum :

> If you're on OSX and not opposed to Clojurescript, Planck[1] starts up in
> no time and is very useful for scripting and playing around.
>
> There is also replete if you have an iOS device.
>
> 1 http://planck-repl.org/
>

​I myself are on Linux, but maybe interesting for someone else.



> Den 14. jul. 2016 kl. 23.15 skrev Cecil Westerhof  >:
>
> In my project I have some functions I use when calling ‘lein repl’ in the
> project directory. Would it be possible to use just that function? So use
> lein to call this function and return?
>
> Maybe not very useful because of the time it takes to start the JVM, but I
> like to experiment. ;-)
>
>
-- 
Cecil Westerhof

-- 
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/d/optout.


Re: Running a certain function of your project

2016-07-15 Thread Erik Assum
It's coming to Linux as well. 

Erik. 
-- 
i farta

> Den 15. jul. 2016 kl. 10.41 skrev Cecil Westerhof :
> 
> I myself are on Linux, but maybe interesting for someone else.

-- 
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/d/optout.


Re: Running a certain function of your project

2016-07-15 Thread Cecil Westerhof
2016-07-15 10:54 GMT+02:00 Erik Assum :

> It's coming to Linux as well.
>

​I will keep an eye out then. :-)

​


> > Den 15. jul. 2016 kl. 10.41 skrev Cecil Westerhof <
> cldwester...@gmail.com>:
> >
> > I myself are on Linux, but maybe interesting for someone else.
>

-- 
Cecil Westerhof

-- 
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/d/optout.


Good Open Source project to learn Clojure

2016-07-15 Thread Cecil Westerhof
I did not work with Clojure for about a year I think. And before that I
only made one little desktop application for myself and played with some
little stuff like Happy Numbers. There is a big chance I will get a Clojure
project soon, so it would be good to get up to speed. Anyone an idea what a
good project would be to contribute to? Difficult enough that I learn a lot
of stuff fast, but simple enough that I can contribute.

I worked with a lot of languages and get proficient with languages fast. So
in the beginning it should help me to get accustomed to Clojure, but after
that it should be challenging enough to continue. I would not like to come,
learn and go away. ;-)

-- 
Cecil Westerhof

-- 
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/d/optout.


Re: How I can access protected field of superclass from my generated by "gen-class" subclass?

2016-07-15 Thread ru
Ron! Thank you for the interesting example. I myself come to a simple 
solution, based on storing reference to the class object in THIS Var.

(:gen-class
  :name com.bbn.openmap.layer.etopo.ETOPOEleLayer
  :extends com.bbn.openmap.layer.etopo.ETOPOLayer
  :exposes {dataBuffer {:get getDataBuffer}
  bufferWidth {:get getBufferWidth}
  bufferHeight {:get getBufferHeight}}
  :post-init pinit)

(defn -pinit [this]
  *(def THIS this)*)

(defn elevation [[lat lon]]
  (let [bwd (or BUFWID (do (def BUFWID *(.getBufferWidth THIS))* BUFWID))
 scy (or SCY (do (def SCY (float (/ *(.getBufferHeight THIS)* 
180.0))) SCY))
 scx (or SCX (do (def SCX (float (/ bwd 360.0))) SCX))
 lat_idx (int (* (- 90.0 lat) scy))
 lon_idx (int (* lon scx))
 ofs (+ lon_idx (* lat_idx bwd))]
(aget *(.getDataBuffer THIS)* ofs)))

суббота, 9 июля 2016 г., 15:39:00 UTC+3 пользователь ru написал:
>
> How I can access protected field of superclass from my generated by 
> "gen-class" subclass. Explanation in API documentaion quite obscure:
>
> "...
> :exposes {protected-field-name {:get name :set name}, ...}
>
> Since the implementations of the methods of the generated class
> occur in Clojure functions, they have no access to the inherited
> protected fields of the superclass. This parameter can be used to
> generate public getter/setter methods exposing the protected field(s) 
>
> for use in the implementation.
> ..."
>
> I did not find examples :( My straightforward implementation gives error 
> messages :( Can somebody point me out working examples, please. Thanks in 
> advance.
>
> Sincerely,
>   Ru
>

-- 
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/d/optout.


Clojure Spec, performance and workflows

2016-07-15 Thread Kjetil Thuen
Hi.

I was sent here from the Clojurians Slack after posting a question there 
about
the performance of clojure.spec (or actually cljs.spec).

After having specced most of my data structures and all of the functions in 
a
couple of namespaces, I am seeing my test suite taking 5 minutes to 
complete in
contrast to the 14 seconds it used before adding specs. I really enjoy the 
extra
confidence the specs give me, but their cost is breaking my familiar work 
flow.

I was told you are still collecting feedback about clojure.spec, so please
consider this a story of how a user new to spec might approach introducing 
specs 
to an existing application, and potentially a request for pointers to 
better ways of
doing things;

When clojure.spec was first announced I was actively looking for ways to 
make
refactorings and changes to the response formats of external services less
painful. Spec seemed to fit the bill perfectly, so as soon as the 
Clojurescript port 
was out, I dived in. 

Since this app is built around a single app-state atom, it seemed natural to
begin there.  Starting at the leaves I identified logical components, and 
wrote
specs for them. In the process I namespaced keywords, and put the spec
definitions into namespaces that were already there for dealing with that 
part
of the state.

When doing this, I worked from the REPL, feeding conform and explain the 
specs
and data from the live app in addition to conforming and non-conforming data
snippets that I typed out manually. 

So far, so good.

The next step was specing some functions. First, I picked a couple of small
namespaces (4-5 functions) to get going. At this point I wanted more 
automation,
so I added a call to instrument-all in my test runner. This was working 
fine,
and it helped me identify a couple of corner cases I had not considered. 
Great
stuff!

Next up was just typing out more specs, and then I could go on fixing bugs 
and 
adding features with a newfound confidence. I picked one of the larger 
namespaces (60 functions) next. I typed out specs for all the functions, 
spent 
some time tweaking this and that, and ultimately got everything running 
without 
complaints. But now running the tests takes so much time that I tend to not 
run 
the tests on save any longer. Instead I evaluate single tests of 
instrumented 
functions in Cider as I go along, but this takes away from the confidence 
that I 
first set out to gain. Also, I am worried that our CI service will struggle 
as I add 
even more specs. 

At this rate, I fear the full test suite will consume close to half an hour 
to
complete once all the planned specs are in place.

Is calling instrument-all before running tests not a recommended approach?  
How
do other people leverage their specs in their workflows? 

-- 
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/d/optout.


Re: lein repl and own functions

2016-07-15 Thread Gary Fredericks
I use lein-shorthand , which 
makes arbitrary functions available to me in any project (or no project) 
and namespace.

Gary

On Thursday, July 14, 2016 at 8:53:03 AM UTC-5, Cecil Westerhof wrote:
>
> When I first worked with Clojure I used a Bash script with had:
> rlwrap java -cp "${CP}" clojure.main --init "${CLOJURE_INIT}" --repl
>
> In this way I had several of my own functions in the REPL. Now I started 
> again with Clojure I understood I should use ‘lein repl’. Is there a method 
> to get my own functions also included when using ‘lein repl’?
>
> -- 
> Cecil Westerhof
>

-- 
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/d/optout.


Re: [ANN] Nightcode 2: Total Rewrite

2016-07-15 Thread Yoko Harada
Boris,

Yes! That's what I want to know. Also, the  jar archive is the one
ClojureBridge will use.
Thanks!

- Yoko

On Thu, Jul 14, 2016 at 11:51 PM, Boris Kourtoukov 
wrote:

> Hi Yoko,
>
> If all you need is standalone jar versions of Nightcode you can see all
> the past releases here: https://github.com/oakes/Nightcode/releases
>
> The jar should run on any platform.
>
> Best,
> Boris
>
> On Thursday, July 14, 2016 at 10:46:17 PM UTC-4, yokolet wrote:
>>
>> Thanks for the update! A single REPL window on the new version looks
>> nice. It's good to avoid confusion for beginners.
>> Recently, ClojureBridge (clojurebridge.org) officially switched to
>> Nightcode. I think ClojureBridge students will like this easy to use editor.
>>
>> However, there's a really *ouch* problem in version 2.0.0. It doesn't
>> play nicely with Overtone. ClojureBridge has one Overtone material, which
>> works well on night code 1.3.1. I could run (piano),  (piano 48) or other
>> Overtone functions many times on the REPL window. But, on 2.0.0, if I run
>> (piano) once, that's it. REPL window acts weirdly.
>>
>> Are there any links to older versions? For a while, ClojureBridge wants
>> to stick to version 1.3.x.
>>
>> - Yoko
>>
>>
>>
>> On Wed, Jul 13, 2016 at 11:18 PM, Christopher Small 
>> wrote:
>>
>>> OMG. Thank you for this brilliant introduction. And of course all your
>>> hard work, as well :-)
>>>
>>>
>>>
>>> On Wednesday, July 13, 2016 at 7:35:53 PM UTC-7, Zach Oakes wrote:

 As I understand it, the Boot.java I linked to basically does that. You
 just run its main function and it takes care of downloading Boot to the
 right spot and invoking it.

 On Wednesday, July 13, 2016 at 10:18:05 PM UTC-4, Colin Fleming wrote:
>
> What I do for Leiningen in Cursive is basically mimic what the lein
> script does, and download the uberjars to .lein/self-installs, and then 
> run
> processes with those on the classpath. Would something similar for Boot
> work? As I understand it, boot.sh is just a tricky wrapper around an
> embedded jar, so hopefully that would work. I'm also selfishly interested
> in this because I don't support boot yet but I want to.
>
> On 14 July 2016 at 14:12, Zach Oakes  wrote:
>
>> If I get desperate I may do that, but the main users I care about are
>> beginners, and they generally have trouble installing CLI tools. I'm 
>> hoping
>> it is a trivial fix and I'll be able to get Boot working in 2.1.0 :)
>>
>> On Wednesday, July 13, 2016 at 9:44:50 PM UTC-4, Mark wrote:
>>>
>>> How about, until the issues are resolved, you require boot to be
>>> installed?
>>> On Jul 13, 2016 6:52 PM, "Zach Oakes"  wrote:
>>>
 That Boot tab is quite a tease ;) I wanted to finish support for it
 so bad, but technical difficulties prevented me from doing it. I 
 definitely
 plan to still do so, and any help would be appreciated.

 The issue is actually pretty simple: I need to be able to call Boot
 commands without having Boot installed. I do so for Leiningen by 
 literally
 adding it as a dependency and calling its build commands 
 programatically.
 Boot simply isn't designed to work that way.

 After talking to the Boot folks, they suggested I add Boot.java
 
 to my project and start a process that calls its main method with the
 appropriate task names. Easy enough, but that does not actually work. 
 It
 turns out that AOT compilation causes this java file to not behave
 correctly.

 If anyone is interested in investigating this, I created a minimal
 case for this issue here: https://github.com/oakes/boot-clj-issue

 Once that is resolved, it will be pretty trivial to enable building
 Boot projects.I actually would like to make the built-in templates use 
 Boot
 by default instead of Leiningen. Boot scripts in particular will be 
 awesome
 for beginners.

 On Wednesday, July 13, 2016 at 6:44:01 PM UTC-4, Sean Corfield
 wrote:
>
> I see a Boot tab in the REPL area but looking at the source code,
> detecting build.boot is disabled (and, indeed, I can’t get NC to 
> recognize
> any of my Boot-only projects).
>
>
>
> Can you speak to where you are on Boot support?
>
>
>
> Thanks,
>
> Sean Corfield -- (970) FOR-SEAN -- (904) 302-SEAN
> An Architect's View -- http://corfield.org/
>
> "If you're not annoying somebody, you're not really alive."
> -- Margaret Atwood
>
>
>
> On 7/13/16, 10:58 AM, "Zach Oakes"  behalf of zso...@

Re: Use latest stable

2016-07-15 Thread Matthew Boston
On the topic of keeping dependencies up-to-date, I 
use https://www.versioneye.com. I sign in with GitHub and it watches all 
the projects that I choose for out-of-date deps. It sends me a weekly/daily 
email so I'm rarely behind every new release.

Cheers.

On Thursday, July 14, 2016 at 11:58:41 AM UTC-6, Alan Thompson wrote:
>
> If you haven't seen it yet, lein-ancient (
> https://github.com/xsc/lein-ancient) provides an easy way of checking 
> your project for out of date dependencies.  For example:
>
> > lein ancient
> [criterium "0.4.4"] is available but we use "0.4.3"
> [tupelo "0.9.0"] is available but we use "0.1.60"
> [com.rpl/specter "0.11.2"] is available but we use "0.9.1"
>
>
> I tend to run it every couple of months, or whenever I remember.  Then it 
> is easy to update project.clj
>
> Alan
>
>
> On Thu, Jul 14, 2016 at 3:52 AM, Cecil Westerhof  > wrote:
>
>> Is there a way to signify latest stable version? Because when you use:
>>   :dependencies [[org.clojure/clojure"LATEST"]
>> it wants to work with:
>> clojure-1.9.0-alpha10
>>
>> I prefer to use clojure-1.8.0. There is a reason it is called alpha. But 
>> when there is a stable 1.9.0 I want to use that one.
>>
>> -- 
>> Cecil Westerhof
>>
>> -- 
>> 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/d/optout.
>>
>
>

-- 
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/d/optout.


Re: [ANN] Nightcode 2: Total Rewrite

2016-07-15 Thread Zach Oakes
I will definitely look into the REPL issue this weekend. Sorry about that 
regression -- there are some rough edges right now. My users are also my 
beta testers :)

On Thursday, July 14, 2016 at 10:46:17 PM UTC-4, yokolet wrote:
>
> Thanks for the update! A single REPL window on the new version looks nice. 
> It's good to avoid confusion for beginners.
> Recently, ClojureBridge (clojurebridge.org) officially switched to 
> Nightcode. I think ClojureBridge students will like this easy to use editor.
>
> However, there's a really *ouch* problem in version 2.0.0. It doesn't play 
> nicely with Overtone. ClojureBridge has one Overtone material, which works 
> well on night code 1.3.1. I could run (piano),  (piano 48) or other 
> Overtone functions many times on the REPL window. But, on 2.0.0, if I run 
> (piano) once, that's it. REPL window acts weirdly.
>
> Are there any links to older versions? For a while, ClojureBridge wants to 
> stick to version 1.3.x.
>
> - Yoko
>
>
>
> On Wed, Jul 13, 2016 at 11:18 PM, Christopher Small  > wrote:
>
>> OMG. Thank you for this brilliant introduction. And of course all your 
>> hard work, as well :-)
>>
>>
>>
>> On Wednesday, July 13, 2016 at 7:35:53 PM UTC-7, Zach Oakes wrote:
>>>
>>> As I understand it, the Boot.java I linked to basically does that. You 
>>> just run its main function and it takes care of downloading Boot to the 
>>> right spot and invoking it.
>>>
>>> On Wednesday, July 13, 2016 at 10:18:05 PM UTC-4, Colin Fleming wrote:

 What I do for Leiningen in Cursive is basically mimic what the lein 
 script does, and download the uberjars to .lein/self-installs, and then 
 run 
 processes with those on the classpath. Would something similar for Boot 
 work? As I understand it, boot.sh is just a tricky wrapper around an 
 embedded jar, so hopefully that would work. I'm also selfishly interested 
 in this because I don't support boot yet but I want to.

 On 14 July 2016 at 14:12, Zach Oakes  wrote:

> If I get desperate I may do that, but the main users I care about are 
> beginners, and they generally have trouble installing CLI tools. I'm 
> hoping 
> it is a trivial fix and I'll be able to get Boot working in 2.1.0 :)
>
> On Wednesday, July 13, 2016 at 9:44:50 PM UTC-4, Mark wrote:
>>
>> How about, until the issues are resolved, you require boot to be 
>> installed?
>> On Jul 13, 2016 6:52 PM, "Zach Oakes"  wrote:
>>
>>> That Boot tab is quite a tease ;) I wanted to finish support for it 
>>> so bad, but technical difficulties prevented me from doing it. I 
>>> definitely 
>>> plan to still do so, and any help would be appreciated.
>>>
>>> The issue is actually pretty simple: I need to be able to call Boot 
>>> commands without having Boot installed. I do so for Leiningen by 
>>> literally 
>>> adding it as a dependency and calling its build commands 
>>> programatically. 
>>> Boot simply isn't designed to work that way.
>>>
>>> After talking to the Boot folks, they suggested I add Boot.java 
>>>  to 
>>> my project and start a process that calls its main method with the 
>>> appropriate task names. Easy enough, but that does not actually work. 
>>> It 
>>> turns out that AOT compilation causes this java file to not behave 
>>> correctly.
>>>
>>> If anyone is interested in investigating this, I created a minimal 
>>> case for this issue here: https://github.com/oakes/boot-clj-issue
>>>
>>> Once that is resolved, it will be pretty trivial to enable building 
>>> Boot projects.I actually would like to make the built-in templates use 
>>> Boot 
>>> by default instead of Leiningen. Boot scripts in particular will be 
>>> awesome 
>>> for beginners.
>>>
>>> On Wednesday, July 13, 2016 at 6:44:01 PM UTC-4, Sean Corfield wrote:

 I see a Boot tab in the REPL area but looking at the source code, 
 detecting build.boot is disabled (and, indeed, I can’t get NC to 
 recognize 
 any of my Boot-only projects).

  

 Can you speak to where you are on Boot support?

  

 Thanks,

 Sean Corfield -- (970) FOR-SEAN -- (904) 302-SEAN
 An Architect's View -- http://corfield.org/

 "If you're not annoying somebody, you're not really alive."
 -- Margaret Atwood

  

 On 7/13/16, 10:58 AM, "Zach Oakes" >>> behalf of zso...@gmail.com> wrote:

 TL;DR: Nightcode, a Clojure IDE, just got a makeover: 
 https://sekao.net/nightcode/

  

  

 -- 
>>> You received this message because you are subscribed to the Google
>>> Groups "Clojure" group.
>>> To 

Re: Clojure Spec, performance and workflows

2016-07-15 Thread Rich Hickey
Thanks for your feedback. I've been anticipating this discussion, and my 
response here is directed to everyone, not just your problem.

Using specs and instrument+generative testing is much different than the 
example-based testing that has happened thus far, and should deliver 
substantially greater benefits. But the (test-time) performance profile of such 
an approach is similarly different, and will require a different approach as 
well.

Let's deal with the simplest issue - the raw perf of spec validation today. 
spec has not yet been perf-tuned, and it's quite frustrating to see e.g. 
shoot-out tables comparing perf vs other libs. If people want to see code being 
developed (and not just dropped in their laps) then they have to be patient and 
understand the 'make it right, then make it fast' approach that is being 
followed. I see no reason spec's validation perf should end up being much 
different than any other validation perf. But it is not there yet.

That being said, even after we perf-tune spec, comparing running a test suite 
with instrumented code (and yes, that is a good idea) with the same test suite 
without (which as people will find, has been missing bugs) is apples vs oranges.

Add in switching to (or adding) generative testing, which is definitely always 
going to be much more computationally intensive than example based tests (just 
by the numbers, each generative test is ~100 tests), there is no way that 
test-everything-every-time is going to be sustainable.

Should we not use generative testing because we can't run every test each time 
we save a file?

We have to look at the true nature of the problem. E.g., each time you save a 
file, do you run the test suites of every library upon which you depend? Of 
course not. Why not? *Because you know they haven't changed*. Did you just add 
a comment to a file - then why are you testing anything? Unfortunately, our 
testing tools don't have a fraction of the brains of decades-old 'make' when it 
comes to understanding change and dependency. Instead we have testing tools 
oriented around files and mutable-state programming where, yeah, potentially 
changing anything could break any and everything else, so let's test everything 
any time anything has changed.

This is just another instance of the general set of problems spec (and other 
work) is targeting - we are suffering from using tools and development 
approaches (e.g. building, testing, dependency management et al) whose 
granularity is a mismatch from reality. Having fine-grained (function-level) 
specs provides important opportunities to do better. While tools could (but 
currently mostly don't) know when particular functions change (vs files), specs 
can let us independently talk about whether the *interface* to a fn has 
changed, vs a change to its implementation. Testing could be radically better 
and more efficient if it leveraged these two things.

I don't like to talk about undelivered things, but I'll just say that these 
issues were well known and are not a byproduct of spec but a *target* of it 
(and other work).

Rich

-- 
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/d/optout.


Re: [ANN] Nightcode 2: Total Rewrite

2016-07-15 Thread Yoko Harada
Zach,

Here's additional info. Hitting ENTER key a couple of times, at least, one
more, fixes the problem.
Probably, reloading has a problem. If I don't hit Reload button, this weird
behavior doesn't happen. If I hit Reload button, or type (require ...
:reload) in REPL, this weird behavior starts.

Also, it happens only when I'm using Overtone. Quil apps don't have this
problem. Overtone connects to internal server, so this may be a problematic
on Nightcode REPL.

- Yoko


On Fri, Jul 15, 2016 at 10:45 AM, Zach Oakes  wrote:

> I will definitely look into the REPL issue this weekend. Sorry about that
> regression -- there are some rough edges right now. My users are also my
> beta testers :)
>
> On Thursday, July 14, 2016 at 10:46:17 PM UTC-4, yokolet wrote:
>>
>> Thanks for the update! A single REPL window on the new version looks
>> nice. It's good to avoid confusion for beginners.
>> Recently, ClojureBridge (clojurebridge.org) officially switched to
>> Nightcode. I think ClojureBridge students will like this easy to use editor.
>>
>> However, there's a really *ouch* problem in version 2.0.0. It doesn't
>> play nicely with Overtone. ClojureBridge has one Overtone material, which
>> works well on night code 1.3.1. I could run (piano),  (piano 48) or other
>> Overtone functions many times on the REPL window. But, on 2.0.0, if I run
>> (piano) once, that's it. REPL window acts weirdly.
>>
>> Are there any links to older versions? For a while, ClojureBridge wants
>> to stick to version 1.3.x.
>>
>> - Yoko
>>
>>
>>
>> On Wed, Jul 13, 2016 at 11:18 PM, Christopher Small 
>> wrote:
>>
>>> OMG. Thank you for this brilliant introduction. And of course all your
>>> hard work, as well :-)
>>>
>>>
>>>
>>> On Wednesday, July 13, 2016 at 7:35:53 PM UTC-7, Zach Oakes wrote:

 As I understand it, the Boot.java I linked to basically does that. You
 just run its main function and it takes care of downloading Boot to the
 right spot and invoking it.

 On Wednesday, July 13, 2016 at 10:18:05 PM UTC-4, Colin Fleming wrote:
>
> What I do for Leiningen in Cursive is basically mimic what the lein
> script does, and download the uberjars to .lein/self-installs, and then 
> run
> processes with those on the classpath. Would something similar for Boot
> work? As I understand it, boot.sh is just a tricky wrapper around an
> embedded jar, so hopefully that would work. I'm also selfishly interested
> in this because I don't support boot yet but I want to.
>
> On 14 July 2016 at 14:12, Zach Oakes  wrote:
>
>> If I get desperate I may do that, but the main users I care about are
>> beginners, and they generally have trouble installing CLI tools. I'm 
>> hoping
>> it is a trivial fix and I'll be able to get Boot working in 2.1.0 :)
>>
>> On Wednesday, July 13, 2016 at 9:44:50 PM UTC-4, Mark wrote:
>>>
>>> How about, until the issues are resolved, you require boot to be
>>> installed?
>>> On Jul 13, 2016 6:52 PM, "Zach Oakes"  wrote:
>>>
 That Boot tab is quite a tease ;) I wanted to finish support for it
 so bad, but technical difficulties prevented me from doing it. I 
 definitely
 plan to still do so, and any help would be appreciated.

 The issue is actually pretty simple: I need to be able to call Boot
 commands without having Boot installed. I do so for Leiningen by 
 literally
 adding it as a dependency and calling its build commands 
 programatically.
 Boot simply isn't designed to work that way.

 After talking to the Boot folks, they suggested I add Boot.java
 
 to my project and start a process that calls its main method with the
 appropriate task names. Easy enough, but that does not actually work. 
 It
 turns out that AOT compilation causes this java file to not behave
 correctly.

 If anyone is interested in investigating this, I created a minimal
 case for this issue here: https://github.com/oakes/boot-clj-issue

 Once that is resolved, it will be pretty trivial to enable building
 Boot projects.I actually would like to make the built-in templates use 
 Boot
 by default instead of Leiningen. Boot scripts in particular will be 
 awesome
 for beginners.

 On Wednesday, July 13, 2016 at 6:44:01 PM UTC-4, Sean Corfield
 wrote:
>
> I see a Boot tab in the REPL area but looking at the source code,
> detecting build.boot is disabled (and, indeed, I can’t get NC to 
> recognize
> any of my Boot-only projects).
>
>
>
> Can you speak to where you are on Boot support?
>
>
>
> Thanks,
>
> Sean

Re: Good Open Source project to learn Clojure

2016-07-15 Thread Jason Felice
We'd love to have you on Avi:

https://github.com/maitria/avi

If you normally use vim, the problem domain is easy to understand, and it
provides plenty of interesting problems to solve.

-Jason

On Fri, Jul 15, 2016 at 6:49 AM, Cecil Westerhof 
wrote:

> I did not work with Clojure for about a year I think. And before that I
> only made one little desktop application for myself and played with some
> little stuff like Happy Numbers. There is a big chance I will get a Clojure
> project soon, so it would be good to get up to speed. Anyone an idea what a
> good project would be to contribute to? Difficult enough that I learn a lot
> of stuff fast, but simple enough that I can contribute.
>
> I worked with a lot of languages and get proficient with languages fast.
> So in the beginning it should help me to get accustomed to Clojure, but
> after that it should be challenging enough to continue. I would not like to
> come, learn and go away. ;-)
>
> --
> Cecil Westerhof
>
> --
> 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/d/optout.
>

-- 
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/d/optout.


Clojure News is out

2016-07-15 Thread Ertuğrul Çetin
Hi Everyone,

I'm very excited to announce that Clojure News(Beta) https://clojure.news is 
out which is Hacker News Clone built for Clojurists.

My goal is gathering Clojurists under one roof and helping Clojure 
Community to improve.

It has cool and community driven features.

P.S: It is open source you can check out the source code from GitHub: 
https://github.com/ertugrulcetin/ClojureNews

-- 
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/d/optout.


Re: Good Open Source project to learn Clojure

2016-07-15 Thread Shaun Mahood
Try checking out some of the projects 
on http://open-source.braveclojure.com/


On Friday, July 15, 2016 at 4:49:45 AM UTC-6, Cecil Westerhof wrote:
>
> I did not work with Clojure for about a year I think. And before that I 
> only made one little desktop application for myself and played with some 
> little stuff like Happy Numbers. There is a big chance I will get a Clojure 
> project soon, so it would be good to get up to speed. Anyone an idea what a 
> good project would be to contribute to? Difficult enough that I learn a lot 
> of stuff fast, but simple enough that I can contribute.
>
> I worked with a lot of languages and get proficient with languages fast. 
> So in the beginning it should help me to get accustomed to Clojure, but 
> after that it should be challenging enough to continue. I would not like to 
> come, learn and go away. ;-)
>
> -- 
> Cecil Westerhof
>

-- 
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/d/optout.


Re: Clojure Spec, performance and workflows

2016-07-15 Thread Colin Yates
Just dipping in to say the pragmatism and maturity around here is
hugely attractive compared to other tech communities. +1.

In terms of reducing the impact of a change, I have found ruthlessly
separating out into separate libraries very beneficial here. lein's
'checkout' capability makes it not much more effort than single
monolithic codebase. I am not talking about deployment models, I am
talking about source-code modules.

On 15 July 2016 at 15:50, Rich Hickey  wrote:
> Thanks for your feedback. I've been anticipating this discussion, and my 
> response here is directed to everyone, not just your problem.
>
> Using specs and instrument+generative testing is much different than the 
> example-based testing that has happened thus far, and should deliver 
> substantially greater benefits. But the (test-time) performance profile of 
> such an approach is similarly different, and will require a different 
> approach as well.
>
> Let's deal with the simplest issue - the raw perf of spec validation today. 
> spec has not yet been perf-tuned, and it's quite frustrating to see e.g. 
> shoot-out tables comparing perf vs other libs. If people want to see code 
> being developed (and not just dropped in their laps) then they have to be 
> patient and understand the 'make it right, then make it fast' approach that 
> is being followed. I see no reason spec's validation perf should end up being 
> much different than any other validation perf. But it is not there yet.
>
> That being said, even after we perf-tune spec, comparing running a test suite 
> with instrumented code (and yes, that is a good idea) with the same test 
> suite without (which as people will find, has been missing bugs) is apples vs 
> oranges.
>
> Add in switching to (or adding) generative testing, which is definitely 
> always going to be much more computationally intensive than example based 
> tests (just by the numbers, each generative test is ~100 tests), there is no 
> way that test-everything-every-time is going to be sustainable.
>
> Should we not use generative testing because we can't run every test each 
> time we save a file?
>
> We have to look at the true nature of the problem. E.g., each time you save a 
> file, do you run the test suites of every library upon which you depend? Of 
> course not. Why not? *Because you know they haven't changed*. Did you just 
> add a comment to a file - then why are you testing anything? Unfortunately, 
> our testing tools don't have a fraction of the brains of decades-old 'make' 
> when it comes to understanding change and dependency. Instead we have testing 
> tools oriented around files and mutable-state programming where, yeah, 
> potentially changing anything could break any and everything else, so let's 
> test everything any time anything has changed.
>
> This is just another instance of the general set of problems spec (and other 
> work) is targeting - we are suffering from using tools and development 
> approaches (e.g. building, testing, dependency management et al) whose 
> granularity is a mismatch from reality. Having fine-grained (function-level) 
> specs provides important opportunities to do better. While tools could (but 
> currently mostly don't) know when particular functions change (vs files), 
> specs can let us independently talk about whether the *interface* to a fn has 
> changed, vs a change to its implementation. Testing could be radically better 
> and more efficient if it leveraged these two things.
>
> I don't like to talk about undelivered things, but I'll just say that these 
> issues were well known and are not a byproduct of spec but a *target* of it 
> (and other work).
>
> Rich
>
> --
> 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/d/optout.

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

[ANN] Uruk: Clojure lib for MarkLogic NoSQL databases

2016-07-15 Thread Dave Liepmann
Hi folks. 

I am releasing Uruk, a Clojure library for accessing MarkLogic NoSQL 
databases via the XML Content Connector API. Please see 
https://github.com/daveliepmann/uruk and Clojars . 
Feedback is welcome.

Many thanks go to LambdaWerk  for sponsoring 
the project.

The project is named after the ancient Mesopotamian city-state in which 
have been found some of the oldest documents known to humanity.

Cheers,
Dave Liepmann

-- 
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/d/optout.


[ANN] io.aviso/config 0.2.0

2016-07-15 Thread Howard Lewis Ship
io.aviso/config - Smart and flexible system configuration

Config is a very small library used to handle configuration of a server; it
works quite well with a system defined in terms of Stuart Sierra’s
component library.

config embraces the idea that your production configuration is different
than your local configuration ... but not too different, merely a matter of
layering small patches on top of the base configuration. It also accounts
for the 12-factor app approach, in that it
can incorporate environment variables from inside pure EDN files.

This release is a major pivot: switching from Prismatic Schema to
clojure.spec, to define each component's configuration.

Obviously, a release tied to an alpha release of Clojure is for the brave
and the bold!

-- 
Howard M. Lewis Ship

Senior Mobile Developer at Walmart Labs

Creator of Apache Tapestry

(971) 678-5210
http://howardlewisship.com
@hlship

-- 
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/d/optout.


Re: [ANN] io.aviso/config 0.2.0

2016-07-15 Thread Howard Lewis Ship
https://github.com/AvisoNovate/config/

On Fri, Jul 15, 2016 at 12:11 PM, Howard Lewis Ship 
wrote:

> io.aviso/config - Smart and flexible system configuration
>
> Config is a very small library used to handle configuration of a server;
> it works quite well with a system defined in terms of Stuart Sierra’s
> component library.
>
> config embraces the idea that your production configuration is different
> than your local configuration ... but not too different, merely a matter of
> layering small patches on top of the base configuration. It also accounts
> for the 12-factor app approach, in that it
> can incorporate environment variables from inside pure EDN files.
>
> This release is a major pivot: switching from Prismatic Schema to
> clojure.spec, to define each component's configuration.
>
> Obviously, a release tied to an alpha release of Clojure is for the brave
> and the bold!
>
> --
> Howard M. Lewis Ship
>
> Senior Mobile Developer at Walmart Labs
>
> Creator of Apache Tapestry
>
> (971) 678-5210
> http://howardlewisship.com
> @hlship
>



-- 
Howard M. Lewis Ship

Senior Mobile Developer at Walmart Labs

Creator of Apache Tapestry

(971) 678-5210
http://howardlewisship.com
@hlship

-- 
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/d/optout.


Re: Clojure 1.9.0-alpha10: Semantic mismatch: any? vs not-any?

2016-07-15 Thread Atamert Ölçgen
On Mon, Jul 11, 2016 at 9:01 PM, Alan Thompson  wrote:

> In clojure we are used to shortcuts involving not:
>
> (when-not x ...) => (when (not x) ...)
> (if-not x ...)   => (if (not x) ...)
> (not-every? pred coll)   => (not (every? pred coll))
> (not-any? pred coll) => (not (some pred coll))
>
> However, the new function clojure.core/any? breaks this semantic pattern:
>
> ​> ​
> (doc clojure.core/any?)
> -
> clojure.core/any?
> ([x])
>   Returns true given any argument.
>
> ​> ​
> (doc clojure.core/not-any?)
> -
> clojure.core/not-any?
> ([pred coll])
>   Returns false if (pred x) is logical true for any x in coll,
>   else true.
>
> ​These two functions are not only unrelated to each other, but they don't
> even accept the same number or type of arguments.  Moreover, ​there is an
> even more surprising property:
>
> > (clojure.core/any? nil)
> true
>
> I would have bet money that, at least for nil, the result would not have
> been true.
> ​
> Given the significant prior conventions in Clojure​ for functions like
> some, every?, *-not, not-*, and also the general handling of nil, it seems
> that the new any? function is bound to cause much confusion &
> consternation, especially among people learning Clojure.
>
> Given the degenerate definition:
>
> > (source clojure.core/any?)
> (defn any?
>   [x] true)
>
>
I can't think of a single use case where this function would be useful. I
would either inline true instead of a function call, or I would supply
(constantly true) if a function is expected.

I am sure it wouldn't be included in core if there wasn't a valid reason.
Could you tell me what is this function good for?




> would it not be simpler and more instinctive to rename the function
> clojure.core/true:
>
> (defn clojure.core/true
>   [x] true)
>
> We could then have code with the obvious result:
>
> (true 1) => true
> (true "hi")  => true
> (true [])=> true
> (true nil)   => true
>
> I believe that such a change would help to keep Clojure in line with users
> instincts and assumptions, as well as past Clojure practices.  I have often
> felt that one of the most important principles in any sort of software
> development is adherence to the Principle of Least Astonishment
> .
>
> Alan
>
>
>
> On Mon, Jul 11, 2016 at 7:28 AM, Alex Miller  wrote:
>
>>
>> 1.9.0-alpha10 includes the following changes since 1.9.0-alpha9:
>>
>> - NEW clojure.core/any? - a predicate that matches anything. any? has
>> built-in gen support. The :clojure.spec/any spec has been removed.
>> Additionally, gen support has been added for some?.
>>
>>
>>
>>
>
> --
> 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/d/optout.
>



-- 
Kind Regards,
Atamert Ölçgen

◻◼◻
◻◻◼
◼◼◼

www.muhuk.com

-- 
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/d/optout.


Re: where to find clojure gigs?

2016-07-15 Thread rob
We're (http://www.Omnypay.net) looking for Clojurians to work short term 
with the eventual possibility of long term. 

Drop me a note (j...@omnypay.net or direct if you know my direct email) and 
let me know what you are looking for and your experience.

Thanks!
Rob 

On Wednesday, July 13, 2016 at 2:15:36 PM UTC-7, ojito wrote:
>
> I'm looking for short term clojure gigs to work on? Does anyone know where 
> to find such gigs or know anyone who needs some clojure work done?
>

-- 
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/d/optout.


Re: Clojure 1.9.0-alpha10: Semantic mismatch: any? vs not-any?

2016-07-15 Thread Sean Corfield
On 7/15/16, 12:27 PM, "Atamert Ölçgen"  wrote:
> > (defn any?
> >  [x] true)
> I can't think of a single use case where this function would be useful

I don’t speak for Clojure/core but…

This will be used in some of the spec in clojure.java.jdbc 0.6.2 because there 
are functions whose result type depends on the signatures of up to two 
transforming functions that are optionally passed in, as well as an option that 
controls how the result set is built. Without a full dependent type system, 
“any?” is about as much as you can assert about those results.

I can also see it being useful when programmatically constructing predicates to 
use over collections. People often use identity but that doesn’t always help, 
such as constructing a filter where you want all values to be retained. 
Previously, you’d have to use (constantly true) but that could accidentally be 
called with any number of arguments – any? is specifically a one-argument 
predicate so it’s much more clear to use that.

Sean Corfield -- (904) 302-SEAN -- (970) FOR-SEAN
An Architect's View -- http://corfield.org/

"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/d/optout.


Re: Clojure 1.9.0-alpha10: Semantic mismatch: any? vs not-any?

2016-07-15 Thread Alex Miller

On Friday, July 15, 2016 at 2:27:56 PM UTC-5, Atamert Ölçgen wrote:
>
>
> I can't think of a single use case where this function would be useful. I 
> would either inline true instead of a function call, or I would supply 
> (constantly true) if a function is expected.
>
> I am sure it wouldn't be included in core if there wasn't a valid reason. 
> Could you tell me what is this function good for?
>

It's useful for defining specs.

-- 
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/d/optout.


Re: where to find clojure gigs?

2016-07-15 Thread Ertuğrul Çetin
Also you can try this: https://clojure.news/#/job

On Thursday, July 14, 2016 at 12:15:36 AM UTC+3, ojito wrote:
>
> I'm looking for short term clojure gigs to work on? Does anyone know where 
> to find such gigs or know anyone who needs some clojure work done?
>

-- 
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/d/optout.


Re: [ANN] Clojure 1.9.0-alpha5

2016-07-15 Thread Howard M. Lewis Ship
I hit this too and after an embarrasingly long time, found out the `lein clean` 
took care of it; I had some previously AOTed code lying around in target.

-- 
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/d/optout.


Re: Use latest stable

2016-07-15 Thread James Elliott
I was going to recommend the same thing! I used to use lein ancient all the 
time, but now love how VersionEye keeps track of all my open source 
projects for me so I don’t have to do that. That became even more important 
as the projects started spinning off other projects. :)

On Friday, July 15, 2016 at 9:25:30 AM UTC-5, Matthew Boston wrote:
>
> On the topic of keeping dependencies up-to-date, I use 
> https://www.versioneye.com. I sign in with GitHub and it watches all the 
> projects that I choose for out-of-date deps. It sends me a weekly/daily 
> email so I'm rarely behind every new release.
>
> Cheers.
>
> On Thursday, July 14, 2016 at 11:58:41 AM UTC-6, Alan Thompson wrote:
>>
>> If you haven't seen it yet, lein-ancient (
>> https://github.com/xsc/lein-ancient) provides an easy way of checking 
>> your project for out of date dependencies.  For example:
>>
>> > lein ancient
>> [criterium "0.4.4"] is available but we use "0.4.3"
>> [tupelo "0.9.0"] is available but we use "0.1.60"
>> [com.rpl/specter "0.11.2"] is available but we use "0.9.1"
>>
>>
>> I tend to run it every couple of months, or whenever I remember.  Then it 
>> is easy to update project.clj
>>
>> Alan
>>
>>
>> On Thu, Jul 14, 2016 at 3:52 AM, Cecil Westerhof  
>> wrote:
>>
>>> Is there a way to signify latest stable version? Because when you use:
>>>   :dependencies [[org.clojure/clojure"LATEST"]
>>> it wants to work with:
>>> clojure-1.9.0-alpha10
>>>
>>> I prefer to use clojure-1.8.0. There is a reason it is called alpha. But 
>>> when there is a stable 1.9.0 I want to use that one.
>>>
>>> -- 
>>> Cecil Westerhof
>>>
>>> -- 
>>> 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/d/optout.
>>>
>>
>>

-- 
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/d/optout.


Re: [ANN] Nightcode 2: Total Rewrite

2016-07-15 Thread Dave Yarwood
Nightcode 2 is already looking great! I'm looking forward to seeing how it 
develops.

I'm also tickled that there is an Audio App template using Alda! Let me 
know if there's anything Alda-related I can help with :)

On Wednesday, July 13, 2016 at 1:58:05 PM UTC-4, Zach Oakes wrote:
>
> TL;DR: Nightcode, a Clojure IDE, just got a makeover: 
> https://sekao.net/nightcode/
>
> In a world...where developer tools are gargantuan beasts, unapproachable 
> to beginners, one IDE stood alone.
>
> *a fiddle softly plays ashokan farewell*
>
> “You’re not going already, are you, Nightcode?”
>
> “I must, father. So many new people are learning Clojure. They need me.”
>
> *music becomes ominous as Nightcode rides a wagon into the distance*
>
> Until one day, when it embarked on a journey to save the world...from 
> itself.
>
> *scene switches to Nightcode crouching in a fetal position in a dense 
> forest*
>
> “I’m hearing voices.”
>
> *heavy breathing*
>
> “STOP TALKING TO ME!”
>
> *one of those jumanji drums starts beating slowly and then gets faster and 
> louder*
>
> *the camera zooms in on Nightcode’s face as it suddenly smiles wryly*
>
> Things are about to get...complicated.
>
> *scene changes, a crowd gathers in a small village*
>
> “Gather ‘round! I’m making it easy to start coding!”
>
> “But Nightcode, those appear to be bugs!”
>
> “Wrong, ma’am, they are features! All of them!”
>
> “SILENCE!”
>
> *the crowd becomes mute as a hooded figure moves forward*
>
> “Enough of this madness, Nightcode. In three years your features have 
> remained dormant as your bug count has exploded! Meanwhile, people have 
> been using --”
>
> “Don’t listen to this fraud, you all need me”
>
> *Nightcode lifts its trench coat and releases a plague of bugs on the 
> village as it runs away*
>
> “I don’t want to crash but I will if I have to. I don’t want to crash but 
> I will if I have to. I don’t want to crash but I will if I have to. STOP 
> THE VOICES, MAKE IT STOP!”
>
> When your life is no longer your own...
>
> *screen dims, Nightcode runs into a forest as the village is ravaged*
>
> ...a hero must rise.
>
> *the hooded figure reveals himself*
>
> Meet...Kevin.
>
> *Kevin Hart smiles as upbeat music blares*
>
> “HEY Y’ALL THAT WAS CRAZY! I guess it’s a bad time to ask for a better 
> hotel. HAHA!”
>
> Kevin is just an average guy, with a few...friends.
>
> *the camera pans several feet up to reveal...Ice Cube and Dwayne Johnson*
>
> “This is gonna be bad, Cube.”
>
> “I know, man. How did we get stuck with this guy again?”
>
> A brave trio must save the world from Nightcode...by reinventing it.
>
> “Check it. Nightcode can’t be killed. We gotta find the good inside it and 
> rip it out!”
>
> “YEAH CUBE I AGREE. JUST LIKE YOU DID WITH YOUR CAREER!”
>
> *Cube slaps Hart and continues*
>
> “There’s only one way to do that. We gotta rewrite Nightcode.”
>
> “You mean like a sequel? Like we keep doing with Fast and the Furious? No 
> way.”
>
> “YEAH CUBE, JOEL SPOLSKY SAID YOU SHOULD NEVER --”
>
> “Dammit I KNOW what Joel Spolsky said, and I don’t care. You guys got any 
> better ideas?”
>
> *Hart and Johnson look at each other sheepishly*
>
> *scene switches to a workshop with maps and shit*
>
> “Nightcode is written with Swing, a deprecated UI framework. We’re gonna 
> replace it with Java FX. What do you got Rock?”
>
> “The editor. Right now it doesn’t offer much beyond syntax highlighting. 
> We’re gonna have to write something from scratch.”
>
> “AWW HELL YEAH, GONNA BE LIKE LIGHT TABLE HAD A BABY WITH CURSIVE, 
> HAHAA!”
>
> “What? No. Relax Kev. An instaREPL and some basic inline errors, that’s 
> all we have time for.”
>
> The trio will learn…
>
> *Hart looks in a mirror*
>
> “Oh hey Nightcode, what’s up? CAN YOU DEAL WITH THESE RAINBOW PARENS?! 
> Didn’t think so.”
>
> ...what it’s like…
>
> *Cube emerges from the workshop covered in oil*
>
> “We shrunk the damn jar file from 50 MB to just 19!”
>
> ...to overcome odds.
>
> “The new version has just 1600 lines of code, less than half what the old 
> one has. We may actually pull this off.”
>
> This summer, get ready…
>
> “WATCH ME MOVE. WATCH ME MOVE. WATCH ME -- hey man take it easy put that 
> down be cool.”
>
> ...for the rewrite…
>
> “I’m sick of these motherfuckin’ bugs, on this motherfuckin’ IDE!”
>
> ...of your life.
>
> “We’re gonna get this done or die tryin’. And Kevin IF YOU DON’T STOP 
> DANCING YOU’LL DIE NO MATTER WHAT.”
>
> *a door opens as the trio argue, music stops, and Nightcode’s silhouette 
> appears*
>
> “Game over, gents. How can you replace me? Beginners don’t know how to run 
> jar files.”
>
> “We built native installers, fool.”
>
> *explosions*
>
> NIGHTCODE 2
>
> TOTAL REWRITE
>
> https://sekao.net/nightcode/
>

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

Re: where to find clojure gigs?

2016-07-15 Thread ojito
> https://clojure.news/#/job

slick design! is this a clone of HN? what's the repo url?

On Wednesday, July 13, 2016 at 2:15:36 PM UTC-7, ojito wrote:
>
> I'm looking for short term clojure gigs to work on? Does anyone know where 
> to find such gigs or know anyone who needs some clojure work done?
>

-- 
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/d/optout.