Re: Using @ alone

2015-05-21 Thread Colin Yates
Yes, exactly. In my previous email I incorrectly said '() was a set.
On 21 May 2015 01:07, "Pierre Thibault"  wrote:

> No:
>
> (type '())
> clojure.lang.PersistentList$EmptyList
>
> It a list just like it should be.
>
> Le mercredi 20 mai 2015 20:02:22 UTC-4, Colin Yates a écrit :
>>
>> That's OK, I am also confused between '() which is a literal list and #{}
>> which is a literal set :).
>> On 21 May 2015 00:55, "Pierre Thibault"  wrote:
>>
>>> OK,
>>>
>>> I don't know how to write macros yet. I was confused.
>>>
>>> Thank you.
>>>
>>> Le mercredi 20 mai 2015 18:48:03 UTC-4, Colin Yates a écrit :

 @ (and deref) are used to dereference constructs which support multiple
 values over time; atoms, futures and promises etc. ~@ is a different thing
 entirely and is used to desplice lists in a macro.

 In your example, you aren't in a macro and '() is defining a set, I.e.
 it isn't a temperal construct.
 On 20 May 2015 23:43, "Pierre Thibault"  wrote:

> For example:
>
> (def foo '(1 2 3))
> (+ @foo)
>
> Does not work. I am expecting 6.
>
> Le mercredi 20 mai 2015 18:37:05 UTC-4, Colin Yates a écrit :
>>
>> @my-atom is the same as (deref my-atom), is that what you mean?
>> On 20 May 2015 23:35, "Pierre Thibault" 
>> wrote:
>>
>>> Is possible to use the operator '@' alone? In the Joy Of Clojure
>>> book it is presented as '~@'. I would like an example.
>>>
>>> --
>>> 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 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 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.
>

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

Re: Accessing static fields

2015-05-21 Thread martin madera
I don't want to start a flamewar here, but Python is quite a different 
beast than Java or Clojure. TBH Python is more complex language than 
Clojure but many things were made easy in Python and Python looks like that 
someone really thought about newbie experience. A newbie experience in 
Clojure is not so pleasant.

But Clojure is no harder, it's different - you need to start thinking a bit 
differently than in Python.

Martin

On Thursday, 21 May 2015 05:49:31 UTC+2, Pierre Thibault wrote:
>
> I love to program in Python and when you want do something in Python it is 
> usually easy. This makes your imagination powerful. Sad to see it is not 
> the same in Java.
>
> Le mercredi 20 mai 2015 23:17:56 UTC-4, Andy Fingerhut a écrit :
>>
>> Java interop _with method names known at compile time_ is pretty simple, 
>> and is the most common case I have seen.
>>
>> Why do you think it is supposed to be simple to select Java methods based 
>> upon the values of variables at run time?
>>
>> Andy
>>
>

-- 
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] New release of Alia, Cassandra driver/client for clojure

2015-05-21 Thread Max Penet
New release of Alia, the lean cassandra driver for clojure.

https://github.com/mpenet/alia

Alia focuses on performance, stability, simplicity, extensibility, 
being feature complete and tries to expose java-drivers' API in a
clojure friendly way.

It provides a "blocking" API, but also has interfaces for core.async
and/or manifold for the Asynchronous API of the driver. You can for
instance have row streaming over immense ResultSets over core.async
channels, or manifold stream, in a controlled manner (control over
chunk sizes, pausing) or have a single ResultSet returned as a
"promise" via a single channel value, or manifold defered.

To my knowledge it's currently in use by serious companies doing HFT,
analytics, email management, server monitoring, cloud storage/hosting
and media broadcasting among others.

A few noticeable open-source projects using it in the wild:
* https://github.com/exoscale/pithos
* https://github.com/pyr/cyanite
* https://github.com/MastodonC/kixi.hecuba

It's now based on datastax driver 2.1.6, bringing some nice
improvements and new APIs:
https://groups.google.com/a/lists.datastax.com/forum/#!msg/java-driver-user/NWXZoRMTgPk/H3Sd3FW12uoJ

Some highlights of this release: 
* now uses netty4 internally
* adds speculative execution policies
* adds address-translaters
* adds custom timestamp generators
* improve logging/tracing utils
* settable query idempotency (whether it can be applied multiple
  times without changing the result beyond the initial application)
* custom paging state setting

and more... 

You can get it from clojars
just add the following to your project.clj

[cc.qbits/alia "2.4.0"]

- https://github.com/mpenet/alia
- http://mpenet.github.io/alia/qbits.alia.html#docs (codox)

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


Question about sequence with transducers

2015-05-21 Thread Mark Engelberg
According to the website:

sequence To create a sequence from the application of a transducer to an
input collection, use sequence

:

(sequence xf (range 1000))

The resulting sequence elements are incrementally computed. These sequences
will consume input incrementally as needed and fully realize intermediate
operations. This behavior differs from the equivalent operations on lazy
sequences.


Can someone please clarify: how does this behavior differ from the
equivalent operations on lazy sequences?  It seems to me that lazy
sequences can also be described as consuming input incrementally and fully
realizing intermediate operations.  So what's the difference?

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


[BUG?] loading Clojure source files from various data sources (classloading)

2015-05-21 Thread Alex Fowler
Hello!

I am developing a Java application where Clojure is used as a library. The 
application is required to load sources (including Clojure sources) from 
arbitrary locations in filesystem, internet and maybe a dozen other places. 
Hence I have developed corresponding classloaders for that, which properly 
implement the required ClassLoader methods.

Loading Clojure sources is realized via this approach:

Compiler.LOADER.alterRoot(getMyClassLoader(), ...);  // changing 
the LOADER to my chain of classloaders
IFn require = Clojure.var("clojure.core", "require");
require.invoke(Clojure.read("example.namespace"));

where the contents of the "example.namespace" are:

(ns example.namespace
  (:require [other.example.namespace :as other])))

I have figured that the loading happens with RT.load() 

 
which delegates to RT.loadResourceScript() 
,
 so 
I just alter the Compiler.LOADER so that RT.baseLoader() returns my 
classloaders. And in my classloaders I simply have to override the 
getResourceAsStream 
and all works!
  
The namespace example.namespace starts loading ok. It successfully loads 
the whole clojure.core and then begins to process the first require - the 
other.example.namespace. And this is where something *bad *happens.

It appears to be that the (require) inside the ns form in the 
example.namespace uses not the RT.load() method, but Compiler.load() 
where
 
on line 7210 
the
 
Compiler.LOADER, which by that moment points to the correct classloader 
created by me, gets replaced by RT.makeClassLoader() 
where
 
the current RT.baseLoader() which is effectively Compiler.LOADER gets 
passed as the parent to the newly created DynamicClassLoader.

So I get Compiler.LOADER which I have set to the correct classloader, 
replaced by the DynamicClassLoader whose parent is my classloader. The 
problem is that DynamicClassLoader inherits from URLClassLoader that 
inherits from ClassLoader which, although accepts a parent classloader on 
its creation, does not delegate getResourceAsStream() in case of its 
personal failure to its parent 
!
 That 
results in that my classloader, although still present in the chain, never 
gets called and the (require) in the ns form of example.namespace fails to 
locate the required namespaces that **are** available at that data source.

The problem is that this behavior is hard-coded in Clojure and it looks 
like it is impossible to change that. Clojure forces us to use a 
classloader that inherits the getResourceAsStream() method from 
java.lang.ClassLoader which does not allow delegation of this request to 
parent classloader. This effectively prevents using Clojure as a library 
together with a plugin system because it renders Clojure incapable of 
working with sources that are fetched from elsewhere than the Java's 
URLClassLoader is capable of retrieving data from. It is impossible to load 
sources from a database, or some internet data source or an encrypted data 
source, or even another location in the filesystem. Wow!

We've went with Clojure and now are in the desperate need to resolve this 
peculiar phenomenon.. What could be a proposed solution for this situation?

Thank you.

-- 
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: [BUG?] loading Clojure source files from various data sources (classloading)

2015-05-21 Thread Alex Fowler
I want also to add that Sun/Oracle realize the importance of loading things 
from other sources, read the very last paragraph of this notice 
.
 
But Clojure currently prevents this by hard-code.

-- 
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: [BUG?] loading Clojure source files from various data sources (classloading)

2015-05-21 Thread tokomakoma...@gmail.com


HTC J より送信

- Reply message -
送信者: "Alex Fowler" 
宛先: 
件名: [BUG?] loading Clojure source files from various data sources (classloading)
日付: 木, 5月 21日, 2015年 20:25
Hello!
I am developing a Java application where Clojure is used as a library. The 
application is required to load sources (including Clojure sources) from 
arbitrary locations in filesystem, internet and maybe a dozen other places. 
Hence I have developed corresponding classloaders for that, which properly 
implement the required ClassLoader methods.
Loading Clojure sources is realized via this approach:
Compiler.LOADER.alterRoot(getMyClassLoader(), ...);  // changing the 
LOADER to my chain of classloaders
IFn require = Clojure.var("clojure.core", "require");
require.invoke(Clojure.read("example.namespace"));
where the contents of the "example.namespace" are:
(ns example.namespace
(:require [other.example.namespace :as other])))
I have figured that the loading happens with RT.load() which delegates to 
RT.loadResourceScript(), so I just alter the Compiler.LOADER so that 
RT.baseLoader() returns my classloaders. And in my classloaders I simply have 
to override the getResourceAsStream and all works!  The namespace 
example.namespace starts loading ok. It successfully loads the whole 
clojure.core and then begins to process the first require - the 
other.example.namespace. And this is where something bad happens.
It appears to be that the (require) inside the ns form in the example.namespace 
uses not the RT.load() method, but Compiler.load()where on line 7210 the 
Compiler.LOADER, which by that moment points to the correct classloader created 
by me, gets replaced by RT.makeClassLoader()where the current RT.baseLoader() 
which is effectively Compiler.LOADER gets passed as the parent to the newly 
created DynamicClassLoader.
So I get Compiler.LOADER which I have set to the correct classloader, replaced 
by the DynamicClassLoader whose parent is my classloader. The problem is that 
DynamicClassLoader inherits from URLClassLoader that inherits from ClassLoader 
which, although accepts a parent classloader on its creation, does not delegate 
getResourceAsStream() in case of its personal failure to its parent! That 
results in that my classloader, although still present in the chain, never gets 
called and the (require) in the ns form of example.namespace fails to locate 
the required namespaces that *are* available at that data source.
The problem is that this behavior is hard-coded in Clojure and it looks like it 
is impossible to change that. Clojure forces us to use a classloader that 
inherits the getResourceAsStream() method from java.lang.ClassLoader which does 
not allow delegation of this request to parent classloader. This effectively 
prevents using Clojure as a library together with a plugin system because it 
renders Clojure incapable of working with sources that are fetched from 
elsewhere than the Java's URLClassLoader is capable of retrieving data from. It 
is impossible to load sources from a database, or some internet data source or 
an encrypted data source, or even another location in the filesystem. Wow!
We've went with Clojure and now are in the desperate need to resolve this 
peculiar phenomenon.. What could be a proposed solution for this situation?
Thank you.



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


Question about sequence with transducers

2015-05-21 Thread Alex Miller
Lazy sequences are more lazy. In particular, expanding transformations (most 
commonly mapcat) will produce elements that are consumed as needed in a lazy 
sequence. In a transducer the entire expansion will get produced when it's 
encountered and then doled out to one by one. So intermediate operations in 
transducers are never lazy.

In practical terms, most of the time this makes no difference, but you can 
certainly construct cases where it is doing more work before you expect it. 

For example:
(mapcat range (range 100 110))

Will produce elements lazily as you need them (ignoring chunking for the moment 
which puts this to a bit of a lie - but imagine the intermediate range to be 
something that expensively computes many elements). Consuming 5 elements from 
the sequence would cause 5 elements to be computed in the middle.  

However consuming 5 elements from this:
(sequence (mapcat range) (range 100 110))

will cause the first mapcat to compute all 100 elements and just return 5. For 
many transformations this is not important, but if maximum laziness is 
necessary than lazy seqs will still be useful to you here. 


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


[BUG?] loading Clojure source files from various data sources (classloading)

2015-05-21 Thread Alex Miller
What version of Clojure are you using?

-- 
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: [BUG?] loading Clojure source files from various data sources (classloading)

2015-05-21 Thread Alex Fowler
We are using [org.clojure/clojure "1.7.0-beta3"] for desktop and 
[org.clojure-android/clojure 
"1.7.0-beta6"] for Android.

By your question I assume you're refering to the fact that some of the 
links I have made in the original post are for clojure-android, I am sorry, 
apparently I mixed up the browser tabs when copy-pasting the links. 
Tiredness gets in the way.. But that does not change anything - the problem 
is valid both for Android and PC. There is no big difference for Android - 
the DalvikDynamicClassLoader is a descendant of DynamicClassLoader and 
suffers from the same issue. So, there is also a little difference for 
RT.makeClassLoader() for Android concerning that it creates the 
DalvikDynamicClassLoader 
instead of DynamicClassLoader but the issue is the same, it is simply 
mirrored to Android. We have been looking and investigating all this 
yesterday with Sattvik and we together have come to this conclusion. 

четверг, 21 мая 2015 г., 16:05:03 UTC+4 пользователь Alex Miller написал:
>
> What version of Clojure are you using?

-- 
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: Using @ alone

2015-05-21 Thread Sam Ritchie
That’s probably with a macro body, where it takes on a slightly different 
meaning.

`(+ ~@[1 2 3])

In that form, ~@ strips off the sequence following it. The form macroexpands to

(clojure.core/+ 1 2 3)

I believe ~@ only works inside a backticked form.

Sam Ritchie (@sritchie)
RaceHub Co-Founder
703.863.8561
www.racehubhq.com 
Twitter  // Facebook 



> On May 20, 2015, at 4:35 PM, Pierre Thibault  
> wrote:
> 
> Is possible to use the operator '@' alone? In the Joy Of Clojure book it is 
> presented as '~@'. I would like an example.
> 
> -- 
> 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: Using @ alone

2015-05-21 Thread Sam Ritchie
Whoops, sorry all. Only the first message in the thread loaded.

Sam Ritchie (@sritchie)
RaceHub Co-Founder
703.863.8561
www.racehubhq.com 
Twitter  // Facebook 



> On May 21, 2015, at 8:33 AM, Sam Ritchie  wrote:
> 
> That’s probably with a macro body, where it takes on a slightly different 
> meaning.
> 
> `(+ ~@[1 2 3])
> 
> In that form, ~@ strips off the sequence following it. The form macroexpands 
> to
> 
> (clojure.core/+ 1 2 3)
> 
> I believe ~@ only works inside a backticked form.
> 
> Sam Ritchie (@sritchie)
> RaceHub Co-Founder
> 703.863.8561
> www.racehubhq.com 
> Twitter  // Facebook 
> 
> 
> 
>> On May 20, 2015, at 4:35 PM, Pierre Thibault > > wrote:
>> 
>> Is possible to use the operator '@' alone? In the Joy Of Clojure book it is 
>> presented as '~@'. I would like an example.
>> 
>> -- 
>> 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: Accessing static fields

2015-05-21 Thread Timothy Baldridge
It would probably be good to have a better example of what you are trying
to accomplish. Chances are with a few small tweaks we can help you find
something both elegant and fast.


On Thu, May 21, 2015 at 1:28 AM, martin madera  wrote:

> I don't want to start a flamewar here, but Python is quite a different
> beast than Java or Clojure. TBH Python is more complex language than
> Clojure but many things were made easy in Python and Python looks like that
> someone really thought about newbie experience. A newbie experience in
> Clojure is not so pleasant.
>
> But Clojure is no harder, it's different - you need to start thinking a
> bit differently than in Python.
>
> Martin
>
> On Thursday, 21 May 2015 05:49:31 UTC+2, Pierre Thibault wrote:
>>
>> I love to program in Python and when you want do something in Python it
>> is usually easy. This makes your imagination powerful. Sad to see it is not
>> the same in Java.
>>
>> Le mercredi 20 mai 2015 23:17:56 UTC-4, Andy Fingerhut a écrit :
>>>
>>> Java interop _with method names known at compile time_ is pretty simple,
>>> and is the most common case I have seen.
>>>
>>> Why do you think it is supposed to be simple to select Java methods
>>> based upon the values of variables at run time?
>>>
>>> Andy
>>>
>>  --
> 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.
>



-- 
“One of the main causes of the fall of the Roman Empire was that–lacking
zero–they had no way to indicate successful termination of their C
programs.”
(Robert Firth)

-- 
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] Demo of the Holy Grail workflow

2015-05-21 Thread blake
Interesting.

I'm somewhat concerned that the "genius.com" annotation says the kingdom of
Assyria was around for 25,000 years, though.

On Wed, May 20, 2015 at 6:03 PM, Daniel Szmulewicz <
daniel.szmulew...@gmail.com> wrote:

> Hi everybody,
>
> A video showcasing the Holy Grail workflow has been posted on youtube.
>
> https://www.youtube.com/watch?v=eoxsSrFK_Is
>
> The workflow is built on top of Boot , a build
> tool, and system
> , a
> component library. It tries to turn the experience of developing for the
> web into a liberating and seamless experience.
>
> Here are some of the properties of said workflow:
>
>- Manual and automatic mode, ie. either you manipulate the system in
>the REPL, or yo configure it to react to editing changes.
>- Restartable system. What warrants a system restart is
>user-configurable. File-based granularity.
>- Changes that do not require a restart are available in the running
>system instantly (via namespace reloading).
>- Full *Lisp-style* interactive programming via the REPL and
>hot-reloading in the browser.
>
> The video shows us a real-life, unmoderated development session. Some
> critics hailed it as an uncompromising, gut-wrenching piece of cinéma
> vérité. Viewer Discretion Is Advised. Thank you.
>
>  --
> 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: [ANN] Demo of the Holy Grail workflow

2015-05-21 Thread Daniel Szmulewicz
Haha. That does sound long-ish, doesn't it? Even for an unfamiliar 
civilization. Here you go: the eternal peril of cinéma vérité.
 

On Thursday, May 21, 2015 at 5:53:55 PM UTC+3, blake wrote:
>
> Interesting.
>
> I'm somewhat concerned that the "genius.com" annotation says the kingdom 
> of Assyria was around for 25,000 years, though.
>
> On Wed, May 20, 2015 at 6:03 PM, Daniel Szmulewicz  > wrote:
>
>> Hi everybody, 
>>
>> A video showcasing the Holy Grail workflow has been posted on youtube.
>>
>> https://www.youtube.com/watch?v=eoxsSrFK_Is
>>
>> The workflow is built on top of Boot , a build 
>> tool, and system 
>> , a 
>> component library. It tries to turn the experience of developing for the 
>> web into a liberating and seamless experience.
>>
>> Here are some of the properties of said workflow: 
>>
>>- Manual and automatic mode, ie. either you manipulate the system in 
>>the REPL, or yo configure it to react to editing changes.
>>- Restartable system. What warrants a system restart is 
>>user-configurable. File-based granularity.
>>- Changes that do not require a restart are available in the running 
>>system instantly (via namespace reloading).
>>- Full *Lisp-style* interactive programming via the REPL and 
>>hot-reloading in the browser.
>>
>> The video shows us a real-life, unmoderated development session. Some 
>> critics hailed it as an uncompromising, gut-wrenching piece of cinéma 
>> vérité. Viewer Discretion Is Advised. Thank you.
>>
>>  -- 
>> 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: Accessing static fields

2015-05-21 Thread Pierre Thibault
For me it is difficult because I tend to translate OO in functional and 
functional in OO. But I am starting to think differently. I guess I am at 
point where my knowledge can hurt me for learning something new.

I am glad that the community is so responsive. This is great! :-)

Le jeudi 21 mai 2015 03:28:54 UTC-4, martin madera a écrit :
>
> I don't want to start a flamewar here, but Python is quite a different 
> beast than Java or Clojure. TBH Python is more complex language than 
> Clojure but many things were made easy in Python and Python looks like that 
> someone really thought about newbie experience. A newbie experience in 
> Clojure is not so pleasant.
>
> But Clojure is no harder, it's different - you need to start thinking a 
> bit differently than in Python.
>
> Martin
>
> On Thursday, 21 May 2015 05:49:31 UTC+2, Pierre Thibault wrote:
>>
>> I love to program in Python and when you want do something in Python it 
>> is usually easy. This makes your imagination powerful. Sad to see it is not 
>> the same in Java.
>>
>> Le mercredi 20 mai 2015 23:17:56 UTC-4, Andy Fingerhut a écrit :
>>>
>>> Java interop _with method names known at compile time_ is pretty simple, 
>>> and is the most common case I have seen.
>>>
>>> Why do you think it is supposed to be simple to select Java methods 
>>> based upon the values of variables at run time?
>>>
>>> Andy
>>>
>>

-- 
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] Clojure 1.7.0-RC1 now available

2015-05-21 Thread Alex Miller
Clojure 1.7.0-RC1 is now available.

Try it via
- Download: https://repo1.maven.org/maven2/org/clojure/clojure/1.7.0-RC1/
- Leiningen: [org.clojure/clojure "1.7.0-RC1"]

The only change since 1.7.0-beta3 is CLJ-1706, which makes reader
conditional splicing an error at the top level (previously it would
silently drop all but the first spliced element).

For a full list of changes since 1.6.0, see:
https://github.com/clojure/clojure/blob/master/changes.md

Please give it a try and let us know if things are working (or not). The
more and quicker feedback we get, the sooner we can release 1.7.0 final!

- Alex

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [ANN] Demo of the Holy Grail workflow

2015-05-21 Thread blake
Anyway, good demo, and I like how you got Werner Herzog to narrate.

On Thu, May 21, 2015 at 8:03 AM, Daniel Szmulewicz <
daniel.szmulew...@gmail.com> wrote:

> Haha. That does sound long-ish, doesn't it? Even for an unfamiliar
> civilization. Here you go: the eternal peril of cinéma vérité.
>
>
> On Thursday, May 21, 2015 at 5:53:55 PM UTC+3, blake wrote:
>>
>> Interesting.
>>
>> I'm somewhat concerned that the "genius.com" annotation says the kingdom
>> of Assyria was around for 25,000 years, though.
>>
>> On Wed, May 20, 2015 at 6:03 PM, Daniel Szmulewicz > > wrote:
>>
>>> Hi everybody,
>>>
>>> A video showcasing the Holy Grail workflow has been posted on youtube.
>>>
>>> https://www.youtube.com/watch?v=eoxsSrFK_Is
>>>
>>> The workflow is built on top of Boot , a build
>>> tool, and system
>>> , a
>>> component library. It tries to turn the experience of developing for the
>>> web into a liberating and seamless experience.
>>>
>>> Here are some of the properties of said workflow:
>>>
>>>- Manual and automatic mode, ie. either you manipulate the system in
>>>the REPL, or yo configure it to react to editing changes.
>>>- Restartable system. What warrants a system restart is
>>>user-configurable. File-based granularity.
>>>- Changes that do not require a restart are available in the running
>>>system instantly (via namespace reloading).
>>>- Full *Lisp-style* interactive programming via the REPL and
>>>hot-reloading in the browser.
>>>
>>> The video shows us a real-life, unmoderated development session. Some
>>> critics hailed it as an uncompromising, gut-wrenching piece of cinéma
>>> vérité. Viewer Discretion Is Advised. Thank you.
>>>
>>>  --
>>> 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.
>

-- 
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] Demo of the Holy Grail workflow

2015-05-21 Thread Daniel Szmulewicz
Thanks! I'll try to make some more. 

Ha! Werner Herzog's cameo appearance. That may have been a one-off. I was 
recovering from a heavy flu. 
My regular voice is less nasal. The accented Euro English will remain, that 
I promise. 

On Thursday, May 21, 2015 at 7:40:43 PM UTC+3, blake wrote:
>
> Anyway, good demo, and I like how you got Werner Herzog to narrate.
>
> On Thu, May 21, 2015 at 8:03 AM, Daniel Szmulewicz  > wrote:
>
>> Haha. That does sound long-ish, doesn't it? Even for an unfamiliar 
>> civilization. Here you go: the eternal peril of cinéma vérité.
>>  
>>
>> On Thursday, May 21, 2015 at 5:53:55 PM UTC+3, blake wrote:
>>>
>>> Interesting.
>>>
>>> I'm somewhat concerned that the "genius.com" annotation says the 
>>> kingdom of Assyria was around for 25,000 years, though.
>>>
>>> On Wed, May 20, 2015 at 6:03 PM, Daniel Szmulewicz <
>>> daniel.s...@gmail.com> wrote:
>>>
 Hi everybody, 

 A video showcasing the Holy Grail workflow has been posted on youtube.

 https://www.youtube.com/watch?v=eoxsSrFK_Is

 The workflow is built on top of Boot , a build 
 tool, and system 
 , a 
 component library. It tries to turn the experience of developing for the 
 web into a liberating and seamless experience.

 Here are some of the properties of said workflow: 

- Manual and automatic mode, ie. either you manipulate the system 
in the REPL, or yo configure it to react to editing changes.
- Restartable system. What warrants a system restart is 
user-configurable. File-based granularity.
- Changes that do not require a restart are available in the 
running system instantly (via namespace reloading).
- Full *Lisp-style* interactive programming via the REPL and 
hot-reloading in the browser.

 The video shows us a real-life, unmoderated development session. Some 
 critics hailed it as an uncompromising, gut-wrenching piece of cinéma 
 vérité. Viewer Discretion Is Advised. Thank you.

  -- 
 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 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, GSoC] A Common Clojure Source Metadata Model

2015-05-21 Thread Russell Mull
There are some potential applications for literate programming here. For 
example, when doing an 'untangle' from your literate program source (to 
extract the code), the typical way to allow changes to be merged back in is 
to add comments with line number information. A more structured place to 
put that data would be nicer. (although it would have to be a 
clojure-focused LP tool for this to work) I'm not really in love with this 
idea, as it doesn't feel very lisp-y. 

Reversing the relationship, it could be nice to offer some standard 
LP-related metadata about top-level forms to indicate how they should be 
presented. For example:
 - should the docstring be extracted and presented as top-level text?
 - should this form be called out as important, or perhaps hidden entirely?
 - some example invocations and their results, in a structured way. Then we 
could (a) present the examples and results in the appropriate place, 
depending on the context, or (b) automatically recompute those results (or 
test against them) with a bit of tooling. 

Of these, only the example usages case feels like it would be useful 
outside LP, and thus be a candidate for common metadata. 

- Russell

-- 
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.7.0-RC1 now available

2015-05-21 Thread Sergey Didenko
As I mentioned in another thread, how would you type hint an empty vector?

(set! *warn-on-reflection* true)
(java.util.ArrayList.  []);Reflection warning
(java.util.ArrayList. ^java.util.Collection [])   ;Reflection warning

At the same time:

(java.util.ArrayList.  ["a"])  ;OK

P.S. May be it's offtopic, because I see the same behavior in Clojure 1.5.1

-- 
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.7.0-RC1 now available

2015-05-21 Thread Andy Fingerhut
I believe this issue has been reported in this ticket:
http://dev.clojure.org/jira/browse/CLJ-1093

Currently it is not planned to be fixed in Clojure 1.7.0.  Maybe a later
release will fix it.

Andy

On Thu, May 21, 2015 at 11:24 AM, Sergey Didenko 
wrote:

> As I mentioned in another thread, how would you type hint an empty vector?
>
> (set! *warn-on-reflection* true)
> (java.util.ArrayList.  []);Reflection warning
> (java.util.ArrayList. ^java.util.Collection [])   ;Reflection warning
>
> At the same time:
>
> (java.util.ArrayList.  ["a"])  ;OK
>
> P.S. May be it's offtopic, because I see the same behavior in Clojure 1.5.1
>
> --
> 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: [ANN] Clojure 1.7.0-RC1 now available

2015-05-21 Thread Andy Fingerhut
That may not be the right ticket.  Nicola Mometto may have the number
memorized, if there is one :-)

Here is a workaround that avoids the reflection warning:

(let [^java.util.Collection x []]
  (java.util.ArrayList. x))

Andy

On Thu, May 21, 2015 at 11:37 AM, Andy Fingerhut 
wrote:

> I believe this issue has been reported in this ticket:
> http://dev.clojure.org/jira/browse/CLJ-1093
>
> Currently it is not planned to be fixed in Clojure 1.7.0.  Maybe a later
> release will fix it.
>
> Andy
>
> On Thu, May 21, 2015 at 11:24 AM, Sergey Didenko  > wrote:
>
>> As I mentioned in another thread, how would you type hint an empty vector?
>>
>> (set! *warn-on-reflection* true)
>> (java.util.ArrayList.  []);Reflection warning
>> (java.util.ArrayList. ^java.util.Collection [])   ;Reflection warning
>>
>> At the same time:
>>
>> (java.util.ArrayList.  ["a"])  ;OK
>>
>> P.S. May be it's offtopic, because I see the same behavior in Clojure
>> 1.5.1
>>
>> --
>> 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: [ANN, GSoC] A Common Clojure Source Metadata Model

2015-05-21 Thread Alex Miller
It is a non-goal to define any new "standard" metadata for vars as part of 
the project. But it does seem reasonable that retaining var metadata and 
making it available would be useful to enable tooling for examples or 
anything else.

On Thursday, May 21, 2015 at 1:15:17 PM UTC-5, Russell Mull wrote:
>
> There are some potential applications for literate programming here. For 
> example, when doing an 'untangle' from your literate program source (to 
> extract the code), the typical way to allow changes to be merged back in is 
> to add comments with line number information. A more structured place to 
> put that data would be nicer. (although it would have to be a 
> clojure-focused LP tool for this to work) I'm not really in love with this 
> idea, as it doesn't feel very lisp-y. 
>
> Reversing the relationship, it could be nice to offer some standard 
> LP-related metadata about top-level forms to indicate how they should be 
> presented. For example:
>  - should the docstring be extracted and presented as top-level text?
>  - should this form be called out as important, or perhaps hidden entirely?
>  - some example invocations and their results, in a structured way. Then 
> we could (a) present the examples and results in the appropriate place, 
> depending on the context, or (b) automatically recompute those results (or 
> test against them) with a bit of tooling. 
>
> Of these, only the example usages case feels like it would be useful 
> outside LP, and thus be a candidate for common metadata. 
>
> - Russell
>

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


Relational mapping - turning an sql query result into array of hashes (with joins)

2015-05-21 Thread Krzysiek Herod
I've found the question appearing here, but a long time ago, so I thought 
that maybe the situation changed:

Is there a relational mapper in clojure (or in java) that takes query 
result and generates an array of hashmaps?
I mean something that converts the result of this query:
"SELECT * FROM posts LEFT JOIN comments ON (comments.post_id = posts.id) 
LEFT JOIN users ON (posts.user_id = users.id)"
into (for example) the following structure:
[{:title "Post title" :user {:first_name "User 1"} :comments [{:title 
"Comment 1"} {:title "Comment 2"}]}]

I've used kormadb for that, but it works like this only with has-many 
relation (belongs-to puts all of the fields from related tables into the 
same hash as if it was one table, and using "with" do not solve the problem 
neither).

Is there any other clojure library that does that, or is any java library 
used instead?  

-- 
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, GSoC] A Common Clojure Source Metadata Model

2015-05-21 Thread Laurent PETIT
Sorry for jumping late inside the pool, but the topic has retained my
attention from day one.

As a developer of an IDE plugin (CounterClockWise for Eclipse), I'm very
interested in this effort.
Here are my ideas/questions/remarks:

- Finding a winning scenario for adoption is key. A perfect tool with no
users will be of no use
- Specifically, for broad adoption, one scenario I can see is that such
APIs are automatically delivered by library authors without changing any of
their habit. E.G. the result would be automatically downloaded to either
clojars or maven central as just an additional jar with a specific
classifier.
- To be even more specific, I think that this means that from start you
should plan to provide leiningen plugin, at the very least. And probably
maven (clojure-maven-plugin) and boot plugins as well. Go reach the users
where they are.
- Of course, from the point of view of an IDE, which already has the
tooling to get jars from maven repositories, it would not be difficult then
to get information from libraries, that could be used to help Users anytime
about the libraries they've chosen. No need to get a REPL open and get all
the project namespaces loaded. No need to reinvent another way to
statically parse all the project dependencies to get static analysis (at
least for the project dependencies).
- This would also enable providers of not open-source projects to deliver
the API - and not the source code -, and for this kind of scenario only
your solution will be of help.

If I remember well, when talking about this with Tom Faulhaber, the author
of Autodoc, several years ago (yeah, hammock time can sometimes be very
long ;-) ), he told me that everything was already there, in Autodoc, after
it had produced the HTML pages. But maybe not published in the final "HTML"
product. But definitely there, maybe even not just in memory, but as an
intermediary set of files to be transformed, on the filesystem.

Last point for today: I don't know how easy it could be done, but if the
tool could give most possible accurate guidance about which arguments of a
macro should be considered as symbols that will name locals inside the
macro body, that would be very cool ! Currently Cursive probably has a list
of macros for clojure core, and for most used clojure projects, with a way
to declare which argument will be a symbol usable as a local, etc.
Sooner or later, I'll have to do that for CCW also.
Unless a standard comes out from your project first, which would be great
:-)

HTH,

Laurent








2015-05-20 2:34 GMT+02:00 Richard Möhn :

> Just trying to bump this up a bit. "Coding" will start soon, so I'd be
> happy about some more input. Especially if you have further thoughts or
> wishes along the lines of
> https://groups.google.com/d/topic/clojure/E1oxVE4UMxQ/discussion.
>
> --
> 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.
>



-- 
Laurent Petit

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


a simple question about Arrays.asList

2015-05-21 Thread webber
I am trying to use java.util.Arrays/asList in Clojure.

(java.util.Arrays/asList 1 2 3)

CompilerException java.lang.IllegalArgumentException: No matching method: 
asList, compiling:(NO_SOURCE_PATH:1:1) 

(java.util.Arrays/asList 1)

ClassCastException java.lang.Long cannot be cast to [Ljava.lang.Object; 
 user/eval7195 (NO_SOURCE_FILE:1)

What should I do to work it ?

-- 
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: a simple question about Arrays.asList

2015-05-21 Thread Aaron Cohen
Since Arrays.asList is a variadic method, the Java compiler is magically
creating an array behind the scenes for you when you write Java code
invoking it.

Clojure does variadic functions differently for native clojure code.

To do interop with a Java variadic method have to create the array yourself:
(java.util.Arrays/asList (make-array Object 1 2 3))

Why are you trying to use Arrays#asList btw? There are probably better ways
to do what you're trying to do.

--Aaron

On Thu, May 21, 2015 at 5:08 PM, webber  wrote:

> I am trying to use java.util.Arrays/asList in Clojure.
>
> (java.util.Arrays/asList 1 2 3)
>
> CompilerException java.lang.IllegalArgumentException: No matching method:
> asList, compiling:(NO_SOURCE_PATH:1:1)
>
> (java.util.Arrays/asList 1)
>
> ClassCastException java.lang.Long cannot be cast to [Ljava.lang.Object;
>  user/eval7195 (NO_SOURCE_FILE:1)
>
> What should I do to work it ?
>
> --
> 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: a simple question about Arrays.asList

2015-05-21 Thread Mauricio Aldazosa
There are many things that need to be understood in a call like this.

First of all, that method receives an array as its argument:
https://docs.oracle.com/javase/7/docs/api/java/util/Arrays.html#asList(T...)

>From your first example I think you are trying to translate to clojure the
following java call:

java.util.Arrays.asList(1, 2, 3);

In java this is a varargs call, which means java will change the call to
one using an array as the parameter
(http://docs.oracle.com/javase/8/docs/technotes/guides/language/varargs.html).

So, in order to make that call we need to wrap those arguments in an array.
The easiest way to do this would be to wrap the arguments in a vector an
turn that into an array:

user> (java.util.Arrays/asList (into-array [1 2 3]))
[1 2 3]

If you don't already have a sequence (the vector in the previous example)
then you can use a function to do the work:

user> (defn as-list [& args] (java.util.Arrays/asList (into-array args)))
 #'user/as-list
user> (as-list 1 2 3)
[1 2 3]
user> (type (as-list 1 2 3))
java.util.Arrays$ArrayList


Cheers,
Mauricio

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


cljs.test usage

2015-05-21 Thread David Nolen
People have been asking about cljs.test usage for a while now. I've finally
written up some notes https://github.com/clojure/clojurescript/wiki/Testing.

Feel free to edit for clarity / typos etc.

David

-- 
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: Why isn't definterface in the cheatsheet?

2015-05-21 Thread Andy Fingerhut
definterface, sequence, and clojure.repl/dir added in v25 of the
Cheatsheet, available here:

http://jafingerhut.github.io

which is also where you get when you click the 'Download other versions
with tooltips' link at clojure.org/cheatsheet

Andy

On Wed, May 20, 2015 at 8:41 PM, Mars0i  wrote:

> Ah, OK, thanks.  I probably depend too mcuh on the cheatsheets.  But I'll
> go ahead and file an issue for definterface; I think it should be there as
> an alternative to gen-interface.
>
>
> On Wednesday, May 20, 2015 at 10:24:16 PM UTC-5, Andy Fingerhut wrote:
>
>> The cheat sheet doesn't include everything.  Most things in Clojure, yes,
>> but not all.  Looking at the log of the last time I generated the latest
>> version of the cheat sheet, it does not include the 172 Vars listed below.
>>
>> You can file an issue if there are any you think especially ought to be
>> added: https://github.com/jafingerhut/clojure-cheatsheets/issues
>>
>> Andy
>>
>>
>> *allow-unresolved-vars*
>> *assert*
>> *compiler-options*
>> *flush-on-newline*
>> *fn-loader*
>> *math-context*
>> *read-eval*
>> *source-path*
>> *use-context-classloader*
>> *verbose-defrecords*
>> ->ArrayChunk
>> ->Vec
>> ->VecNode
>> ->VecSeq
>> -cache-protocol-fn
>> -reset-methods
>> EMPTY-NODE
>> accessor
>> add-classpath
>> agent-errors
>> await1
>> chunk
>> chunk-append
>> chunk-buffer
>> chunk-cons
>> chunk-first
>> chunk-next
>> chunk-rest
>> chunked-seq?
>> clear-agent-errors
>> clojure.core.reducers/->Cat
>> clojure.core.reducers/CollFold
>> clojure.core.reducers/append!
>> clojure.core.reducers/cat
>> clojure.core.reducers/coll-fold
>> clojure.core.reducers/drop
>> clojure.core.reducers/filter
>> clojure.core.reducers/fjtask
>> clojure.core.reducers/flatten
>> clojure.core.reducers/fold
>> clojure.core.reducers/foldcat
>> clojure.core.reducers/folder
>> clojure.core.reducers/map
>> clojure.core.reducers/mapcat
>> clojure.core.reducers/monoid
>> clojure.core.reducers/pool
>> clojure.core.reducers/reduce
>> clojure.core.reducers/reducer
>> clojure.core.reducers/remove
>> clojure.core.reducers/take
>> clojure.core.reducers/take-while
>> clojure.data/Diff
>> clojure.data/EqualityPartition
>> clojure.data/diff-similar
>> clojure.data/equality-partition
>> clojure.java.browse/*open-url-script*
>> clojure.java.io/Coercions
>> clojure.java.io/IOFactory
>> clojure.java.io/default-streams-impl
>> clojure.java.io/make-input-stream
>> clojure.java.io/make-output-stream
>> clojure.java.io/make-parents
>> clojure.java.io/make-reader
>> clojure.java.io/make-writer
>> clojure.java.javadoc/*core-java-api*
>> clojure.java.javadoc/*feeling-lucky*
>> clojure.java.javadoc/*feeling-lucky-url*
>> clojure.java.javadoc/*local-javadocs*
>> clojure.java.javadoc/*remote-javadocs*
>> clojure.java.javadoc/add-local-javadoc
>> clojure.java.javadoc/add-remote-javadoc
>> clojure.java.shell/*sh-dir*
>> clojure.java.shell/*sh-env*
>> clojure.pprint/*print-base*
>> clojure.pprint/*print-miser-width*
>> clojure.pprint/*print-pprint-dispatch*
>> clojure.pprint/*print-pretty*
>> clojure.pprint/*print-radix*
>> clojure.pprint/*print-right-margin*
>> clojure.pprint/*print-suppress-namespaces*
>> clojure.pprint/code-dispatch
>> clojure.pprint/formatter
>> clojure.pprint/formatter-out
>> clojure.pprint/fresh-line
>> clojure.pprint/get-pretty-writer
>> clojure.pprint/pp
>> clojure.pprint/pprint-indent
>> clojure.pprint/pprint-logical-block
>> clojure.pprint/pprint-newline
>> clojure.pprint/pprint-tab
>> clojure.pprint/print-length-loop
>> clojure.pprint/set-pprint-dispatch
>> clojure.pprint/simple-dispatch
>> clojure.pprint/with-pprint-dispatch
>> clojure.pprint/write
>> clojure.pprint/write-out
>> clojure.repl/demunge
>> clojure.repl/dir
>> clojure.repl/dir-fn
>> clojure.repl/root-cause
>> clojure.repl/set-break-handler!
>> clojure.repl/source-fn
>> clojure.repl/stack-element-str
>> clojure.repl/thread-stopper
>> clojure.walk/keywordize-keys
>> clojure.walk/stringify-keys
>> clojure.xml/*current*
>> clojure.xml/*sb*
>> clojure.xml/*stack*
>> clojure.xml/*state*
>> clojure.xml/attrs
>> clojure.xml/content
>> clojure.xml/content-handler
>> clojure.xml/element
>> clojure.xml/emit
>> clojure.xml/emit-element
>> clojure.xml/startparse-sax
>> clojure.xml/tag
>> create-struct
>> definterface
>> defstruct
>> delay?
>> denominator
>> destructure
>> find-protocol-impl
>> find-protocol-method
>> hash-combine
>> hash-ordered-coll
>> hash-unordered-coll
>> method-sig
>> mix-collection-hash
>> munge
>> namespace-munge
>> numerator
>> primitives-classnames
>> print-ctor
>> print-dup
>> print-method
>> print-simple
>> proxy-call-with-super
>> proxy-name
>> read
>> read-string
>> reduced
>> reduced?
>> refer-clojure
>> replicate
>> sequence
>> special-symbol?
>> struct
>> struct-map
>> unchecked-add-int
>> unchecked-byte
>> unchecked-char
>> unchecked-dec-int
>> unchecked-divide-int
>> unchecked-double
>> unchecked-float
>> unchecked-inc-int
>> unchecked-int
>> unchecked-long
>> unchecked-multiply-int
>> unc

Re: [BUG?] loading Clojure source files from various data sources (classloading)

2015-05-21 Thread Steven Yi
Hi Alex,

I'm not sure this will help, but I was working on a test project with 
embedding Clojure in Java and ended up adding my custom class loader to a 
map, bound to *ns*, and pushing/popping it to thread bindings:

https://gist.github.com/kunstmusik/8e7817f71dff5ceb5229

In some commented out test code in another file, it looks like things 
worked fine to evaluate Clojure code as strings to use Pomegranate to add 
dependencies and then evaluate code using those dependencies.  

Note the Engine code is using the Clojure read function and 
LineNumberingPushbackReader.  I probably should have just used load-string, 
so don't mind that part of the code.  

Cheers!
steven

On Thursday, May 21, 2015 at 8:38:40 AM UTC-4, Alex Fowler wrote:
>
> We are using [org.clojure/clojure "1.7.0-beta3"] for desktop and 
> [org.clojure-android/clojure 
> "1.7.0-beta6"] for Android.
>
> By your question I assume you're refering to the fact that some of the 
> links I have made in the original post are for clojure-android, I am 
> sorry, apparently I mixed up the browser tabs when copy-pasting the links. 
> Tiredness gets in the way.. But that does not change anything - the problem 
> is valid both for Android and PC. There is no big difference for Android - 
> the DalvikDynamicClassLoader is a descendant of DynamicClassLoader and 
> suffers from the same issue. So, there is also a little difference for 
> RT.makeClassLoader() for Android concerning that it creates the 
> DalvikDynamicClassLoader 
> instead of DynamicClassLoader but the issue is the same, it is simply 
> mirrored to Android. We have been looking and investigating all this 
> yesterday with Sattvik and we together have come to this conclusion. 
>
> четверг, 21 мая 2015 г., 16:05:03 UTC+4 пользователь Alex Miller написал:
>>
>> What version of Clojure are you using?
>
>

-- 
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] Demo of the Holy Grail workflow

2015-05-21 Thread Daniel
"this video is not available"

I am attempting to view on a mobile.

-- 
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: [ClojureScript] [ANN] Clojure 1.7.0-RC1 now available

2015-05-21 Thread Andy Fingerhut
Alex, doing a quick sweep of new public Vars in 1.7.0-RC1 that were not in
Clojure 1.6.0 (complete list of all 21 below), I noticed that the following
two do not have any doc strings.  Intentional, or oversight?

*suppress-read*
Throwable->map

Andy


*suppress-read*
->Eduction
Throwable->map
cat
completing
dedupe
eduction
ensure-reduced
random-sample
reader-conditional
reader-conditional?
run!
tagged-literal
tagged-literal?
transduce
unreduced
update
volatile!
volatile?
vreset!
vswap!

On Thu, May 21, 2015 at 9:30 AM, Alex Miller  wrote:

> Clojure 1.7.0-RC1 is now available.
>
> Try it via
> - Download: https://repo1.maven.org/maven2/org/clojure/clojure/1.7.0-RC1/
> - Leiningen: [org.clojure/clojure "1.7.0-RC1"]
>
> The only change since 1.7.0-beta3 is CLJ-1706, which makes reader
> conditional splicing an error at the top level (previously it would
> silently drop all but the first spliced element).
>
> For a full list of changes since 1.6.0, see:
> https://github.com/clojure/clojure/blob/master/changes.md
>
> Please give it a try and let us know if things are working (or not). The
> more and quicker feedback we get, the sooner we can release 1.7.0 final!
>
> - Alex
>
> --
> Note that posts from new members are moderated - please be patient with
> your first post.
> ---
> You received this message because you are subscribed to the Google Groups
> "ClojureScript" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to clojurescript+unsubscr...@googlegroups.com.
> To post to this group, send email to clojurescr...@googlegroups.com.
> Visit this group at http://groups.google.com/group/clojurescript.
>

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [ANN] Demo of the Holy Grail workflow

2015-05-21 Thread Daniel Szmulewicz
I really don' know what to say. Works fine here. Including from my mobile. 
Anyone else has a problem accessing the video?

On Friday, May 22, 2015 at 2:54:06 AM UTC+3, Daniel wrote:
>
> "this video is not available" 
>
> I am attempting to view on a mobile.

-- 
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] Demo of the Holy Grail workflow

2015-05-21 Thread Daniel Compton
Same issues here. I'm guessing there may be some copyrighted material which
isn't approved for viewing in some regions?
On Fri, 22 May 2015 at 12:30 pm Daniel Szmulewicz <
daniel.szmulew...@gmail.com> wrote:

> I really don' know what to say. Works fine here. Including from my mobile.
> Anyone else has a problem accessing the video?
>
>
> On Friday, May 22, 2015 at 2:54:06 AM UTC+3, Daniel wrote:
>>
>> "this video is not available"
>>
>> I am attempting to view on a mobile.
>
>  --
> 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: [ANN] Demo of the Holy Grail workflow

2015-05-21 Thread Daniel Szmulewicz
Oh Good Lord. That could very well be, but shouldn't it say so?
When I uploaded the video, it said indeed that there was copyrighted 
material, and therefore it would be monetized by the copyright holders, and 
that there would be ads. But nothing was mentioned regarding availability / 
unavailability on a region basis. 
I just clicked on a button: Acknowledge third party material. Does it play 
now?  

On Friday, May 22, 2015 at 3:32:37 AM UTC+3, Daniel Compton wrote:
>
> Same issues here. I'm guessing there may be some copyrighted material 
> which isn't approved for viewing in some regions?
> On Fri, 22 May 2015 at 12:30 pm Daniel Szmulewicz  > wrote:
>
>> I really don' know what to say. Works fine here. Including from my 
>> mobile. Anyone else has a problem accessing the video?
>>
>>
>> On Friday, May 22, 2015 at 2:54:06 AM UTC+3, Daniel wrote:
>>>
>>> "this video is not available" 
>>>
>>> I am attempting to view on a mobile.
>>
>>  -- 
>> 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, GSoC] A Common Clojure Source Metadata Model

2015-05-21 Thread Richard Möhn
Thanks for the great feedback!

Am Freitag, 22. Mai 2015 05:48:38 UTC+9 schrieb Laurent PETIT:
>
> Sorry for jumping late inside the pool, but the topic has retained my 
> attention from day one.
>
> As a developer of an IDE plugin (CounterClockWise for Eclipse), I'm very 
> interested in this effort.
> Here are my ideas/questions/remarks:
>
> - Finding a winning scenario for adoption is key. A perfect tool with no 
> users will be of no use
> - Specifically, for broad adoption, one scenario I can see is that such 
> APIs are automatically delivered by library authors without changing any of 
> their habit. E.G. the result would be automatically downloaded to either 
> clojars or maven central as just an additional jar with a specific 
> classifier.
> - To be even more specific, I think that this means that from start you 
> should plan to provide leiningen plugin, at the very least. And probably 
> maven (clojure-maven-plugin) and boot plugins as well. Go reach the users 
> where they are.
>

I didn't think of giving the plugins high priority, but I guess you're 
right! Thanks for pointing out their importance again.
 

> - Of course, from the point of view of an IDE, which already has the 
> tooling to get jars from maven repositories, it would not be difficult then 
> to get information from libraries, that could be used to help Users anytime 
> about the libraries they've chosen. No need to get a REPL open and get all 
> the project namespaces loaded. No need to reinvent another way to 
> statically parse all the project dependencies to get static analysis (at 
> least for the project dependencies).
> - This would also enable providers of not open-source projects to deliver 
> the API - and not the source code -, and for this kind of scenario only 
> your solution will be of help.
>
> If I remember well, when talking about this with Tom Faulhaber, the author 
> of Autodoc, several years ago (yeah, hammock time can sometimes be very 
> long ;-) ), he told me that everything was already there, in Autodoc, after 
> it had produced the HTML pages. But maybe not published in the final "HTML" 
> product. But definitely there, maybe even not just in memory, but as an 
> intermediary set of files to be transformed, on the filesystem.
>

Do you mean the fourth item of "what Autodoc will generate" in 
https://tomfaulhaber.github.io/autodoc/? It could be a starting point, but 
I think we will have to go further.

Last point for today: I don't know how easy it could be done, but if the 
> tool could give most possible accurate guidance about which arguments of a 
> macro should be considered as symbols that will name locals inside the 
> macro body, that would be very cool ! Currently Cursive probably has a list 
> of macros for clojure core, and for most used clojure projects, with a way 
> to declare which argument will be a symbol usable as a local, etc.
> Sooner or later, I'll have to do that for CCW also.
> Unless a standard comes out from your project first, which would be great 
> :-)
>

I'm not entirely sure how you mean this, but I'll take some more time for 
digesting your feedback anyway. On one of the latest Cognicasts, Colin 
Fleming talked about a repo where library authors can upload extensions 
that help the IDE understand their macros. I have to listen to it again, 
but it sounded a bit like what you're talking about. Right now I can't find 
that repo, though. Maybe he was just talking about plans.

Richard

-- 
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: [ClojureScript] [ANN] Clojure 1.7.0-RC1 now available

2015-05-21 Thread Alex Miller
Thanks Andy. Throwable->map should have a docstring.

-- 
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, GSoC] A Common Clojure Source Metadata Model

2015-05-21 Thread Colin Fleming
>
> On one of the latest Cognicasts, Colin Fleming talked about a repo where
> library authors can upload extensions that help the IDE understand their
> macros. I have to listen to it again, but it sounded a bit like what you're
> talking about. Right now I can't find that repo, though. Maybe he was just
> talking about plans.
>

Right, sadly this is still at the plans stage, although Cursive already
uses this API internally. I'll let everyone know when this is public.

Cheers,
Colin

On 22 May 2015 at 12:42, Richard Möhn  wrote:

> Thanks for the great feedback!
>
> Am Freitag, 22. Mai 2015 05:48:38 UTC+9 schrieb Laurent PETIT:
>>
>> Sorry for jumping late inside the pool, but the topic has retained my
>> attention from day one.
>>
>> As a developer of an IDE plugin (CounterClockWise for Eclipse), I'm very
>> interested in this effort.
>> Here are my ideas/questions/remarks:
>>
>> - Finding a winning scenario for adoption is key. A perfect tool with no
>> users will be of no use
>> - Specifically, for broad adoption, one scenario I can see is that such
>> APIs are automatically delivered by library authors without changing any of
>> their habit. E.G. the result would be automatically downloaded to either
>> clojars or maven central as just an additional jar with a specific
>> classifier.
>> - To be even more specific, I think that this means that from start you
>> should plan to provide leiningen plugin, at the very least. And probably
>> maven (clojure-maven-plugin) and boot plugins as well. Go reach the users
>> where they are.
>>
>
> I didn't think of giving the plugins high priority, but I guess you're
> right! Thanks for pointing out their importance again.
>
>
>> - Of course, from the point of view of an IDE, which already has the
>> tooling to get jars from maven repositories, it would not be difficult then
>> to get information from libraries, that could be used to help Users anytime
>> about the libraries they've chosen. No need to get a REPL open and get all
>> the project namespaces loaded. No need to reinvent another way to
>> statically parse all the project dependencies to get static analysis (at
>> least for the project dependencies).
>> - This would also enable providers of not open-source projects to deliver
>> the API - and not the source code -, and for this kind of scenario only
>> your solution will be of help.
>>
>> If I remember well, when talking about this with Tom Faulhaber, the
>> author of Autodoc, several years ago (yeah, hammock time can sometimes be
>> very long ;-) ), he told me that everything was already there, in
>> Autodoc, after it had produced the HTML pages. But maybe not published in
>> the final "HTML" product. But definitely there, maybe even not just in
>> memory, but as an intermediary set of files to be transformed, on the
>> filesystem.
>>
>
> Do you mean the fourth item of "what Autodoc will generate" in
> https://tomfaulhaber.github.io/autodoc/? It could be a starting point,
> but I think we will have to go further.
>
> Last point for today: I don't know how easy it could be done, but if the
>> tool could give most possible accurate guidance about which arguments of a
>> macro should be considered as symbols that will name locals inside the
>> macro body, that would be very cool ! Currently Cursive probably has a list
>> of macros for clojure core, and for most used clojure projects, with a way
>> to declare which argument will be a symbol usable as a local, etc.
>> Sooner or later, I'll have to do that for CCW also.
>> Unless a standard comes out from your project first, which would be great
>> :-)
>>
>
> I'm not entirely sure how you mean this, but I'll take some more time for
> digesting your feedback anyway. On one of the latest Cognicasts, Colin
> Fleming talked about a repo where library authors can upload extensions
> that help the IDE understand their macros. I have to listen to it again,
> but it sounded a bit like what you're talking about. Right now I can't find
> that repo, though. Maybe he was just talking about plans.
>
> Richard
>
> --
> 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

[CFP] *DEADLINE EXTENDED* Scheme and Functional Programming Workshop 2015

2015-05-21 Thread Andy Keep

*DEADLINE EXTENDED: Submissions is now May 31st, 2015*

*Call For Papers:*

Scheme and Functional Programming Workshop 2015
Vancouver, British Columbia, Canada
(Co-located with ICFP 2015)

http://andykeep.com/SchemeWorkshop2015/

Submissions related to Scheme, Racket, Clojure, and functional programming 
are welcome and encouraged. Topics of interest include but are not limited 
to:

   - Program-development environments, debugging, testing
   - Implementation (interpreters, compilers, tools, benchmarks, etc.)
   - Syntax, macros, hygiene
   - Distributed computing, concurrency, parallelism
   - Interoperability with other languages, FFIs
   - Continuations, modules, object systems, types
   - Theory, formal semantics, correctness
   - History, evolution and standardization of Scheme
   - Applications, experience and industrial uses of Scheme
   - Education
   - Scheme pearls (elegant, instructive uses of Scheme)

We also welcome submissions related to dynamic or multiparadigmatic 
languages and programming techniques.

*Important Dates:*

May 31st, 2015 - Paper deadline (was May 22nd, 2015)
July 5th, 2015 - Author notification (was June 26th, 2015)
July 26th, 2015 - Camera-ready deadline (was July 19th, 2015)
September 4th, 2015 - Workshop

Submissions must be in ACM proceedings format, no smaller than 9-point type 
(10-point type preferred). Microsoft Word and LaTeX templates for this 
format are available at:
http://www.acm.org/sigs/sigplan/authorInformation.htm

Submissions should be in PDF and printable on US Letter.

To encourage authors to submit their best work, this year we are 
encouraging shorter papers (around 6 pages, excluding references). This is 
to allow authors to submit longer, revised versions of their papers to 
archival conferences or journals. Longer papers (10--12 pages) are also 
acceptable, if the extra space is needed. There is no maximum length limit 
on submissions, but good submissions will likely be in the range of 6 to 12 
pages.

More information available at: http://andykeep.com/SchemeWorkshop2015/

*Organizers:*
Andy Keep, Cisco Systems Inc. (General Chair)
Ryan Culpepper, Northeastern University (Program Chair)

(Apologies for duplications from cross-posting.)

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


are there any real examples on Github of how to use reducers?

2015-05-21 Thread piastkrakow

Can anyone point me to a project on Github that is using Clojure 1.5 
reducerers? 



-- 
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] Demo of the Holy Grail workflow

2015-05-21 Thread Shaun Mahood
Can't play it in Canada from my mobile.

-- 
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: are there any real examples on Github of how to use reducers?

2015-05-21 Thread Max Countryman
Kyle Kingsbury’s linearizability checker “Knossos” uses reducers. (See the 
core, history, and util namespaces.)

https://github.com/aphyr/knossos


> On May 21, 2015, at 19:55, piastkra...@gmail.com wrote:
> 
> 
> Can anyone point me to a project on Github that is using Clojure 1.5 
> reducerers? 
> 
> 
> 
> 
> -- 
> 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.