Re: best practice with forked libraries

2015-11-18 Thread Max Gonzih
I think lein deps :tree should be enough to spot issues like that.
Also :exclusions should be used to remove original library from other 
dependencies.

On Wednesday, November 18, 2015 at 3:45:48 PM UTC+1, Herwig Hochleitner 
wrote:
>
> 2015-11-17 19:54 GMT+01:00 Ray Miller :
>
>>
>> There's a convention in Clojars of deploying a non-canonical fork by 
>> renaming the project to org.clojars.USERNAME/PROJ_NAME and deploying that 
>> to Clojars.
>>
>>
> That convention is pretty awkward in practice, because leiningen and maven 
> won't recognize that it's another version of the same artifact and you'll 
> need to take extra care that the original isn't included transitively. 
> Otherwise you will get hard-to-track classpath collisions. Use 
> https://github.com/webnf/lein-collisions to uncover such collisions.
>

-- 
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: best practice with forked libraries

2015-11-18 Thread Max Gonzih
Should also work with locally installed jar.
On Nov 18, 2015 9:41 PM, "Michael Blume" <blume.m...@gmail.com> wrote:

> If you have an internal maven repo, you can publish artifacts to it with
> updated version string and with group/artifact unchanged.
>
> On Wed, Nov 18, 2015 at 7:19 AM Herwig Hochleitner <hhochleit...@gmail.com>
> wrote:
>
>> 2015-11-18 15:48 GMT+01:00 Max Gonzih <gon...@gmail.com>:
>>
>>> I think lein deps :tree should be enough to spot issues like that.
>>>
>>
>> If you're into skimming pages of transitive dependencies (or know how to
>> use grep ;), sure. But lein-collisions also helps you find unexpected
>> collisions (i.e. not related to renamed packages).
>> Speaking of that, has `lein deps :tree` been broken for anybody else
>> lately?
>>
>>
>>> Also :exclusions should be used to remove original library from other
>>> dependencies.
>>>
>>
>> Sure, but that's no fun at all. Overall seems pretty awkward to me, still.
>>
>> --
>> 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 a topic in the
> Google Groups "Clojure" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/clojure/3W0LVsTMJDk/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> clojure+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/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: #{:rant} Questions about contribution policy and clojure compiler source.

2015-07-19 Thread Max Gonzih


On Saturday, July 18, 2015 at 5:44:29 PM UTC+2, Luc wrote:

 Sure, indentation is what gets the code running on metal :))

 Not ranting here, just my abs dying from the pain as I laugh :))


Comments like that are often linked as an expample of Functional 
Programmers attitude.
Let's not do that.

I beleive that talking things out is the only way to improve in cases like 
that.
But it can be only achieved through civil and equal discussion without any 
attempts to undermine authority of each other.

Let's try to do that, I beleive people in the clojure community can do that 
easily.

Thanks!

-- 
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: #{:rant} Questions about contribution policy and clojure compiler source.

2015-07-19 Thread Max Gonzih
 Many people feel this way, but ultimately Clojure is Rich's project and I 
guess Cognitect's to some extent. If they don't want to run it like other 
more open  contribution-friendly OSS projects this is obviously their 
right. 
 
Similar concern and attitude caused apearence of io.js. Do we want similar 
situation in this community?

-- 
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: ClojureScript 0.0-3308, fixes enhancements

2015-06-05 Thread Max Gonzih
On Monday, June 1, 2015 at 8:47:51 PM UTC+2, David Nolen wrote:
 ClojureScript, the Clojure compiler that emits JavaScript source code.
 
 
 README and source code: https://github.com/clojure/clojurescript
 
 
 Leiningen dependency information:
 
 
     [org.clojure/clojurescript 0.0-3308]
 
 
 This release bumps the Clojure dependecy to 1.7.0-RC1 and includes fixes and 
 minor
 enhancements.
 
 
 As always feedback welcome!
 
 
 ## 0.0-3308
 
 
 ## Changes
 * Clojure 1.7.0-RC1 dependency
 * CLJS-1292: Add IPrintWithWriter implementation for TaggedLiteral
 * add cljs.core/random-uuid
 * flush immediately when forwarding Node process out  err
 * CLJS-1256 cache UUID hash value
 * CLJS-1226: Added the :end-run-test event to cljs.test and a dummy event 
 handler for it
 
 
 ## Fixes
 * CLJS-1200: compare behaves differently from Clojure
 * CLJS-1293: Warning settings not conveyed via REPL
 * CLJS-1291: pprint whitespace/letter checks are incomplete
 * CLJS-1288: compiler doesn't emit goog.require for foreign library when 
 optimization level is not set
 * check that we actually read something in cjls.repl.server/read-request
 * clarify cljs.test/run-tests docstring
 * CLJS-1285: load-file regression
 * CLJS-1284: IndexedSeq -seq implementation incorrect for i = alength of 
 internal array
 * finish CLJS-1176, remove stray .isAlive method call
 * add zero arity `newline` to match Clojure
 * CLJS-1206: Images in HTML don't show up when served from localhost:9000
 * CLJS-1272: :include-macros description inaccurate in require
 * CLJS-1275: Corrected :test-paths in project.clj
 * CLJS-1270: Docstring for delay not printed by cljs.repl/doc
 * CLJS-1268: cljc support for cljs.closure/compile-file
 * CLJS-1269: realized? docstring refers to promise and future
 * match Clojure behavior for get on string / array. Need to coerce key into 
 int.
 * CLJS-1263: :libs regression, can no longer specify specific files
 * CLJS-1209: Reduce produces additional final nil when used w/ eduction
 * CLJS-1261: source fn fails for fns with conditional code

Just upgraded to this release. Everything seems to work like expected!

Thanks!

-- 
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.java.shell2 drop in replacement for clojure.java.shell

2015-05-19 Thread Max Gonzih
Ok, thank you for your reply. I will give it a try then soon on one of 
my pet projects! Thanks!


On 05/18/2015 09:25 PM, Marc Limotte wrote:

Hi Max.

I'm not actively doing any work on it.  Mainly because there are no 
requests for changes.  It's pretty straight-forward.  I haven't tested 
it with later versions of Clojure, but I'm not aware of any breaking 
changes, so I would expect it to work.


There are some alternatives, e.g. https://github.com/Raynes/conch

marc


On Mon, May 18, 2015 at 2:55 PM, Max Gonzih gon...@gmail.com 
mailto:gon...@gmail.com wrote:


Hello,

I just found about this nice improvement over default java.shell
provided by clojure stdlib.
What is current status of this project? Is it still useful or
maybe there are alternatives?
Does it support latest clojure versions (1.6 or even maybe 1.7-beta)?

Thanks!

On Tuesday, June 25, 2013 at 5:57:58 PM UTC+2, mlimotte wrote:

I'm announcing java.shell2
https://github.com/mlimotte/java.shell2. It is backward
compatible with clojure.java.shell.  This is a Clojure library
to facilitate launching of sub-processes and piping
(streaming) data.

Features
- A declarative syntax for defining new processes to specify
input, output, encoding, and other behavior
- Handling for common use-cases (i.e. pass stdout/err of the
process to the same destination as the parent, merge stderr of
the process to stdout, output directly to a File, etc)
- The pipe macro handles all the complexity of managing
multipe streams and threads for streaming data through
multiple processes and clojure functions.
- Backward compatible with existing code that uses
clojure.java.shell (i.e. a drop-in replacement)

Shell has additional predicates like :pass, which will connect
STDOUT or STDERR of the process to the STDOUT/ERR of the
parent JVM.

(sh wc -l :in input :err :pass :out (io/file /tmp/foo))

So the above form reads input (which can be a file, stream,
string, etc), forwards the output to a file and redirects
STDERR to STDERR of the JVM.

And here's an example of a pipe:

(pipe
  (sh cat :in input)
  my-filter-fn;A clojure function -- data is streamed
  (sh wc -l))


This library was developed at The Climate Corporation
http://climate.com/, so a big thank you to them for allowing
me to open source this code under an EPL license. Climate Corp
has one of the largest Clojure development teams.  We are an
established startup with offices in San Francisco and Seattle;
and are currently hiring full-time Clojure developers, data
scientists, product managers and more
http://climate.com/careers.

See the README for more details and many examples in the unit
tests.

I know there are other shell libraries for Clojure.  My main
motivation is that I wanted something closer to the
clojure.java.shell api.

Marc Limotte


-- 
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
mailto: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
mailto:clojure%2bunsubscr...@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
mailto: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 a topic in the 
Google Groups Clojure group.
To unsubscribe from this topic, visit 
https://groups.google.com/d/topic/clojure/hS4T84fctqk/unsubscribe.
To unsubscribe from this group and all its topics, send an email to 
clojure+unsubscr...@googlegroups.com 
mailto: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

Re: ANN: clojure.java.shell2 drop in replacement for clojure.java.shell

2015-05-18 Thread Max Gonzih
Hello,

I just found about this nice improvement over default java.shell provided 
by clojure stdlib.
What is current status of this project? Is it still useful or maybe there 
are alternatives?
Does it support latest clojure versions (1.6 or even maybe 1.7-beta)?

Thanks!

On Tuesday, June 25, 2013 at 5:57:58 PM UTC+2, mlimotte wrote:

 I'm announcing java.shell2 https://github.com/mlimotte/java.shell2.  It 
 is backward compatible with clojure.java.shell.  This is a Clojure library 
 to facilitate launching of sub-processes and piping (streaming) data.

 Features
 - A declarative syntax for defining new processes to specify input, 
 output, encoding, and other behavior
 - Handling for common use-cases (i.e. pass stdout/err of the process to 
 the same destination as the parent, merge stderr of the process to stdout, 
 output directly to a File, etc)
 - The pipe macro handles all the complexity of managing multipe streams 
 and threads for streaming data through multiple processes and clojure 
 functions.
 - Backward compatible with existing code that uses clojure.java.shell 
 (i.e. a drop-in replacement)

 Shell has additional predicates like :pass, which will connect STDOUT or 
 STDERR of the process to the STDOUT/ERR of the parent JVM.

 (sh wc -l :in input :err :pass :out (io/file /tmp/foo))

 So the above form reads input (which can be a file, stream, string, etc), 
 forwards the output to a file and redirects STDERR to STDERR of the JVM.

 And here's an example of a pipe:

 (pipe
   (sh cat :in input)
   my-filter-fn;A clojure function -- data is streamed
   (sh wc -l))


 This library was developed at The Climate Corporation 
 http://climate.com/, so a big thank you to them for allowing me to open 
 source this code under an EPL license.  Climate Corp has one of the largest 
 Clojure development teams.  We are an established startup with offices in 
 San Francisco and Seattle; and are currently hiring full-time Clojure 
 developers, data scientists, product managers and more 
 http://climate.com/careers.

 See the README for more details and many examples in the unit tests.  

 I know there are other shell libraries for Clojure.  My main motivation is 
 that I wanted something closer to the clojure.java.shell api.

 Marc Limotte




-- 
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: ClojureScript 0.0-3255 - pretty printer latest Closure Compiler / Library

2015-05-11 Thread Max Gonzih
On Sunday, May 10, 2015 at 11:24:54 PM UTC+2, Dmitri Sotnikov wrote:
 Is there possibly anything else missing in the package, figwheel doesn't 
 appear to find the repl ns.
 
 
 
 
 
 lein figwheel
 Retrieving org/clojure/clojurescript/0.0-3269/clojurescript-0.0-3269.pom from 
 central
 Retrieving org/clojure/clojurescript/0.0-3269/clojurescript-0.0-3269.jar from 
 central
 Exception in thread main java.io.FileNotFoundException: Could not locate 
 cljs/repl__init.class or cljs/repl.clj on classpath: , 
 compiling:(figwheel_sidecar/repl.clj:1:1)
 
 
 On Sunday, May 10, 2015 at 10:20:13 AM UTC-4, David Nolen wrote:
 Just cut 0.0-3269 which adds the missing analysis and source map bits back 
 into the artifacts. It also cleans up :libs support and fixes a related 
 regression with Closure compatible libraries that follow classpath 
 conventions (like transit-js). Both :libs Closure libraries and classpath 
 aware Closure compatible libraries now enjoy REPL support.
 
 
 David
 
 
 On Sun, May 10, 2015 at 9:41 AM, David Nolen dnolen...@gmail.com wrote:
 
 It appears there are still some important bits missing from the artifacts. 
 Working through the issues and will cut a release soon.
 
 
 David
 
 
 
 
 On Sun, May 10, 2015 at 12:22 AM, Rangel Spasov rasp...@gmail.com wrote:
 
 Hey guys,
 
 
 0.0-3264 fails for me with:
 
 
 
 
 
 
 
 
 
 
 
 clojure.lang.ExceptionInfo: failed compiling 
 file:resources/public/js/compiled/out/cljs/core.cljs
 
  at clojure.core$ex_info.invoke (core.clj:4591)
 
 Caused by: java.lang.IllegalArgumentException: No implementation of method: 
 :make-reader of protocol: #'clojure.java.io/IOFactory found for class: nil
 
  at clojure.core$_cache_protocol_fn.invoke (core_deftype.clj:554)
 
 0.0-3255 seems fine. 
 
 
 @raspasov
 On Saturday, May 9, 2015 at 12:33:52 PM UTC-7, David Nolen wrote:
 Just released 0.0-3264, it fixes a critical issue where .js files were 
 missing from the artifacts due to the changed build. Also included are a 
 several fixes around the :libs feature, REPLs, and stack trace mapping.
 
 
 David
 
 
 
 
 On Fri, May 8, 2015 at 3:23 PM, David Nolen dnolen...@gmail.com wrote:
 
 
 ClojureScript, the Clojure compiler that emits JavaScript source code.
 
 
 README and source code: https://github.com/clojure/clojurescript
 
 
 Leiningen dependency information:
 
 
     [org.clojure/clojurescript 0.0-3255]
 
 
 A big thanks goes out to Jonathan Boston and Shaun Lebron for this
 release. Thanks to their efforts ClojureScript now includes a full
 port of clojure.pprint under the cljs.pprint namespace. This was the
 last major namespace in need of porting to ClojureScript.
 
 
 The release also bumps several dependencies: Clojure 1.7.0-beta2,
 tools.reader 0.9.2, Closure Compiler v20150505, and Closure Library
 0.0-20150505-021ed5b3.
 
 
 This release also fixes some regressions around async testing,
 docstring REPL support, arglist meta, and more.
 
 
 As always feedback welcome!
 
 
 ## 0.0-3255
 
 
 ### Changes
 * Update Closure Library dependency
 * CLJS-1252: Update Closure Compiler Dependency to v20150505
 * .clj - .cljc for important analysis / compilation bits
 * add public cljs.compiler.api namespace
 * CLJS-1224: cljs.repl: Memoize stack frame mapping
 * depend on tools.reader 0.9.2
 
 
 ### Enhancements
 * add cljs.pprint/pp macro
 * CLJS-710: port clojure.pprint
 * CLJS-1178: Compiler does not know Math ns is not not-native
 * add getBasis methods to deftype and defrecord ctors a la Clojure JVM
 * support ^long and ^double type hints
 
 
 ### Fixes
 * fix cljs-1198 async testing regression
 * CLJS-1254: Update REPL browser agent detection CLJS-1253: Create/Use
   new Closure Library Release
 * CLJS-1225: Variadic function with same name as parent function gives
   runtime error in advanced compile mode.
 * CLJS-1246: Add cljs.core/record? predicate.
 * CLJS-1239: Make eduction variadic.
 * CLJS-1244: tagged-literal precondition check missing wrapping vector
 * CLJS-1243: Add TaggedLiteral type  related fns
 * CLJS-1240: Add cljs.core/var?
 * CLJS-1214: :arglists meta has needless quoting CLJS-1232: bad
   arglists for doc, regression
 * CLJS-1212: Error in set ctor for  8-entry map literal
 * CLJS-1218: Syntax quoting an alias created with :require-macros
   throws ClassCastException
 * CLJS-1213: cljs.analyzer incorrectly marks all defs as tests when
   eliding test metadata
 * CLJS-742: Compilation with :output-file option set fails
 
 
 
 
 
 
 
 
 
 -- 
 
 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 

Re: ANN: ClojureScript 0.0-3115

2015-03-17 Thread Max Gonzih
After update compilation with advanced optimizations displays following 
warning:

WARNING: 
file:/home/gnzh/.m2/repository/org/clojure/google-closure-library/0.0-20140718-946a7d39/google-closure-library-0.0-20140718-946a7d39.jar!/goog/net/jsonp.js:269:
 
WARNING - Misplaced f
unction annotation.
  return function(var_args) {
  ^

Mar 17, 2015 10:44:04 AM com.google.javascript.jscomp.LoggerErrorManager 
printSummary
WARNING: 0 error(s), 1 warning(s)


Just curios what is it related to?

On Monday, March 16, 2015 at 12:12:08 PM UTC+1, David Nolen wrote:

 ClojureScript, the Clojure compiler that emits JavaScript source code.

 README and source code: https://github.com/clojure/clojurescript

 New release version: 0.0-3115

 Leiningen dependency information:

 [org.clojure/clojurescript 0.0-3115]

 This release is a bugfix release addressing several long outstanding
 issues as well as a number of problems that cropped up around improved
 REPLs and compile times.

 As usual feedback welcome!

 ## 0.0-3115

 ### Enhancements
 * CLJS-806: support ^:const
 * CLJS-1115: Reusable repl-bootstrap! fn

 ### Changes
 * CLJS-667: validate extend-type and extend-protocol shape
 * CLJS-1112: :repl-requires option for REPL evaluation environment
 * CLJS-: browser REPL should have no side effects until -setup

 ### Fixes
 * CLJS-1085: Allow to pass test environment to cljs.test/run-all-tests
 * CLJS-867: extend-type with Object methods requires multi-arity style 
 definition
 * CLJS-1118: cljs.repl/doc support for protocols
 * CLJS-889: re-pattern works on strings containing \u2028 or \u2029
 * CLJS-109: Compiler errors/warnings should be displayed when cljs 
 namespace 'package' names start with an unacceptable javascript symbol
 * CLJS-891: Defs in parent namespaces clash with child namespaces with 
 the same name?
 * CLJS-813: Warn about reserved JS keyword usage in namespace names
 * CLJS-876: merged sourcemap doesn't account for output-wrapper
 * CLJS-1062: Incorrect deftype/defrecord definition leads to complex error 
 messages
 * CLJS-1120: analyze-deps does not appear to work when analyzing analysis 
 caches
 * CLJS-1119: constant table emission logic is incorrect
 * CLJS-977: implement IKVReduce in Subvec
 * CLJS-1117: Dependencies in JARs don't use cached analysis
 * CLJS-689: js/-Infinity munges to _Infinity
 * CLJS-1114: browser REPL script loading race condition
 * CLJS-1110: cljs.closure/watch needs to print errors to *err*
 * CLJS-1101 cljs.test might throw when trying to detect file-and-line
 * CLJS-1090: macros imported from clojure.core missing docs
 * CLJS-1108: :modules :output-to needs to create directories
 * CLJS-1095: UUID to implement IComparable
 * CLJS-1096: Update js/Date -equiv and -compare semantics based on 
 Date.valueOf() value
 * CLJS-1102 clojure.test should print column number of exception when 
 available



-- 
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: ClojureScript 0.0-3058, Enhanced REPLs, faster compile times

2015-03-10 Thread Max Gonzih
Amazing update! Yay.

But I just spotted one weird thing, after I pumped compiler version compilation 
fails for me with following error:

clojure.lang.ExceptionInfo: failed compiling 
file:public/javascripts/out-server-side/cljs/core.cljs {:file #File 
public/javascripts/out-server-side/cljs/core.cljs}
at clojure.core$ex_info.invoke(core.clj:4403)
at cljs.compiler$compile_file$fn__2959.invoke(compiler.clj:1130)
at cljs.compiler$compile_file.invoke(compiler.clj:1101)
at cljs.closure$compile_file.invoke(closure.clj:347)
at cljs.closure$eval3294$fn__3295.invoke(closure.clj:398)
at cljs.closure$eval3230$fn__3231$G__3221__3238.invoke(closure.clj:305)
at cljs.closure$compile_from_jar.invoke(closure.clj:390)
at cljs.closure$eval3289$fn__3290.invoke(closure.clj:404)
at cljs.closure$eval3230$fn__3231$G__3221__3238.invoke(closure.clj:305)
at cljs.closure$get_compiled_cljs.invoke(closure.clj:467)
at cljs.closure$cljs_dependencies.invoke(closure.clj:511)
at cljs.closure$add_dependencies.doInvoke(closure.clj:533)
at clojure.lang.RestFn.applyTo(RestFn.java:139)
at clojure.core$apply.invoke(core.clj:626)
at cljs.closure$build.invoke(closure.clj:1408)
at cljs.closure$build.invoke(closure.clj:1351)
at cljsbuild.compiler$compile_cljs$fn__3665.invoke(compiler.clj:81)
at cljsbuild.compiler$compile_cljs.invoke(compiler.clj:80)
at cljsbuild.compiler$run_compiler.invoke(compiler.clj:180)
at 
user$eval3797$iter__3833__3837$fn__3838$fn__3856.invoke(form-init1562646833731967415.clj:1)
at 
user$eval3797$iter__3833__3837$fn__3838.invoke(form-init1562646833731967415.clj:1)
at clojure.lang.LazySeq.sval(LazySeq.java:40)
at clojure.lang.LazySeq.seq(LazySeq.java:49)
at clojure.lang.RT.seq(RT.java:484)
at clojure.core$seq.invoke(core.clj:133)
at clojure.core$dorun.invoke(core.clj:2855)
at clojure.core$doall.invoke(core.clj:2871)
at user$eval3797.invoke(form-init1562646833731967415.clj:1)
at clojure.lang.Compiler.eval(Compiler.java:6703)
at clojure.lang.Compiler.eval(Compiler.java:6693)
at clojure.lang.Compiler.load(Compiler.java:7130)
at clojure.lang.Compiler.loadFile(Compiler.java:7086)
at clojure.main$load_script.invoke(main.clj:274)
at clojure.main$init_opt.invoke(main.clj:279)
at clojure.main$initialize.invoke(main.clj:307)
at clojure.main$null_opt.invoke(main.clj:342)
at clojure.main$main.doInvoke(main.clj:420)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at clojure.lang.Var.invoke(Var.java:383)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.Var.applyTo(Var.java:700)
at clojure.main.main(main.java:37)
Caused by: java.lang.ClassCastException: java.net.URL cannot be cast to 
java.io.File
at cljs.util$mkdirs.invoke(util.clj:80)
at cljs.analyzer$write_analysis_cache.invoke(analyzer.clj:2021)
at cljs.compiler$compile_file_STAR_$fn__2927.invoke(compiler.clj:1055)
at cljs.compiler$with_core_cljs.invoke(compiler.clj:961)
at cljs.compiler$compile_file_STAR_.invoke(compiler.clj:981)
at cljs.compiler$compile_file$fn__2959.invoke(compiler.clj:1118)
... 40 more
Subprocess failed

Is this related to AOT compiler cljs.core ns?

On Tuesday, March 10, 2015 at 12:41:45 AM UTC+1, David Nolen wrote:
 ClojureScript, the Clojure compiler that emits JavaScript source code.
 
 
 README and source code: https://github.com/clojure/clojurescript
 
 
 New release version: 0.0-3058
 
 
 Leiningen dependency information:
 
 
     [org.clojure/clojurescript 0.0-3058]
 
 
 This is a significant enhancement release around REPLs and compile times.
 
 
 All builtin REPLs (Nashorn, Node.js, Rhino and the browser REPL) now
 support the helper functions normally available via clojure.repl,
 these include: doc, find-doc, apropos, dir, source, and pst.  All of the
 builtins REPL now also support source mapped stacktraces.
 
 
 This release also includes many enhancements around compile times.
 
 
 ClojureScript now ships with a default :optimizations setting of
 :none. Implicit now when using :none is source map generation and analysis
 caching. Analysis caching significantly speeds up compile times.
 
 
 The standard library (cljs.core) is now AOTed compiled to JavaScript
 along with an AOTed analysis dump and an AOTed source map. This
 dramatically cuts down on cold start compile times. The standard
 library is never actually ever analyzed or compiled in your own
 builds. The result is particularly dramatic for REPLs.
 
 
 ClojureScript is also now available for the first time as a standalone
 AOTed JAR. The Quick Start introduction has been rewritten in terms of
 the standalone JAR:
 https://github.com/clojure/clojurescript/wiki/Quick-Start
 
 
 The new Quick Start 

Re: [ClojureScript] Re: ANN: ClojureScript 0.0-3058, Enhanced REPLs, faster compile times

2015-03-10 Thread Max Gonzih
Thanks David, it solved my problem!

-- 
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: ClojureScript 0.0-2913, Google Closure Modules, improved nREPL support

2015-02-24 Thread Max Gonzih
On Saturday, February 21, 2015 at 7:01:39 PM UTC+1, David Nolen wrote:
 ClojureScript, the Clojure compiler that emits JavaScript source code.
 
 
 README and source code: https://github.com/clojure/clojurescript
 
 
 New release version: 0.0-2913
 
 
 Leiningen dependency information:
 
 
     [org.clojure/clojurescript 0.0-2913]
 
 
 This release comes with two very big enhancements.
 
 
 The first is support for Google Closure Modules via the :modules build
 option. Google Closure Modules permits splitting advanced compiled
 builds into optimal smaller pieces for faster page
 loads. ClojureScript's Google Closure Module support is fully
 :foreign-libs aware. Source mapping for modules is also fully
 supported.
 
 
 The feature is described in more detail here:
 https://github.com/clojure/clojurescript/wiki/Compiler-Options#modules
 
 
 The second big change is a fundamental rearchitecting of ClojureScript
 REPLs. ClojureScript REPLs now support a set of options similar to
 those taken by `clojure.main/repl` with small changes to account for
 different JavaScript evaluation environments. Many third party REPLs
 like Figwheel, Weasel, and Ambly are either unaffected or have already
 accounted for these changes. However current tooling leveraging
 Piggieback will likely present an inferior experience as Piggieback was
 designed to work around the previous limitations of ClojureScript
 REPLs. Now that ClojureScript REPLs are more like the standard Clojure
 REPL it should be far simpler to add proper interruptible-eval and
 load-file nREPL middleware so that existing tooling around nREPL can
 more easily integrate ClojureScript REPLs as first class citizens.
 
 
 Feedback on both of these enhancements is very welcome!
 
 
 
 There are also many smaller fixes around REPL command line behavior,
 the Nashorn REPL, :foreign-libs resource finding issues, the full
 list follows:
 
 
 ## 0.0-2913
 * Support custom :output-to for :cljs-base module
 
 
 ## 0.0-2911
 
 
 ### Enhancements
 * CLJS-1042: Google Closure Modules :source-map support
 * CLJS-1041: Google Closure Modules :foreign-libs support
 * Google Closure Modules support via :modules
 * CLJS-1040: Source-mapped script stack frames for the Nashorn repl
 
 
 ### Changes
 * CLJS-960: On carriage return REPLs should always show new REPL prompt
 * CLJS-941: Warn when a symbol is defined multiple times in a file
 * REPLs now support parameterization a la clojure.main/repl
 * all REPLs analyze cljs.core before entering loop
 * can emit :closure-source-map option for preserving JS-JS map
 * REPLs can now merge new REPL/compiler options via -setup
 
 
 ### Fixes
 * CLJS-998: Nashorn REPL does not support require special fn
 * CLJS-1052: Cannot require ns from within the ns at the REPL for reloading 
 purposes
 * CLJS-975: preserve :reload  :reload-all in ns macro sugar
 * CLJS-1039: Under Emacs source directory watching triggers spurious 
 recompilation
 * CLJS-1046: static vars do not respect user compile time metadata
 * CLJS-989: ClojureScript REPL loops on EOF signal
 * fix DCE regression for trivial programs
 * CLJS-1036: use getResources not findResources in get-upstream-deps*

Nice! I played a bit with modules support. Good stuff! It is still not very 
clear for me where should I put my preamble stuff in that case. Will it be 
stored in cljs-base or in main output file? Can I have per module preamble? 
(probably per module preamble does not make any sense, right?)

-- 
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: The Essence of ClojureScript Redux

2015-01-04 Thread Max Gonzih
Very nice! But I have issue that I saw also while applying instructions from 
previous blog post. Repl starts fine, but I see errors when I'm trying to 
evaluate anything.

Error: No such module
at Error (native)
at Socket.anonymous ([stdin]:27:35)
at Socket.EventEmitter.emit (events.js:107:17)
at readableAddChunk (_stream_readable.js:159:16)
at Socket.Readable.push (_stream_readable.js:126:10)
at TCP.onread (net.js:514:20)


Node version is v0.11.13

-- 
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: ClojureScript 0.0-2644, enhanced REPLs

2015-01-03 Thread Max Gonzih
Any idea why Nashorn is slower? Is it related to type checks?

-- 
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] cuerdas 0.1.0: A string manipulation library for clojure and clojurescript.

2014-12-24 Thread Max Gonzih
On Tuesday, December 23, 2014 6:48:18 PM UTC+1, Andrey Antukh wrote:
 Hello everybody.
 
 
 I wanted to announce the first release of cuerdas. A string manipulation 
 library for clojure and clojurescript.
 
 
 It is mainly based on underscore.string and string.js, but also influenced by 
 lodash.
 
 
 Documentation: http://funcool.github.io/cuerdas/latest/
 Github: https://github.com/funcool/cuerdas
 
 
 Cheers.
 Andrey
 
 
 -- 
 
 
 
 Andrey Antukh - Андрей Антух - andrei@kaleidos.net / ni...@niwi.be
 http://www.niwi.be
 
 https://github.com/niwibe

Sweet! Very helpful lib. 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: [ANN] freactive - high performance, pure Clojurescript, declarative DOM library

2014-11-17 Thread Max Gonzih
Wow! Amazing! I see some ClojureCLR code in this repository, but from brief 
look it's not clear why is it there. Are you also experimenting on CLR support? 

Anyway, great that it finally happened!

On Monday, November 17, 2014 3:20:29 AM UTC+1, Aaron Craelius wrote:
 freactive (pronounced f reactive for functional reactive) is a new high 
 performance, pure Clojurescript, declarative DOM library: 
 https://github.com/aaronc/freactive
 
 It has a syntax very similar to that of Reagent and was in fact inspired by 
 Reagent, Om, and others.
 
 I came up with it when I was doing some DOM programming after having spending 
 a fair amount of time working with JavaFX (see my soon to be announced 
 library fx-clj: https://github.com/aaronc/fx-clj). I thought Om and Reagent 
 were very nice to work with (and actually inspired some what I did with 
 fx-clj), but I felt from my desktop GUI experience, that I could take things 
 a few steps further.
 
 freactive's main advantages over existing solutions are probably built-in 
 animations support and slightly higher performance.
 
 Here are it's goals from the README:
 Provide a simple, intuitive API that should be almost obvious to those 
 familiar with Clojure (inspiration from reagent)Allow for high-performance 
 rendering good enough for animated graphics based on a purely declarative 
 syntaxAllow for reactive binding of any attribute, style property or child 
 node
 Allow for coordinated management of state via cursors (inspiration from 
 om)Provide deeply-integrated animation supportAllow for cursors based on 
 paths as well as lenses
 Provide a generic items view component for efficient viewing of large data 
 sets
 Minimize unnecessary triggering of update eventsCoordinate all updates via 
 requestAnimationFrame wherever possibleBe easy to debug
 Be written in pure Clojurescript
 Provide support for older browsers via polyfills (not yet implemented)
 Any feedback is welcome!!
 I'm not sure I like the name freactive - but it was the best I could think 
 of at the time. Suggestions for alternative names are welcome.

-- 
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} defun: A beautiful macro to define clojure functions with pattern match.

2014-10-23 Thread Max Gonzih
Are there any updates on clojurescript support?

On Friday, September 26, 2014 1:00:04 PM UTC+2, dennis wrote:

 I will add supporting for clojurescript this weekend.Thanks for your 
 suggestion.

 2014-09-26 1:09 GMT+08:00 Ivan L ivan.l...@gmail.com javascript::

 Is this clojurescript ready?  This looks amazing, I would also love to 
 have it in core.

 On Sunday, September 14, 2014 2:47:28 AM UTC-4, dennis wrote:


 Hi , i am pleased to introduce defun 
 https://github.com/killme2008/defun: a beautiful macro to define 
 clojure functions with pattern match.

 Some examples:


 (defun say-hi

   ([:dennis] Hi,good morning, dennis.)

   ([:catty] Hi, catty, what time is it?)

   ([:green] Hi,green, what a good day!)

   ([other] (str Say hi to  other)))


 (say-hi :dennis)

 ;;  Hi,good morning, dennis.

 (say-hi :catty)

 ;;  Hi, catty, what time is it?

 (say-hi :green)

 ;;  Hi,green, what a good day!

 (say-hi someone)

 ;;  Say hi to someone


 Recursive function? It's all right:

 (defun count-down

   ([0] (println Reach zero!))

   ([n] (println n)

  (recur (dec n

 (defun fib

 ([0] 0)

 ([1] 1)

 ([n] (+ (fib (- n 1)) (fib (- n 2)



 Guard functions? it's all right:

 (defun valid-geopoint?

 ([(_ :guard #(and ( % -180) ( % 180)))

   (_ :guard #(and ( % -90) ( % 90)))] true)

 ([_ _] false))


 (valid-geopoint? 30 30)

 ;; true

 (valid-geopoint? -181 30)

 ;; false


 It's really cool,all the magic are from core.match, much more details 
 please see 
 https://github.com/killme2008/defun


 -- 
 庄晓丹 
 Email:killm...@gmail.com xzh...@avos.com
 Site:   http://fnil.net
 Twitter:  @killme2008


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




 -- 
 庄晓丹 
 Email:killm...@gmail.com javascript: xzh...@avos.com 
 javascript:
 Site:   http://fnil.net
 Twitter:  @killme2008


 

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


Issue with log4j inside lein plugin.

2014-10-08 Thread Max Gonzih
Hello guys,

I'm trying to create small lein plugin 
(https://github.com/Gonzih/lein-feeds2imap/blob/master/src/leiningen/feeds2imap.clj)
 
that should use library underneath that uses log4j via 
clojure.tools.logging. But I don't see logging output when I call plugin. I 
tried to configure it in many different ways (properties, 
System/setProperty, log4j properties) without much result. Is this 
something related to leiningein or am I doing something wrong?

Any advice is welcome, 
Thanks!

-- 
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} defun: A beautiful macro to define clojure functions with pattern match.

2014-09-21 Thread Max Gonzih
Amazing! Would love to have something like that in clojure.core.

On Sunday, September 14, 2014 8:47:28 AM UTC+2, dennis wrote:


 Hi , i am pleased to introduce defun https://github.com/killme2008/defun: 
 a beautiful macro to define clojure functions with pattern match.

 Some examples:


 (defun say-hi

   ([:dennis] Hi,good morning, dennis.)

   ([:catty] Hi, catty, what time is it?)

   ([:green] Hi,green, what a good day!)

   ([other] (str Say hi to  other)))


 (say-hi :dennis)

 ;;  Hi,good morning, dennis.

 (say-hi :catty)

 ;;  Hi, catty, what time is it?

 (say-hi :green)

 ;;  Hi,green, what a good day!

 (say-hi someone)

 ;;  Say hi to someone


 Recursive function? It's all right:

 (defun count-down

   ([0] (println Reach zero!))

   ([n] (println n)

  (recur (dec n

 (defun fib

 ([0] 0)

 ([1] 1)

 ([n] (+ (fib (- n 1)) (fib (- n 2)



 Guard functions? it's all right:

 (defun valid-geopoint?

 ([(_ :guard #(and ( % -180) ( % 180)))

   (_ :guard #(and ( % -90) ( % 90)))] true)

 ([_ _] false))


 (valid-geopoint? 30 30)

 ;; true

 (valid-geopoint? -181 30)

 ;; false


 It's really cool,all the magic are from core.match, much more details 
 please see 
 https://github.com/killme2008/defun


 -- 
 庄晓丹 
 Email:killm...@gmail.com javascript: xzh...@avos.com 
 javascript:
 Site:   http://fnil.net
 Twitter:  @killme2008


 

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


Re: Clojure on iOS devices - Swift as a host?

2014-06-11 Thread Max Gonzih
GC means pauses. Swift doesn't have proper GC, only ref counting because of 
that. GC pauses in UI are bad.
I like idea of Clojure on some new fancy high performance language like Go 
or Swift.

On Wednesday, June 4, 2014 4:08:17 PM UTC+2, tbc++ wrote:

 I'm starting to feel like a broken record, but here we go.

 Some things to think about:

 1) Why do you want this? The JVM GC and JIT are some of the fastest (if 
 not the fastest) on the planet, so performance will never be a good reason 
 to do this. 
 2) Do you want something like eval? As far as I can tell Swift is 
 statically compiled. Only XCode has the ability to modify a program on the 
 fly. 
 3) Clojure is highly polymorphic and dynamically typed. Walk the source 
 code for first  and next and you'll find something like 3-4 polymorphic 
 calls involved in something as simple as (doseq [x (range 100)]), per item.
 4) I have yet to see performance numbers for Swifthow fast/slow is it 
 compared to other languages?

 To put this all into perspective, I once translated LazySeq to C++ and ran 
 some code (with a GC) that performed something like (doall (range 10)). 
 The result was about 10x slower than Clojure on the JVM. So simply running 
 something in C++/LLVM doesn't mean that you'll even get close to the 
 performance of the JVM. 

 Memory constrained systems might benefit from a LLVM Clojure. In addition 
 there's room for improvement with the JVM's horrible warmup times. Python 
 will boot instantly on most systems while the Clojure REPL takes about a 
 minute to boot on the RPi. But aside form that, I can't see much of a 
 point. 

 If you want something like this there's always (
 https://github.com/galdolber/clojure-objc)

 Timothy




 On Wed, Jun 4, 2014 at 7:20 AM, Greg Knapp virtua...@gmail.com 
 javascript: wrote:

 The recent release of Swift made me revisit Clojure on LLVM. This post 
 from 2010 
 https://groups.google.com/d/msg/clojure/KrwtTsdYZ8I/Qf8PSMeoZCUJ 
 suggests it's a very difficult task.

 Swift would make this job easier? As with ClojureScript, generate Swift 
 code / provide interop and Clojurian's can produce native iOS apps?

 Perhaps the biggest hole to be filled would be tooling (Xcode is not 
 Clojure/Lisp friendly? i.e. no playground support)
  
 -- 
 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 
 javascript:
 Note that posts from new members are moderated - please be patient with 
 your first post.
 To unsubscribe from this group, send email to
 clojure+u...@googlegroups.com javascript:
 For more options, visit this group at
 http://groups.google.com/group/clojure?hl=en
 --- 
 You received this message because you are subscribed to the Google Groups 
 Clojure group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to clojure+u...@googlegroups.com javascript:.
 For more options, visit https://groups.google.com/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: A faster clojure startup

2014-03-05 Thread Max Gonzih
This is brilliant amount of work! Looking forward to play with new patch on 
my ARM devices.

On Friday, February 28, 2014 6:16:44 PM UTC+3, Gal Dolber wrote:

 Here're some notes on the lean compiler I've been working on for 
 clojure-objc

 http://galdolber.tumblr.com/post/78110050703/reduce-startup

 Feedback's welcome


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


Re: Contributors needed for Rouge (Clojure on Ruby)

2014-01-08 Thread Max Gonzih
Al this conversation still gives me hope that there is room for clojure on 
bare metal implementation. There is 
https://github.com/halgari/clojure-metal but I'm not sure about its state.

On Saturday, January 4, 2014 5:43:22 PM UTC+3, g vim wrote:

 I have recently moved most of my work to Clojure and Clojurescript but 
 neither of these implementations seem suitable for non-http scripting, 
 for which I currently use Ruby. So, you can imagine my elation when I 
 discovered Rouge which is Clojure implemented on Ruby: 

 https://github.com/rouge-lang/rouge 

 The project looks fantastic but they seem to be short of contributors. 
 My programming skills are nowhere near advanced enough to work on this 
 myself so, please, if any of you Clojurians have proficiency in Ruby and 
 Clojure please consider contributing. 

 I looked at Python's Hy (hylang.org) which is an excellent project in 
 its own right and is heavily influenced by Clojure but its taregt is 
 generic Lisp 1 rather than Clojure. Rouge will enable Clojure to occupy 
 the non-http scripting space without competing directly with Clojure and 
 Clojurescript. 

 gvim 


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


Re: Contributors needed for Rouge (Clojure on Ruby)

2014-01-08 Thread Max Gonzih
Probably you are right.

On Wed, Jan 08, 2014 at 11:26:55AM +0100, Laurent PETIT wrote:
 Is it possible that a lot of these projects are waiting for a stronger
 blessing of the clojure contrib efforts for analyzers, etc. that is,
 waiting for the JVM Clojure in Clojure.


 2014/1/8 Max Gonzih gon...@gmail.com

  Al this conversation still gives me hope that there is room for clojure on
  bare metal implementation. There is
  https://github.com/halgari/clojure-metal but I'm not sure about its state.
 
 
  On Saturday, January 4, 2014 5:43:22 PM UTC+3, g vim wrote:
 
  I have recently moved most of my work to Clojure and Clojurescript but
  neither of these implementations seem suitable for non-http scripting,
  for which I currently use Ruby. So, you can imagine my elation when I
  discovered Rouge which is Clojure implemented on Ruby:
 
  https://github.com/rouge-lang/rouge
 
  The project looks fantastic but they seem to be short of contributors.
  My programming skills are nowhere near advanced enough to work on this
  myself so, please, if any of you Clojurians have proficiency in Ruby and
  Clojure please consider contributing.
 
  I looked at Python's Hy (hylang.org) which is an excellent project in
  its own right and is heavily influenced by Clojure but its taregt is
  generic Lisp 1 rather than Clojure. Rouge will enable Clojure to occupy
  the non-http scripting space without competing directly with Clojure and
  Clojurescript.
 
  gvim
 
   --
  --
  You received this message because you are subscribed to the Google
  Groups Clojure group.
  To post to this group, send email to clojure@googlegroups.com
  Note that posts from new members are moderated - please be patient with
  your first post.
  To unsubscribe from this group, send email to
  clojure+unsubscr...@googlegroups.com
  For more options, visit this group at
  http://groups.google.com/group/clojure?hl=en
  ---
  You received this message because you are subscribed to the Google Groups
  Clojure group.
  To unsubscribe from this group and stop receiving emails from it, send an
  email to clojure+unsubscr...@googlegroups.com.
  For more options, visit https://groups.google.com/groups/opt_out.
 

 --
 --
 You received this message because you are subscribed to the Google
 Groups Clojure group.
 To post to this group, send email to clojure@googlegroups.com
 Note that posts from new members are moderated - please be patient with your 
 first post.
 To unsubscribe from this group, send email to
 clojure+unsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/clojure?hl=en
 ---
 You received this message because you are subscribed to a topic in the Google 
 Groups Clojure group.
 To unsubscribe from this topic, visit 
 https://groups.google.com/d/topic/clojure/26X7Bj5_KUQ/unsubscribe.
 To unsubscribe from this group and all its topics, send an email to 
 clojure+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/groups/opt_out.

--
Best regards,
Max

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


Re: Contributors needed for Rouge (Clojure on Ruby)

2014-01-08 Thread Max Gonzih
I do lot of hacking on embed devices like Pi and BeagleBone for fun, I
run clojure mostly on ejre and it is much faster and memory efficient than 
openjdk
compiled for ARM, but still suffers from startup time (in Pi case it actually 
much worse).
Also ejre in development right now, so sometimes it crashes.
Things like drip are helpful, but still clojure.jar takes some time to load.
Also cached jvm can give you unexpected errors in rare cases.
I tried node.js but wasn't very satisfied with results.
Basically node.js can be much slower in some
cases, memory usage isn't ideal but startup time is good. I'm not big
fan of node.js as a platform, so I still looking forward to something
closer to metal (like yours clojure-metal project).

On Wed, Jan 08, 2014 at 08:46:46AM -0700, Timothy Baldridge wrote:
 That's actually a major issue for those wanting to use Clojure to work on a
 RPi or similar low end system. These systems are also so memory
 constrained, that last I checked, the CLJS compiler wouldn't run too well
 on them either. Now that doesn't stop people from using Node.js to run CLJS
 code once it's compiled and copied to the device, but still, not exactly
 the ideal solution.

 Timothy


 On Wed, Jan 8, 2014 at 8:43 AM, Jim - FooBar(); jimpil1...@gmail.comwrote:

  On 08/01/14 14:38, John Gabriele wrote:
 
  For a tiny Clojure uberjar, startup time on my desktop is about a second.
  Tolerable.
 
 
  well, a tiny Clojure/Swing uberjar on the raspberry-pi (oracle-java7)
  takes 9-12 seconds to start!!! not so tolerable...
  in fact, in the absence of a splash screen, the user has the quite
  convincing illusion that nothing is happening!!!
 
  this of course doesn't mean anything, I just thought it is worth
  mentioning...
 
  Jim
 
 
 
  --
  --
  You received this message because you are subscribed to the Google
  Groups Clojure group.
  To post to this group, send email to clojure@googlegroups.com
  Note that posts from new members are moderated - please be patient with
  your first post.
  To unsubscribe from this group, send email to
  clojure+unsubscr...@googlegroups.com
  For more options, visit this group at
  http://groups.google.com/group/clojure?hl=en
  --- You received this message because you are subscribed to the Google
  Groups Clojure group.
  To unsubscribe from this group and stop receiving emails from it, send an
  email to clojure+unsubscr...@googlegroups.com.
  For more options, visit https://groups.google.com/groups/opt_out.
 



 --
 “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 a topic in the Google 
 Groups Clojure group.
 To unsubscribe from this topic, visit 
 https://groups.google.com/d/topic/clojure/26X7Bj5_KUQ/unsubscribe.
 To unsubscribe from this group and all its topics, send an email to 
 clojure+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/groups/opt_out.

--
Best regards,
Max

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


Re: Contributors needed for Rouge (Clojure on Ruby)

2014-01-08 Thread Max Gonzih
How is it different from 
http://www.oracle.com/technetwork/java/embedded/downloads/javase/index.html ?

On Wed, Jan 08, 2014 at 04:36:02PM +, Jim - FooBar(); wrote:
 I would recommend the newly available through official Pi channels,
 oracle-java7-jdk...It is a full distribution of JIT'ed Java
 (including Swing) with hardware-floating point arithmetic. I think
 the jdk8-ea (early access) is a tiny bit faster but not complete (no
 Swing). I think openJDK has not JIT.

 Jim


 On 08/01/14 16:30, Max Gonzih wrote:
 I do lot of hacking on embed devices like Pi and BeagleBone for fun, I
 run clojure mostly on ejre and it is much faster and memory efficient than 
 openjdk
 compiled for ARM, but still suffers from startup time (in Pi case it 
 actually much worse).
 Also ejre in development right now, so sometimes it crashes.
 Things like drip are helpful, but still clojure.jar takes some time to load.
 Also cached jvm can give you unexpected errors in rare cases.
 I tried node.js but wasn't very satisfied with results.
 Basically node.js can be much slower in some
 cases, memory usage isn't ideal but startup time is good. I'm not big
 fan of node.js as a platform, so I still looking forward to something
 closer to metal (like yours clojure-metal project).
 
 On Wed, Jan 08, 2014 at 08:46:46AM -0700, Timothy Baldridge wrote:
 That's actually a major issue for those wanting to use Clojure to work on a
 RPi or similar low end system. These systems are also so memory
 constrained, that last I checked, the CLJS compiler wouldn't run too well
 on them either. Now that doesn't stop people from using Node.js to run CLJS
 code once it's compiled and copied to the device, but still, not exactly
 the ideal solution.
 
 Timothy
 
 
 On Wed, Jan 8, 2014 at 8:43 AM, Jim - FooBar(); jimpil1...@gmail.comwrote:
 
 On 08/01/14 14:38, John Gabriele wrote:
 
 For a tiny Clojure uberjar, startup time on my desktop is about a second.
 Tolerable.
 
 well, a tiny Clojure/Swing uberjar on the raspberry-pi (oracle-java7)
 takes 9-12 seconds to start!!! not so tolerable...
 in fact, in the absence of a splash screen, the user has the quite
 convincing illusion that nothing is happening!!!
 
 this of course doesn't mean anything, I just thought it is worth
 mentioning...
 
 Jim
 
 
 
 --
 --
 You received this message because you are subscribed to the Google
 Groups Clojure group.
 To post to this group, send email to clojure@googlegroups.com
 Note that posts from new members are moderated - please be patient with
 your first post.
 To unsubscribe from this group, send email to
 clojure+unsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/clojure?hl=en
 --- You received this message because you are subscribed to the Google
 Groups Clojure group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to clojure+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/groups/opt_out.
 
 
 
 --
 “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 a topic in the 
 Google Groups Clojure group.
 To unsubscribe from this topic, visit 
 https://groups.google.com/d/topic/clojure/26X7Bj5_KUQ/unsubscribe.
 To unsubscribe from this group and all its topics, send an email to 
 clojure+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/groups/opt_out.
 --
 Best regards,
 Max
 

 --
 --
 You received this message because you are subscribed to the Google
 Groups Clojure group.
 To post to this group, send email to clojure@googlegroups.com
 Note that posts from new members are moderated - please be patient with your 
 first post.
 To unsubscribe from this group, send email to
 clojure+unsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/clojure?hl=en
 --- You received this message because you are subscribed to a topic
 in the Google Groups Clojure group.
 To unsubscribe from this topic, visit 
 https://groups.google.com/d/topic/clojure/26X7Bj5_KUQ/unsubscribe.
 To unsubscribe from this group and all its topics, send an email to 
 clojure+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/groups/opt_out.

--
Best regards,
Max

-- 
-- 
You received this message because you are subscribed to the Google
Groups Clojure group.
To post to this group, send email

Re: Contributors needed for Rouge (Clojure on Ruby)

2014-01-08 Thread Max Gonzih
Well it's actually cool that this is inside Raspbian channels.

On Wed, Jan 08, 2014 at 05:21:31PM +, Jim - FooBar(); wrote:
 I think that is the one in the repos, but update 40 instead of
 45...I had no idea it was called `ejre` as I used to use jdk-ea and
 switched to 7 a couple of months ago through the official rasbian
 channels .

 Jim


 On 08/01/14 16:58, Max Gonzih wrote:
 How is it different from 
 http://www.oracle.com/technetwork/java/embedded/downloads/javase/index.html ?
 
 On Wed, Jan 08, 2014 at 04:36:02PM +, Jim - FooBar(); wrote:
 I would recommend the newly available through official Pi channels,
 oracle-java7-jdk...It is a full distribution of JIT'ed Java
 (including Swing) with hardware-floating point arithmetic. I think
 the jdk8-ea (early access) is a tiny bit faster but not complete (no
 Swing). I think openJDK has not JIT.
 
 Jim
 
 
 On 08/01/14 16:30, Max Gonzih wrote:
 I do lot of hacking on embed devices like Pi and BeagleBone for fun, I
 run clojure mostly on ejre and it is much faster and memory efficient than 
 openjdk
 compiled for ARM, but still suffers from startup time (in Pi case it 
 actually much worse).
 Also ejre in development right now, so sometimes it crashes.
 Things like drip are helpful, but still clojure.jar takes some time to 
 load.
 Also cached jvm can give you unexpected errors in rare cases.
 I tried node.js but wasn't very satisfied with results.
 Basically node.js can be much slower in some
 cases, memory usage isn't ideal but startup time is good. I'm not big
 fan of node.js as a platform, so I still looking forward to something
 closer to metal (like yours clojure-metal project).
 
 On Wed, Jan 08, 2014 at 08:46:46AM -0700, Timothy Baldridge wrote:
 That's actually a major issue for those wanting to use Clojure to work on 
 a
 RPi or similar low end system. These systems are also so memory
 constrained, that last I checked, the CLJS compiler wouldn't run too well
 on them either. Now that doesn't stop people from using Node.js to run 
 CLJS
 code once it's compiled and copied to the device, but still, not exactly
 the ideal solution.
 
 Timothy
 
 
 On Wed, Jan 8, 2014 at 8:43 AM, Jim - FooBar(); 
 jimpil1...@gmail.comwrote:
 
 On 08/01/14 14:38, John Gabriele wrote:
 
 For a tiny Clojure uberjar, startup time on my desktop is about a 
 second.
 Tolerable.
 
 well, a tiny Clojure/Swing uberjar on the raspberry-pi (oracle-java7)
 takes 9-12 seconds to start!!! not so tolerable...
 in fact, in the absence of a splash screen, the user has the quite
 convincing illusion that nothing is happening!!!
 
 this of course doesn't mean anything, I just thought it is worth
 mentioning...
 
 Jim
 
 
 
 --
 --
 You received this message because you are subscribed to the Google
 Groups Clojure group.
 To post to this group, send email to clojure@googlegroups.com
 Note that posts from new members are moderated - please be patient with
 your first post.
 To unsubscribe from this group, send email to
 clojure+unsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/clojure?hl=en
 --- You received this message because you are subscribed to the Google
 Groups Clojure group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to clojure+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/groups/opt_out.
 
 
 --
 “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 a topic in the 
 Google Groups Clojure group.
 To unsubscribe from this topic, visit 
 https://groups.google.com/d/topic/clojure/26X7Bj5_KUQ/unsubscribe.
 To unsubscribe from this group and all its topics, send an email to 
 clojure+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/groups/opt_out.
 --
 Best regards,
 Max
 
 --
 --
 You received this message because you are subscribed to the Google
 Groups Clojure group.
 To post to this group, send email to clojure@googlegroups.com
 Note that posts from new members are moderated - please be patient with 
 your first post.
 To unsubscribe from this group, send email to
 clojure+unsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/clojure?hl=en
 --- You received this message because you are subscribed to a topic
 in the Google Groups Clojure group.
 To unsubscribe from this topic, visit

Re: Can we please deprecate the :use directive ?

2013-07-26 Thread Max Gonzih
Totally agree. :use is anti-pattern since :require :refer :all can do the 
same. If you have :use in ns macro and want to make :refer :all visible 
just put it at the end of ns macro, separated b empty line from other 
:require clauses. Having 2 ways of doing so simple thing as requiring code 
is misleading IMHO.

On Tuesday, July 23, 2013 6:50:50 PM UTC+3, Greg Slepak wrote:

 I think I read somewhere that :use is no longer encouraged, but I could be 
 mistaken. 

 From what I've read, it seems like most people agree that Clojure has too 
 many ways of including/importing/referencing/requiring/using things: 


 http://blog.8thlight.com/colin-jones/2010/12/05/clojure-libs-and-namespaces-require-use-import-and-ns.html
  

 The above gives a very nice explanation of all the various difference, but 
 it also acknowledges their complexity. 

 Since :use uses :require, and since :require can do everything that :use 
 can, can we simplify Clojure programming a bit for newcomers by deprecating 
 the use of :use? The situation in ClojureScript is even worse because it 
 adds :require-macros on top of all the other ways of including files. 

 Ideally, it would be awesome if there was just a single directive for 
 everything, but perhaps there's some complicated low-level reason why 
 that's not possible. :-\ 

 Thoughts? 

 Thanks, 
 Greg 

 P.S. If this has already been brought up you have my sincere apologies. 

 -- 
 Please do not email me anything that you are not comfortable also sharing 
 with the NSA. 



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




Re: try* macro to catch multiple exception classes with one body. feedback is needed.

2013-06-22 Thread Max Gonzih
I can't think about another name for my macro :). Any ideas?

Regards,
Max
On 20 Jun 2013 23:26, Herwig Hochleitner hhochleit...@gmail.com wrote:

 One thing to consider: try* is a compiler builtin form. Those are
 currently not even namespaced. That might lead to confusion for readers.


 2013/6/20 Max Gonzih gon...@gmail.com

 I updated my macro to your solution, looks really simple and works like
 before. I don't know why I overcomplicated my original solution so much :).

 Thanks again!


 On Thursday, June 20, 2013 8:47:37 AM UTC+3, Meikel Brandmeyer (kotarak)
 wrote:

 Hi,

 Am Mittwoch, 19. Juni 2013 17:00:17 UTC+2 schrieb Max Gonzih:

 Hi, I implemented small macro to catch multiple exception classes with
 one body.

 https://gist.github.com/**Gonzih/5814945https://gist.github.com/Gonzih/5814945

 What do you think? Are there better ways to achieve similar results?


 I would just extend try a simply as possible: simply add the catch-all,
 but keep catch and finally as is. Here my try:

 (defmacro try*
   [ body]
   (let [catch-all?   #(and (seq? %) (= (first %) 'catch-all))
 expand-catch (fn [[_catch-all exceptions  catch-tail]]
(map #(list* 'catch % catch-tail) exceptions))
 transform(fn [form]
(if (catch-all? form)
  (expand-catch form)
  [form]))]
 (cons `try (mapcat transform body

 (try*
   (println :a)
   (println :b)
(catch-all [A B C] e (println (type e)))
   (catch D _ (println Got D!))
   (finally (println Finally!)))

 expands to

 (try
   (println :a)
   (println :b)
   (catch A e (println (type e)))
   (catch B e (println (type e)))
   (catch C e (println (type e)))
   (catch D _ (println Got D!))
   (finally (println Finally!)))

 Kind regards
 Meikel

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




  --
 --
 You received this message because you are subscribed to the Google
 Groups Clojure group.
 To post to this group, send email to clojure@googlegroups.com
 Note that posts from new members are moderated - please be patient with
 your first post.
 To unsubscribe from this group, send email to
 clojure+unsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/clojure?hl=en
 ---
 You received this message because you are subscribed to a topic in the
 Google Groups Clojure group.
 To unsubscribe from this topic, visit
 https://groups.google.com/d/topic/clojure/0Suarc57WCQ/unsubscribe.
 To unsubscribe from this group and all its topics, send an email to
 clojure+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/groups/opt_out.




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




Re: try* macro to catch multiple exception classes with one body. feedback is needed.

2013-06-20 Thread Max Gonzih
Right, simpler solution, thanks.

Regards,
Max
On 20 Jun 2013 08:47, Meikel Brandmeyer (kotarak) m...@kotka.de wrote:

 Hi,

 Am Mittwoch, 19. Juni 2013 17:00:17 UTC+2 schrieb Max Gonzih:

 Hi, I implemented small macro to catch multiple exception classes with
 one body.

 https://gist.github.com/**Gonzih/5814945https://gist.github.com/Gonzih/5814945

 What do you think? Are there better ways to achieve similar results?


 I would just extend try a simply as possible: simply add the catch-all,
 but keep catch and finally as is. Here my try:

 (defmacro try*
   [ body]
   (let [catch-all?   #(and (seq? %) (= (first %) 'catch-all))
 expand-catch (fn [[_catch-all exceptions  catch-tail]]
(map #(list* 'catch % catch-tail) exceptions))
 transform(fn [form]
(if (catch-all? form)
  (expand-catch form)
  [form]))]
 (cons `try (mapcat transform body

 (try*
   (println :a)
   (println :b)
   (catch-all [A B C] e (println (type e)))
   (catch D _ (println Got D!))
   (finally (println Finally!)))

 expands to

 (try
   (println :a)
   (println :b)
   (catch A e (println (type e)))
   (catch B e (println (type e)))
   (catch C e (println (type e)))
   (catch D _ (println Got D!))
   (finally (println Finally!)))

 Kind regards
 Meikel

 --
 --
 You received this message because you are subscribed to the Google
 Groups Clojure group.
 To post to this group, send email to clojure@googlegroups.com
 Note that posts from new members are moderated - please be patient with
 your first post.
 To unsubscribe from this group, send email to
 clojure+unsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/clojure?hl=en
 ---
 You received this message because you are subscribed to a topic in the
 Google Groups Clojure group.
 To unsubscribe from this topic, visit
 https://groups.google.com/d/topic/clojure/0Suarc57WCQ/unsubscribe.
 To unsubscribe from this group and all its topics, send an email to
 clojure+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/groups/opt_out.




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




Re: try* macro to catch multiple exception classes with one body. feedback is needed.

2013-06-20 Thread Max Gonzih
I updated my macro to your solution, looks really simple and works like 
before. I don't know why I overcomplicated my original solution so much :).

Thanks again!

On Thursday, June 20, 2013 8:47:37 AM UTC+3, Meikel Brandmeyer (kotarak) 
wrote:

 Hi,

 Am Mittwoch, 19. Juni 2013 17:00:17 UTC+2 schrieb Max Gonzih:

 Hi, I implemented small macro to catch multiple exception classes with 
 one body.

 https://gist.github.com/Gonzih/5814945

 What do you think? Are there better ways to achieve similar results?


 I would just extend try a simply as possible: simply add the catch-all, 
 but keep catch and finally as is. Here my try:

 (defmacro try*
   [ body]
   (let [catch-all?   #(and (seq? %) (= (first %) 'catch-all))
 expand-catch (fn [[_catch-all exceptions  catch-tail]]
(map #(list* 'catch % catch-tail) exceptions))
 transform(fn [form]
(if (catch-all? form)
  (expand-catch form)
  [form]))]
 (cons `try (mapcat transform body

 (try*
   (println :a)
   (println :b)
   (catch-all [A B C] e (println (type e)))
   (catch D _ (println Got D!))
   (finally (println Finally!)))

 expands to

 (try
   (println :a)
   (println :b)
   (catch A e (println (type e)))
   (catch B e (println (type e)))
   (catch C e (println (type e)))
   (catch D _ (println Got D!))
   (finally (println Finally!)))

 Kind regards
 Meikel


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




try* macro to catch multiple exception classes with one body. feedback is needed.

2013-06-19 Thread Max Gonzih
Hi, I implemented small macro to catch multiple exception classes with one 
body.

https://gist.github.com/Gonzih/5814945

What do you think? Are there better ways to achieve similar results?

Thanks! 

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




Re: In what OS do you code?

2013-06-15 Thread Max Gonzih
Linux. OpenSource, package management, tools, tailing window managers, if 
you know linux you can apply your knowledge everywhere (development, 
production, embed), OpenSource system is solid system, you can change 
everything in open OS if you need to and not afraid of being proper hacker.

On Friday, June 14, 2013 4:46:37 PM UTC+3, Erlis Vidal wrote:

 Hi, 

 I'm a bit curious to know in what OS do you code. Do you prefer iOS, 
 Linux, Windows? Why is that? Because the tools? The environment? 

 Thanks!


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




Re: [ANN] Instaparse 1.0.0

2013-05-02 Thread Max Gonzih
Hi, what do you think about dsl version using map?
Nice Idea was proposed here 
http://www.reddit.com/r/Clojure/comments/1djbio/growing_a_lanugage_with_clojure_and_instaparse/c9qwv4d

On Tuesday, April 9, 2013 12:41:38 PM UTC+3, puzzler wrote:

 On Tue, Apr 9, 2013 at 1:33 AM, Tassilo Horn ts...@gnu.org 
 javascript:wrote:

 Nice, but providing the grammar as a plain string looks somewhat
 unnatural to me.  Why not something like this (parser being a macro)?

 (def as-and-bs
   (parser
 S  = AB* .
 AB = A B .
 A  = a + .
 B  = b + .))

 I.e., symbols denote non-terminals, strings denote terminals, and the
 dot indicates the end of a rule.

 Bye,
 Tassilo


 I played around with that, but even if you suppress evaluation by using a 
 macro, Clojure's reader makes strong assumptions about certain symbols.  
 For example, it is standard in EBNF notation for {} to mean zero-or-more.  
 But if you include {A B C} in your grammar using the macro approach, 
 Clojure's reader will throw an error because it treats {} as a map and 
 expects an even number of forms to follow.  That was the main reason, but 
 it also makes the notation much more sensitive to whitespace (for example, 
 AB * versus AB*).  Gradually, those little issues start making it look less 
 and less like traditional notation.  There's something really nice about 
 just being able to copy and paste a grammar off of a website and have it 
 just work.

 I understand where you're coming from, though.  It definitely is part of 
 the Clojure culture to avoid string representations for many kinds of data 
 (e.g., SQL queries).  We do accept it for regular expressions, and for 
 things like #inst 2011-12-31T19:00:00.000-05:00, though, and that's the 
 kind of feel I was going for.  Would it be more psychologically palatable 
 to type:
 #insta/parser S = 'a' 'b'
 rather than
 (insta/parser S = 'a' 'b')
 ?

 What do you think would be gained by making it a macro?  From my 
 perspective, a macro is essentially just a string that is being processed 
 by the Clojure reader (and thus subject to its constraints).  If the 
 grammar were expressed in the way you propose, is it any easier to build up 
 a grammar programmatically?  Is it any easier to compose grammars?  If 
 anything, I think it might be harder.

 Thanks for the comments,

 Mark


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




Re: ANN: vim-redl -- advanced fuzzy omnicompletion and VimClojure-style repl with enhanced debugging features

2013-04-04 Thread Max Gonzih
Awesome! Thank you!

Can you add example profiles.clj to readme? Because I can understand how to 
configure Clojure component.

On Wednesday, April 3, 2013 11:08:30 PM UTC+3, David Greenberg wrote:

 Although I've announced vim-redl in the past, now you can reap the 
 benefits of all of its features without leaving fireplace behind! Just go 
 to https://github.com/dgrnbrg/vim-redl for installation instructions, and 
 you'll end up with advanced fuzzy omnicompletion and a full-fledged repl 
 (accessible via :ReplHere).

 Redl includes a Debug Repl, which allows you to freeze a REPL and inspect 
 local variables. See a sample session in action to understand better: 
 https://github.com/dgrnbrg/redl#debug-repl

 Pull requests and feature requests welcome!


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




Re: ANN: vim-redl -- advanced fuzzy omnicompletion and VimClojure-style repl with enhanced debugging features

2013-04-04 Thread Max Gonzih
So I got it working and it's pretty cool. But is there any options to remap 
default keys (for example I'm using -_ instead of $^)?

Thanks

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




Re: A forum for Clojure...?

2013-03-05 Thread Max Gonzih
There is no forum engine there that can provide such flexibility that 
mailing list can provide. I want to be able to have updates send to my 
email on daily basis, I want to be able to reply directly in email, I want 
to be able to use it from different clients (console based, gui based, not 
only web ui).

On Tuesday, March 5, 2013 9:38:02 PM UTC+3, BJG145 wrote:

 I'm not used to Google Groups so I'm not even sure whether this is more of 
 a forum or a mailing list or something else. It's not really what I'd call 
 a full-on forum though. The communities where I hang around tend to look 
 more like this...

 http://www.edugeek.net/
 http://www.edugeek.net/forums/

 http://www.soundonsound.com/
 http://www.soundonsound.com/forum/

 News homepage with links, forum with sections, you get the picture. 

 This group is clearly where the action is and I imagine it will stay that 
 way, but I'm thinking it would be nice to have something more structured, 
 more community-minded and appealing to browse. 

 At the moment, apart from this, there are some barely-used  Clojure 
 sections in programming forums like Code Ranch which offer no advantage...

 http://www.coderanch.com/forums/f-110/clojure

 ...and the deserted Getting Clojure forum, which is the closest to the 
 kind of structure I had in mind, but badly needs a design makeover.

 http://www.gettingclojure.com/
 http://www.gettingclojure.com/forum:start

 Imagine a swish site with sensible sections for all levels; topics like 
 News, Programming, Leiningen, Light Table, Getting Started, General Chat 
 etc etc (OK so I don't know enough about the subject to know what they 
 should be)...does the idea have any appeal, or is it not going to 
 happen...? It's easy to set up stuff like that nowadays, though design and 
 moderation probably takes a bit more practice. Just a thought.


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




Re: Clojure - Python Style suggestion

2013-02-10 Thread Max Gonzih
programmer dvorak is better :)
On Feb 9, 2013 3:39 PM, vemv v...@vemv.net wrote:

 I like the parentheses better. My only complaint is that I have to press
 the shift key to type them.


 You can always remap your keyboard / keyboard bindings. For example in
 emacs:

 (define-key clojure-mode-map 9 'paredit-open-round)

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




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




Re: Clojure - Python Style suggestion

2013-02-08 Thread Max Gonzih
I can't understand how to distinguish where is function call and where 
is var in function arguments. Should it be indented too?


On 02/08/2013 01:14 PM, faenvie wrote:
A simple workaround I've considered, but haven't gotten around to doing anything about in e.g. 
Emacs, is to simply tone down the parens visually in the editor.


Just last week i was astouned how readable clojure is, when its proper 
indented and the parenteses are invisible. This insight came upon me 
by pure accident ... i embedded some clojure-code in my blog via 
github/gist and used a pygments.css that made clojure-parenteses 
visually disappear. it was really amazing ... the code looked very 
similar to phyton and was more human-readable ... just a note - no vote.



--
--
You received this message because you are subscribed to the Google
Groups Clojure group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient 
with your first post.

To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
---
You received this message because you are subscribed to the Google 
Groups Clojure group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to clojure+unsubscr...@googlegroups.com.

For more options, visit https://groups.google.com/groups/opt_out.




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

To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.




Re: Clojure - Python Style suggestion

2013-02-06 Thread Max Gonzih
Actually I think python style indention will over-complicate code. When 
writing python style clojure you will always need to think in which clojure 
with parentheses it will be transformed.

Personally I love parentheses. Imho Lisp is easy and S-expressions are 
awesome :)

On Monday, February 4, 2013 11:01:30 PM UTC+3, Sergey Didenko wrote:

 Hi, 

 For us as Clojure community it is easy to see how Clojure benefits 
 from being a Lisp. Homoiconity, extreme conciseness, esoteric look and 
 feel, etc. 

 However it is hard to see from the inside how Clojure as ecosystem 
 (probably) suffer from being a Lisp. Please don't throw rotten eggs at 
 me, I mean only the part of Lisp that is ... parentheses. 

 I remember a number of people that mention parentheses as obstacles to 
 the wider Clojure adoption, in the Clojure space - in the Clojure 
 related discussions, even on this mailing list IIRC. 

 But the number of people thinking this way outside the Clojure groups 
 is even bigger! We probably don't notice it because got immune to this 
 famous argument it has too many parentheses early when diving into 
 Clojure. 

 I suggest there are a big number of people that could gain interest in 
 clojure if we provide them with parentheses-lite Clojure syntax. For 
 example we can steal Python way of intending blocks. 

 For example the following quicksort implementation 

 (defn qsort [[pivot  xs]] 
   (when pivot 
 (let [smaller #( % pivot)] 
   (lazy-cat (qsort (filter smaller xs)) 
 [pivot] 
 (qsort (remove smaller xs)) 

 could be written as 

 (set! python-style-op-op true) 

 defn qsort [[pivot  xs]] 
   when pivot 
 let [smaller #( % pivot)] 
   lazy-cat 
 qsort 
   filter smaller xs 
 [pivot] 
 qsort 
   remove smaller xs 

 What do you think? 

 Isn't is less complex? 


 P.S. Ok, I must confess, the mention of the C-Word in the last 
 sentence was just a desperate way to get Rich's attention. 

 P.P.S. Actually I would also love to see Clojure community making 
 video clip Clojure - Python Style as a remix for G... Style, but 
 this idea is probably way ahead of its time. 


 Regards, Sergey. 


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