Re: Google Summer of Code 2013

2013-02-16 Thread Mikera
Awesome stuff!

core.matrix has a lot of great opportunities to work on something 
meaningful, and I'd be happy to mentor one or more students in this area. 
Top of my list would be:

 - Extending core.matrix support to Incanter (medium, needs collaboration 
with Incanter team)
 - A full NumPy style NDArray implementation in Clojure (large, quite 
advanced)
 - core.matrix support for data tables (e.g. database resultsets, 
statistical datasets etc.) (medium)

Will post a proposal along these lines.

On Friday, 15 February 2013 02:03:58 UTC+8, Daniel Solano Gómez wrote:

 Hello, all,

 It's official:  Google Summer of Code 2013 is on.

 Last year, Clojure was able to get four students who worked on projects 
 like Typed Clojure, Clojure on Android, Clojure and Lua, and Overtone, and 
 I'd love to see Clojure be a mentoring organisation again this year.

 I have created a GSoC 2013 page on the Clojure community wiki 
 http://dev.clojure.org/display/community/Google+Summer+of+Code+2013. 
  Here you will be able to find the latest information about what's going on 
 with Clojure's GSoC 2013 effort and how to get involved.

 Here's some ways you can help:

 * Let people in your local user groups or university know about Clojure 
 and GSoC.
 * If you're going to Clojure/West, attend the GSoC unsession.

 For students

 * Start researching project ideas and get involved with the relevant 
 communities to find mentors.

 For developers:

 Does your open source project have a backlog of features to implement? 
  GSoC is a great way to draw new contributors to your project.

 * Post it to the project idea page and become a mentor.
 * Let people know about GSoC on your project mailing list.

 I'd like to thank everyone in advance for helping with our GSoC 2013 
 project.

 Sincerely,

 Daniel


-- 
-- 
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: Why is this so difficult?

2013-02-16 Thread Phillip Lord
Víctor M. V. v...@vemv.net writes:
 Phil, while I don't know the specific application you're working on,
 distributing Clojure apps to end users should't be any more difficult than
 distributing Java apps. Are you familiar with `lein uberjar`?

No, you miss the point. I am writing a DSL. The point is that end
users have will use my library and will write new code; they just don't
need to know that its Clojure that the are writing. So, they need a
working Clojure development environment. 


 As for Linux installation, curling and executing a single script can't be
 that much work...? Anyway what I do is to include those few lines of code
 in a script I use every time I install Linux on a new box - it sets up
 Ruby, Java, performs a bunch of apt-get-installs, makes some aliases, etc.

Previous experience has told me to avoid this kind of installation
unless you have to. The script approach is fine, but I dropped this
because maintaining the script is a pain. It's easier just to install
things when you use them. Slowly, overtime, as you change machines, the
things you use rarely evaporate away. So, subversion used to be a very
early install, while now it can take months. 

So, everything else, I install with aptitude. Clojure though. Well,
aptitude install clojure installs 1.1. So, then after I've worked out I
need leiningen, aptitude install leiningen works, but is the wrong thing
to do, because that is old also. Of course, the latter should go away
soon now lein2 is out.

Again, none of this is a disaster, but it's different from normal; this
is also what the OP was talking about. On windows he expects click and
point. 

I shall leave it there. I have a few ideas that I might try and
implement. If there is a desire, things will improve, so long as we
recognise that the situation is not yet ideal.

Phil

-- 
-- 
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: Why is this so difficult?

2013-02-16 Thread Phillip Lord
Phil Hagelberg p...@hagelb.org writes:
 I'd agree with this. The situation is even not ideal with linux; when I
 first used Clojure I was reticient to install lein by hand and only lein
 1 was available for my repo. Lazy? Well, I use 4 or 5 machines
 routinely, and I set them up as I go, so an quick and easy install is
 important. Eventually, I relented. 

 I know this is a drag, but package managers nearly always lag behind
 upstream releases; it's an unfortunate fact of life.

Sure, I know. I think I started Clojure at a slightly unfortunate time,
with both lein1-lein2 and slime-swank-nrepl. 

 If you're interested in helping on this, please drop a line on the
 Leiningen mailing list and we can pick it up there.

Packaging isn't my expertise, am afraid. I've tried an Emacs hack
instead, which I've mailed to nrepl.el. 

Phil

-- 
-- 
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: Building/inserting multiple records

2013-02-16 Thread Jonathon McKitrick
I'm sorry, I misspoke.  I meant *update* multiple records.

On Saturday, February 16, 2013 1:54:11 AM UTC-5, Feng Shen wrote:

  Is it easy (and immutable) to build a collection of records to insert? 
  I've been told CONJ is a good start.

 map maybe be helpful:  (map (fn [d] return-map-of-records) datasets)

  Does the clojure jdbc interface support insertion of multiple records? 
  I haven't seen such a function yet.

 clojure.java.jdbc/insert-records



 On Saturday, February 16, 2013 11:30:08 AM UTC+8, Jonathon McKitrick wrote:

 I'm iterating a large dataset and inserting a record for each row.  After 
 working in a Salesforce environment, I'm thinking it would be better to 
 build a collection of records and insert them in one fell swoop.

 1.  Is it easy (and immutable) to build a collection of records to 
 insert?  I've been told CONJ is a good start.
 2.  Does the clojure jdbc interface support insertion of multiple 
 records?  I haven't seen such a function yet.



-- 
-- 
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: Why is this so difficult?

2013-02-16 Thread Mikera
On Saturday, 16 February 2013 02:31:43 UTC+8, puzzler wrote:

 On Fri, Feb 15, 2013 at 8:19 AM, Jules jules...@gmail.com 
 javascript:wrote:

 But now you still don't have leiningen, which is essential if you want to 
 do anything non toy. The installation page of CCW does describe how to 
 create a leiningen project, but doesn't say that you first have to manually 
 install leiningen.

  
 AFAIK, this is not true.   Eclipse Counterclockwise comes bundled with its 
 own internal copy of leiningen, and completely manages it for you.  You do 
 not need to manually install leiningen or understand anything about it 
 other than how to add dependencies to your project.clj file.


FWIW, you also have the option of using Maven in Eclipse: this works as a 
decent alternative to Leiningen in many cases (downside: you have to learn 
Maven's quirks - upside: the IDE/tool integration is *much* better, you 
don't need to lean Leiningen's quirks). 

I've developed several non-trivial projects in Clojure using 
Eclipse+CCW+Maven (e.g. Clisk, Ironclad, core.matrix) and never needed to 
use Leiningen.
 


 I personally think that Eclipse's ultra-simple install (just unzip it) is 
 refreshing relative to the complexity of other Windows install programs 
 which create a lot of junk on my desktop, start menu, and registry.  Once 
 Eclipse is unzipped, the installation of counterclockwise plugin is one 
 step and pretty clearly documented, in my opinion.  I definitely think this 
 is the easiest way to get up and running with Clojure on windows.

 I can see how the counterclockwise site would benefit from a more 
 unambiguous endorsement of a specific version of Eclipse, for users who 
 aren't already using it and are downloading it for the first time.  There 
 are a lot of choices at the Eclipse site.  Also, I understand there a few 
 confusing aspects of getting started once everything is installed: starting 
 a project (leiningen project vs clojure project), creating a file to code 
 in (doesn't automatically do user-friendly things like add the .clj 
 extension to new files created in the project nor add a default namespace 
 declaration at the top of the file), and starting the REPL (there are a few 
 different ways to start a REPL and it is not obvious what, if any, the 
 differences are).




-- 
-- 
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: Google Summer of Code 2013

2013-02-16 Thread Daniel Solano Gómez
Hello, Andy,

I can't see any reason why Clooj wouldn't qualify as GSoC project.  I
believe the main criteria are that it has to be coding (i.e. not just
documentation work), it must be released with an open source license,
and it has to be a full summer's worth of work.

Feel free to add Clooj to the project ideas page
http://dev.clojure.org/display/community/Project+Ideas.

Sincerely,

Daniel



On Fri Feb 15 16:06 2013, Andy Fingerhut wrote:
 I don't know if it would be within the scope of what GSoC would be interested 
 in funding, or if anyone would be interested in doing it, but from some of 
 the messages in the Why is it so hard? thread, there are people interested 
 in seeing Clooj stay up to date and maintained.
 
 Andy
 
 On Feb 14, 2013, at 10:03 AM, Daniel Solano Gómez wrote:
 
  Hello, all,
  
  It's official:  Google Summer of Code 2013 is on.
  
  Last year, Clojure was able to get four students who worked on projects 
  like Typed Clojure, Clojure on Android, Clojure and Lua, and Overtone, and 
  I'd love to see Clojure be a mentoring organisation again this year.
  
  I have created a GSoC 2013 page on the Clojure community wiki 
  http://dev.clojure.org/display/community/Google+Summer+of+Code+2013.  
  Here you will be able to find the latest information about what's going on 
  with Clojure's GSoC 2013 effort and how to get involved.
  
  Here's some ways you can help:
  
  * Let people in your local user groups or university know about Clojure and 
  GSoC.
  * If you're going to Clojure/West, attend the GSoC unsession.
  
  For students
  
  * Start researching project ideas and get involved with the relevant 
  communities to find mentors.
  
  For developers:
  
  Does your open source project have a backlog of features to implement?  
  GSoC is a great way to draw new contributors to your project.
  
  * Post it to the project idea page and become a mentor.
  * Let people know about GSoC on your project mailing list.
  
  I'd like to thank everyone in advance for helping with our GSoC 2013 
  project.
  
  Sincerely,
  
  Daniel
 
 -- 
 -- 
 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.
 
 


signature.asc
Description: Digital signature


Re: Google Summer of Code 2013

2013-02-16 Thread Daniel Solano Gómez
Hello, Håkan,

I don't think there is any problem with Deuce being a Clojure GSoC idea.
Feel free to add it to the project ideas page
http://dev.clojure.org/display/community/Project+Ideas.

Sincerely,

Daniel


On Fri Feb 15 23:32 2013, Håkan Råberg wrote:
 I'm pretty interested in setting up and mentor a project around Deuce[1] - 
 exact scope to be decided.
 But I'm not sure this would fall under the scope of this?
 
 cheers, Hakan
 
 [1] https://github.com/hraberg/deuce/
 
 On Thursday, 14 February 2013 23:33:58 UTC+5:30, Daniel Solano Gómez wrote:
 
  Hello, all,
 
  It's official:  Google Summer of Code 2013 is on.
 
  Last year, Clojure was able to get four students who worked on projects 
  like Typed Clojure, Clojure on Android, Clojure and Lua, and Overtone, and 
  I'd love to see Clojure be a mentoring organisation again this year.
 
  I have created a GSoC 2013 page on the Clojure community wiki 
  http://dev.clojure.org/display/community/Google+Summer+of+Code+2013. 
   Here you will be able to find the latest information about what's going on 
  with Clojure's GSoC 2013 effort and how to get involved.
 
  Here's some ways you can help:
 
  * Let people in your local user groups or university know about Clojure 
  and GSoC.
  * If you're going to Clojure/West, attend the GSoC unsession.
 
  For students
 
  * Start researching project ideas and get involved with the relevant 
  communities to find mentors.
 
  For developers:
 
  Does your open source project have a backlog of features to implement? 
   GSoC is a great way to draw new contributors to your project.
 
  * Post it to the project idea page and become a mentor.
  * Let people know about GSoC on your project mailing list.
 
  I'd like to thank everyone in advance for helping with our GSoC 2013 
  project.
 
  Sincerely,
 
  Daniel
 
 
 -- 
 -- 
 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.
 
 


signature.asc
Description: Digital signature


Re: Google Summer of Code 2013

2013-02-16 Thread Daniel Solano Gómez
These sound like some good ideas.  Feel free to add a core.matrix
category to the project ideas page.

Thanks,

Daniel

On Sat Feb 16 01:02 2013, Mikera wrote:
 Awesome stuff!
 
 core.matrix has a lot of great opportunities to work on something 
 meaningful, and I'd be happy to mentor one or more students in this area. 
 Top of my list would be:
 
  - Extending core.matrix support to Incanter (medium, needs collaboration 
 with Incanter team)
  - A full NumPy style NDArray implementation in Clojure (large, quite 
 advanced)
  - core.matrix support for data tables (e.g. database resultsets, 
 statistical datasets etc.) (medium)
 
 Will post a proposal along these lines.
 
 On Friday, 15 February 2013 02:03:58 UTC+8, Daniel Solano Gómez wrote:
 
  Hello, all,
 
  It's official:  Google Summer of Code 2013 is on.
 
  Last year, Clojure was able to get four students who worked on projects 
  like Typed Clojure, Clojure on Android, Clojure and Lua, and Overtone, and 
  I'd love to see Clojure be a mentoring organisation again this year.
 
  I have created a GSoC 2013 page on the Clojure community wiki 
  http://dev.clojure.org/display/community/Google+Summer+of+Code+2013. 
   Here you will be able to find the latest information about what's going on 
  with Clojure's GSoC 2013 effort and how to get involved.
 
  Here's some ways you can help:
 
  * Let people in your local user groups or university know about Clojure 
  and GSoC.
  * If you're going to Clojure/West, attend the GSoC unsession.
 
  For students
 
  * Start researching project ideas and get involved with the relevant 
  communities to find mentors.
 
  For developers:
 
  Does your open source project have a backlog of features to implement? 
   GSoC is a great way to draw new contributors to your project.
 
  * Post it to the project idea page and become a mentor.
  * Let people know about GSoC on your project mailing list.
 
  I'd like to thank everyone in advance for helping with our GSoC 2013 
  project.
 
  Sincerely,
 
  Daniel
 
 
 -- 
 -- 
 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.
 
 


signature.asc
Description: Digital signature


Re: Why is this so difficult?

2013-02-16 Thread Jules
@Andy: I hadn't seen that page before, and it is excellent. It explains 
everything step-by-step and also gives key information, for example that it 
is not necessary to install leiningen manually because it comes with CCW. 
If possible, that guide should be featured prominently 
on http://code.google.com/p/counterclockwise/ and perhaps on clojure.org. 
That would solve 90% of the difficulty of installation I think. Even 
following that guide, CCW still won't run leiningen on my windows 7 system, 
but maybe that's an anomaly possibly caused by me messing up something 
during previous installation attempts.

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




features expression

2013-02-16 Thread Mimmo Cosenza
Hi all,
the more I learn cli/cljs the more I find myself in looking for libraries 
running on both sides of a clojurean web app. hiccup/valip, c2, 
enliven/encofus, just to name few of them. 

Is there a kind of agreement on which approach to follow to solve the features  
expression problem. I already used the leon-cljsbuild workaround (i.e. 
:crossovers option) and cljx feature approach. 

I just read about feature expression problem here: 
http://dev.clojure.org/display/design/Feature+Expressions
The last discussion is dated july 2012. Cljs, by attracting people coming from 
the front-end side too and by freeing the back-end guys from js programming, is 
growing fast and my personal opinion is that there should be a move toward a 
decision regarding the sharing of code between cli and cljs. 

Is there any advance in this direction? 

My best

mimmo





-- 
-- 
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: [ClojureScript] features expression

2013-02-16 Thread David Nolen
I personally think the CL feature expression approach is satisfactory. I'd
like to see this get into 1.6. It's likely that ClojureScript will switch
to tools.reader in order to get more accurate information for source maps,
so perhaps we can move more quickly if we just implement it there.


On Sat, Feb 16, 2013 at 11:28 AM, Mimmo Cosenza mimmo.cose...@gmail.comwrote:

 Hi all,
 the more I learn cli/cljs the more I find myself in looking for libraries
 running on both sides of a clojurean web app. hiccup/valip, c2,
 enliven/encofus, just to name few of them.

 Is there a kind of agreement on which approach to follow to solve the
 features  expression problem. I already used the leon-cljsbuild workaround
 (i.e. :crossovers option) and cljx feature approach.

 I just read about feature expression problem here:
 http://dev.clojure.org/display/design/Feature+Expressions
 The last discussion is dated july 2012. Cljs, by attracting people coming
 from the front-end side too and by freeing the back-end guys from js
 programming, is growing fast and my personal opinion is that there should
 be a move toward a decision regarding the sharing of code between cli and
 cljs.

 Is there any advance in this direction?

 My best

 mimmo





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




-- 
-- 
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: STM in Clojure vs Haskell, why no retry or orElse?

2013-02-16 Thread vemv
You can increase the chances of generating discussion by boiling down both 
the relevant content of paper and your program to a minimal, self-contained 
form.

Cheers - Victor

On Friday, February 15, 2013 4:05:09 PM UTC+1, thattommyhall wrote:

 A few months ago I reread Simon Peyton Joneses article on STM in the 
 Beautiful Code book and decided to try and translate it into clojures 
 STM 

 See the paper here http://research.microsoft.com/pubs/74063/beautiful.pdf 

 He says 'Atomic blocks as we have introduced them so far are utterly 
 inadequate to coordinate concurrent programs. They lack two key 
 facilities: blocking and choice' so I guess the implication is 
 Clojures STM is inferior, any thoughts? 

 I had to use a constraint on a ref and try/catch to get the same 
 effect (though I hate using exceptions for control flow it does seem 
 to work) 

 https://github.com/thattommyhall/santa-claus/blob/master/src/santa/core.clj 

 I think a better solution might be had using watchers, how would you do 
 it? 
 Any good links explaining differences in the STMs? 

 Cheers, 
 Tom 


-- 
-- 
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: [ClojureScript] features expression

2013-02-16 Thread Mimmo Cosenza
Hi David,
do you think that with some guidance from few cli/cljs gurus the effort could 
be shared with less experienced clojurist ? Or it's more efficient to let those 
gurus to make a step ahead by themselves?

mimmo

On Feb 16, 2013, at 5:53 PM, David Nolen dnolen.li...@gmail.com wrote:

 I personally think the CL feature expression approach is satisfactory. I'd 
 like to see this get into 1.6. It's likely that ClojureScript will switch to 
 tools.reader in order to get more accurate information for source maps, so 
 perhaps we can move more quickly if we just implement it there.
 
 
 On Sat, Feb 16, 2013 at 11:28 AM, Mimmo Cosenza mimmo.cose...@gmail.com 
 wrote:
 Hi all,
 the more I learn cli/cljs the more I find myself in looking for libraries 
 running on both sides of a clojurean web app. hiccup/valip, c2, 
 enliven/encofus, just to name few of them. 
 
 Is there a kind of agreement on which approach to follow to solve the 
 features  expression problem. I already used the leon-cljsbuild workaround 
 (i.e. :crossovers option) and cljx feature approach. 
 
 I just read about feature expression problem here: 
 http://dev.clojure.org/display/design/Feature+Expressions
 The last discussion is dated july 2012. Cljs, by attracting people coming 
 from the front-end side too and by freeing the back-end guys from js 
 programming, is growing fast and my personal opinion is that there should be 
 a move toward a decision regarding the sharing of code between cli and cljs. 
 
 Is there any advance in this direction? 
 
 My best
 
 mimmo
 
 
 
 
 
 
 -- 
 Note that posts from new members are moderated - please be patient with your 
 first post.
 --- 
 You received this message because you are subscribed to the Google Groups 
 ClojureScript group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to clojurescript+unsubscr...@googlegroups.com.
 To post to this group, send email to clojurescr...@googlegroups.com.
 Visit this group at http://groups.google.com/group/clojurescript?hl=en.
  
  
 
 
 -- 
 Note that posts from new members are moderated - please be patient with your 
 first post.
 --- 
 You received this message because you are subscribed to the Google Groups 
 ClojureScript group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to clojurescript+unsubscr...@googlegroups.com.
 To post to this group, send email to clojurescr...@googlegroups.com.
 Visit this group at http://groups.google.com/group/clojurescript?hl=en.
  
  

-- 
-- 
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: [ClojureScript] features expression

2013-02-16 Thread David Nolen
I've only glanced at it but Roman's patch looks pretty straightforward, it
should be pretty simple to port to tools.reader if the tools.reader folks
are OK with this approach.

I think the reason it has stalled is that there been some pushback on that
design thread. I don't really share any of the concerns nor like any of the
alternate designs expressed there. Feature Expression are simple, have
worked well for CL, and require minimal amount of effort to implement. The
kinds of hacks that are being used due to the lack of Feature Expression
the wild are needlessly complex and the sooner we have something the better.

I wrote the last email pretty quickly - we would need those patches
accepted into 1.6 for this to work. I have spoken to Rich briefly in person
about this at TechMesh and he didn't seem to share the concerns expressed
in the design thread either. So my fingers are crossed that 1.6 arrives
fairly quickly with Feature Expression support.

Probably the best thign to do would be to move Roman's CLJ patch to a CLJ
JIRA patch and vote it up.


On Sat, Feb 16, 2013 at 12:16 PM, Mimmo Cosenza mimmo.cose...@gmail.comwrote:

 Hi David,
 do you think that with some guidance from few cli/cljs gurus the effort
 could be shared with less experienced clojurist ? Or it's more efficient to
 let those gurus to make a step ahead by themselves?

 mimmo

 On Feb 16, 2013, at 5:53 PM, David Nolen dnolen.li...@gmail.com wrote:

 I personally think the CL feature expression approach is satisfactory. I'd
 like to see this get into 1.6. It's likely that ClojureScript will switch
 to tools.reader in order to get more accurate information for source maps,
 so perhaps we can move more quickly if we just implement it there.


 On Sat, Feb 16, 2013 at 11:28 AM, Mimmo Cosenza 
 mimmo.cose...@gmail.comwrote:

 Hi all,
 the more I learn cli/cljs the more I find myself in looking for libraries
 running on both sides of a clojurean web app. hiccup/valip, c2,
 enliven/encofus, just to name few of them.

 Is there a kind of agreement on which approach to follow to solve the
 features  expression problem. I already used the leon-cljsbuild workaround
 (i.e. :crossovers option) and cljx feature approach.

 I just read about feature expression problem here:
 http://dev.clojure.org/display/design/Feature+Expressions
 The last discussion is dated july 2012. Cljs, by attracting people coming
 from the front-end side too and by freeing the back-end guys from js
 programming, is growing fast and my personal opinion is that there should
 be a move toward a decision regarding the sharing of code between cli and
 cljs.

 Is there any advance in this direction?

 My best

 mimmo






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





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




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




-- 
-- 
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: [ClojureScript] features expression

2013-02-16 Thread Thomas Heller
Oh, yes please. This looks very interesting.

Where can I vote? :P

The more CLJ/CLJS code I write the more I miss a straightforward way to 
share code. Even with cljx or cljsbuild crossovers its still a workarround.



On Saturday, February 16, 2013 7:20:45 PM UTC+1, David Nolen wrote:

 I've only glanced at it but Roman's patch looks pretty straightforward, it 
 should be pretty simple to port to tools.reader if the tools.reader folks 
 are OK with this approach.

 I think the reason it has stalled is that there been some pushback on that 
 design thread. I don't really share any of the concerns nor like any of the 
 alternate designs expressed there. Feature Expression are simple, have 
 worked well for CL, and require minimal amount of effort to implement. The 
 kinds of hacks that are being used due to the lack of Feature Expression 
 the wild are needlessly complex and the sooner we have something the better.

 I wrote the last email pretty quickly - we would need those patches 
 accepted into 1.6 for this to work. I have spoken to Rich briefly in person 
 about this at TechMesh and he didn't seem to share the concerns expressed 
 in the design thread either. So my fingers are crossed that 1.6 arrives 
 fairly quickly with Feature Expression support.

 Probably the best thign to do would be to move Roman's CLJ patch to a CLJ 
 JIRA patch and vote it up.


 On Sat, Feb 16, 2013 at 12:16 PM, Mimmo Cosenza 
 mimmo@gmail.comjavascript:
  wrote:

 Hi David,
 do you think that with some guidance from few cli/cljs gurus the effort 
 could be shared with less experienced clojurist ? Or it's more efficient to 
 let those gurus to make a step ahead by themselves?

 mimmo

 On Feb 16, 2013, at 5:53 PM, David Nolen dnolen...@gmail.comjavascript: 
 wrote:

 I personally think the CL feature expression approach is satisfactory. 
 I'd like to see this get into 1.6. It's likely that ClojureScript will 
 switch to tools.reader in order to get more accurate information for source 
 maps, so perhaps we can move more quickly if we just implement it there.


 On Sat, Feb 16, 2013 at 11:28 AM, Mimmo Cosenza 
 mimmo@gmail.comjavascript:
  wrote:

 Hi all,
 the more I learn cli/cljs the more I find myself in looking for 
 libraries running on both sides of a clojurean web app. hiccup/valip, c2, 
 enliven/encofus, just to name few of them. 

 Is there a kind of agreement on which approach to follow to solve the 
 features  expression problem. I already used the leon-cljsbuild workaround 
 (i.e. :crossovers option) and cljx feature approach. 

 I just read about feature expression problem here: 
 http://dev.clojure.org/display/design/Feature+Expressions
 The last discussion is dated july 2012. Cljs, by attracting people 
 coming from the front-end side too and by freeing the back-end guys from js 
 programming, is growing fast and my personal opinion is that there should 
 be a move toward a decision regarding the sharing of code between cli and 
 cljs. 

 Is there any advance in this direction? 

 My best

 mimmo






 -- 
 Note that posts from new members are moderated - please be patient with 
 your first post.
 --- 
 You received this message because you are subscribed to the Google 
 Groups ClojureScript group.
 To unsubscribe from this group and stop receiving emails from it, send 
 an email to clojurescrip...@googlegroups.com javascript:.
 To post to this group, send email to clojur...@googlegroups.comjavascript:
 .
 Visit this group at http://groups.google.com/group/clojurescript?hl=en.
  
  



 -- 
 Note that posts from new members are moderated - please be patient with 
 your first post.
 --- 
 You received this message because you are subscribed to the Google Groups 
 ClojureScript group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to clojurescrip...@googlegroups.com javascript:.
 To post to this group, send email to clojur...@googlegroups.comjavascript:
 .
 Visit this group at http://groups.google.com/group/clojurescript?hl=en.
  
  


  -- 
 Note that posts from new members are moderated - please be patient with 
 your first post.
 --- 
 You received this message because you are subscribed to the Google Groups 
 ClojureScript group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to clojurescrip...@googlegroups.com javascript:.
 To post to this group, send email to clojur...@googlegroups.comjavascript:
 .
 Visit this group at http://groups.google.com/group/clojurescript?hl=en.
  
  




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

Re: Questions regarding lazy sequence processing

2013-02-16 Thread Steven Yi
Hi Herwig,

Thanks for the reply!  I think I had tried that before and I tried again 
just now but it gives a problem of arity:

CompilerException java.lang.RuntimeException: Can't have fixed arity 
function with more params than variadic function, 
compiling:(audio_seq/core.clj:42) 

which makes sense.  Using apply map though does simplify it a bit:

(defn amix
  ([] [])
  ([ a] 
 (let [len (count a)]
   (if (= len 1)
 (first a)
 (apply map + a)

and that is working rather nicely, thanks!  

I spent a couple hours today trying to work on performance of the code and 
it's unfortunately very poor at the moment.  Doing a lot of number 
crunching with lazy sequences, while elegant, seems to be not very 
performant. I think I need to learn a bit more about Clojure and perhaps 
rethink my design strategy for this work.

Thanks again!
steven




On Saturday, February 16, 2013 1:35:14 AM UTC, Herwig Hochleitner wrote:

 Sorry, hit the wrong key early. This version handles the one arg case 
 efficiently:

 (defn amix 
   ([a] a)
   ([ as]
 (apply map + as)))


 2013/2/16 Herwig Hochleitner hhochl...@gmail.com javascript:

 To your first question: How about

 (defn amix 
 [ a]
   (apply map + a))



 2013/2/16 Steven Yi stev...@gmail.com javascript:

 Hi All,

 I'm fairly new to Clojure (enjoying it very much!) and had a couple 
 questions regarding lazy sequences.  

 1. With a sequence of sequences, I want to reduce the sequences down 
 into a single sequence.  So, the heads of all the sequences gets reduced, 
 then the next items, etc.  The end result would also be a lazy sequence. 
  Right now I have this code that is working, but I wasn't sure if there's 
 some other way that might be clearer:

 (defn amix
   ([] [])
   ([ a]
  (let [len (count a)]
(if (= len 1)
  (first a)
  (map #(reduce + %) (partition len (apply interleave a)))


 2. I'm planning to have a number of sequence transforming functions. 
  Most will probably have this shape:

 (defn some-func [arg1 arg2 xs]
   (map #(some code...) xs))

 This would be so I could consume a lazy sequence xs, operate on it, then 
 output a lazy sequence.  I thought I might write a macro to simplify this 
 and have the function do its own lazy-seq and recursive call to itself, 
 rather than go through map (figured it might save some call overhead, and 
 simplify the macro writing, but am still a bit new with this).  I imagine 
 this should work fine, but is this kind of thing already encapsulated 
 somewhere?

 Thanks!
 steven

  -- 
 -- 
 You received this message because you are subscribed to the Google
 Groups Clojure group.
 To post to this group, send email to clo...@googlegroups.comjavascript:
 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/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: Using Friend with an AccountChooser

2013-02-16 Thread Timothy Washington
Hey, so I got this kind of figured out. I'll post my results here, in the
hope that it helps someone; and for future reference.

Using *friend*, the library seems to assume that you will be using it for *
authentication* and *authorization*. I just need it for the
*authorization*bits, and had to dig into its internal data
assumptions. Please correct me
if I'm wrong in any of this.

I currently, use the raw f*riend/authorized?* function. It assumes you have
a user map that has these elements:

{
  :current *::i-assume-inserted-by-friends-authentication*
  :authentications {
*::**i-assume-**inserted-by-friends-authentication* { :roles #{ ::admin
::user } }
  }

  :uname ...
  :etc ...
}


So now, if I call *(friend/authorized? ∈{ ::user } my-user-map)*, it will
yank out the :current :authentications, and loop on something like below.
From this, you should get the result (::user) .

(for  [granted '(::user ::admin)
required '(::user)
 :when (isa? granted required)
   ]
   granted
)



So the moral of the story seems to be: If you don't use friend's
authorization, when creating a new user, include a structure like below.
And I assume the :current entry is inserted on login. Then you can test if
a user is authorized, by passing in a set with one of those roles in
thing.

{
  :current ::thing
  :authentications {
::thing { :roles #{ ::admin ::user } }
  }
}



HTH
Tim


On Wed, Feb 13, 2013 at 6:10 PM, Timothy Washington twash...@gmail.comwrote:

 Hi there,

 I have a webapp that's using Google's Gitkit 
 v1https://developers.google.com/identity-toolkit/implementation of an
 AccountChooser http://accountchooser.com.

 The pattern is that the Gitkit tool provides i) a button, then ii)
 functional completion of the authentication handshake between the user and
 their Identity Provider (IDP). From there, my existing code iii) implements
 a callbackHandler that takes the IDP response and iv) verifies it with
 another Google service. This is all to say that the user will be
 authenticated before they really begin to use the application proper.

 So now I take step iv's verify response and v) adds the user if nil and
 iv) puts that user has into a ring (w/ lib-noir) stateful-session

 Friend seems to assume that it will handle the authentication, as well as
 authorization. My question is, how can I use Friend to access that current
 user hash after it's been put in the ring/lib-noir stateful session? If if
 that's a no-no, where, in the previous workflow, can I use Friend to
 intercept Gitkit's ( or an accountchooser's ) callback function? Hope this
 was all clear. Any insights appreciated.


 Thanks in advance

 Tim Washington
 Interruptsoftware.ca



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




[ANN] ring-filter-routes 0.1.1 ;simple route filtering middleware

2013-02-16 Thread Omer Iqbal
Would love some feedback. I used this code in another project, and decided
to publish the (very simple) middleware as a clojar in case someone else
finds it useful.
Cheers,
Omer

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




[ANN] ClojureScript release 0.0-1586

2013-02-16 Thread Stuart Sierra
Coming soon to a Maven repository near you:

[org.clojure/clojurescript 0.0-1586]

List of changes:
http://build.clojure.org/job/clojurescript-release/22/

Notable change: fix for CLJS-418, the broken dependency chain between the
Google Closure Library and its third-party extensions. ClojureScript's
dependency tree now includes the third-party extensions by default.

-S

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




Using local jar

2013-02-16 Thread Jarod
Hi.  This is a really basic question, as I'm new to Clojure and Java.  I'm 
trying to use a jar file for Stanford's NLP software that isn't available 
on Maven.  I successfully ran the commands from this website:

www.pgrs.net/2011/10/30/using-local-jars-with-leiningen/

to create a local maven repository, but how do I access the methods in the 
jar now?  I created a project using leiningen with eclipse and 
counterclockwise and I add the following to core.clj in the src directory 
to import the jar:

(import 'stanford-corenlp)

where stanford-corenlp is the name of the directory in the local maven 
repository.  However, I get the error:

ClassNotFoundException stanford-corenlp  java.net.URLClassLoader$1.run 
(URLClassLoader.java:217)

Thanks in advance for your help.

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




Understanding nested quotes for game-action clojure macro from http://lisperati.planvita.com/actions.html

2013-02-16 Thread Iakiv Kramarenko
I have read the casting SPELs tutorial, its russian version adapted for 
clojure athttp://lisperati.planvita.com/... And up to this time I can't 
understand how the following macro works: (see
http://lisperati.planvita.com/actions.html for russian version or 
http://lisperati.com/actions.html for original one for Lisp):


  `(defspel ~command [subject# object#]
 `(spel-print (cond (and (= location '~'~place)
 (= '~subject# '~'~subj)
 (= '~object# '~'~obj)
 (have? '~'~subj))
~@'~args
:else '(i cannot ~'~command like that -)


It is is used further like:

(game-action weld chain bucket attic
   (cond (and (have? 'bucket) (def chain-welded true))
  '(the chain is now securely welded to the bucket -)
 :else '(you do not have a bucket -)))


(game-action dunk bucket well garden
 (cond chain-welded 
   (do (def bucket-filled true)
   '(the bucket is now full of water))
   :else '(the water level is too low to reach -)))


Here defspel - is just an alias for defmacro.
The reason to create the macro was to substitue the following functions:

(defn weld [subject object]
  (cond (and (= location 'attic)
 (= subject 'chain)
 (= object 'bucket)
 (have? 'chain)
 (have? 'bucket)
 (not chain-welded))
(do (def chain-welded true)
'(the chain is now securely welded to the bucket -))
:else '(you cannot weld like that -)))

(defn dunk [subject object]
  (cond (and (= location 'garden)
 (= subject 'bucket)
 (= object 'well)
 (have? 'bucket)
 chain-welded)
(do (def bucket-filled true)
'(the bucket is now full of water))
:else '(you cannot dunk like that -)))


 am completely confused with how this game-action macro works... *Can 
anybody explain me all things (nested quotes) about it?*

I have already read the following article - 
http://blog.8thlight.com/colin-jones/2012/05/22/quoting-without-confusion.html 
- 
it did not help...

macroexpand-1 scares me too...
This is its output for the weld game-action:

(clojure-magic-game.core/defspel weld [subject__1058__auto__ 
object__1059__auto__] (clojure.core/seq (clojure.core/concat 
(clojure.core/list (quote clojure-magic-game.core/spel-print)) 
(clojure.core/list (clojure.core/seq (clojure.core/concat 
(clojure.core/list (quote clojure.core/cond)) (clojure.core/list 
(clojure.core/seq (clojure.core/concat (clojure.core/list (quote 
clojure.core/and)) (clojure.core/list (clojure.core/seq 
(clojure.core/concat (clojure.core/list (quote clojure.core/=)) 
(clojure.core/list (quote clojure-magic-game.core/location)) 
(clojure.core/list (clojure.core/seq (clojure.core/concat 
(clojure.core/list (quote quote)) (clojure.core/list (quote attic 
(clojure.core/list (clojure.core/seq (clojure.core/concat 
(clojure.core/list (quote clojure.core/=)) (clojure.core/list 
(clojure.core/seq (clojure.core/concat (clojure.core/list (quote quote)) 
(clojure.core/list subject__1058__auto__ (clojure.core/list 
(clojure.core/seq (clojure.core/concat (clojure.core/list (quote quote)) 
(clojure.core/list (quote chain (clojure.core/list 
(clojure.core/seq (clojure.core/concat (clojure.core/list (quote 
clojure.core/=)) (clojure.core/list (clojure.core/seq (clojure.core/concat 
(clojure.core/list (quote quote)) (clojure.core/list 
object__1059__auto__ (clojure.core/list (clojure.core/seq 
(clojure.core/concat (clojure.core/list (quote quote)) (clojure.core/list 
(quote bucket (clojure.core/list (clojure.core/seq 
(clojure.core/concat (clojure.core/list (quote 
clojure-magic-game.core/have?)) (clojure.core/list (clojure.core/seq 
(clojure.core/concat (clojure.core/list (quote quote)) (clojure.core/list 
(quote chain))) (quote ((cond (and (have? (quote bucket)) (def 
chain-welded true)) (quote (the chain is now securely welded to the bucket 
-)) :else (quote (you do not have a bucket -) (clojure.core/list :else) 
(clojure.core/list (clojure.core/seq (clojure.core/concat 
(clojure.core/list (quote quote)) (clojure.core/list (clojure.core/seq 
(clojure.core/concat (clojure.core/list (quote clojure-magic-game.core/i)) 
(clojure.core/list (quote clojure-magic-game.core/cannot)) 
(clojure.core/list (quote weld)) (clojure.core/list (quote 
clojure-magic-game.core/like)) (clojure.core/list (quote 
clojure-magic-game.core/that)) (clojure.core/list (quote 
clojure.core/-))
Even if to remove all namespaces and indent the output It will still look 
too complicated to understand for me:

(defspel weld [subject__1058__auto__ object__1059__auto__] 
  (seq (concat 
 (list (quote spel-print)) 
 (list (seq (concat 
  (list (quote cond)) 
  

Re: Using local jar

2013-02-16 Thread James Xu
you should import the fully-qualified class name(e.g.
com.mycompany.ClassA), rather than the file system directory name

发自我的 iPhone

在 2013-2-17,7:06,Jarod jaaroddeerfi...@yahoo.com 写道:

Hi.  This is a really basic question, as I'm new to Clojure and Java.  I'm
trying to use a jar file for Stanford's NLP software that isn't available
on Maven.  I successfully ran the commands from this website:

www.pgrs.net/2011/10/30/using-local-jars-with-leiningen/

to create a local maven repository, but how do I access the methods in the
jar now?  I created a project using leiningen with eclipse and
counterclockwise and I add the following to core.clj in the src directory
to import the jar:

(import 'stanford-corenlp)

where stanford-corenlp is the name of the directory in the local maven
repository.  However, I get the error:

ClassNotFoundException stanford-corenlp  java.net.URLClassLoader$1.run
(URLClassLoader.java:217)

Thanks in advance for your help.

-- 
-- 
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: abstraction on two libraries

2013-02-16 Thread Stuart Sierra
Yeah, it's not worth the effort.

IF you were going to attempt it, you'd want to define a protocol (or 
multimethods) for the common features that both libraries provide, then 
provide different implementations of those protocols using each library. 
But what's the point, especially if they both wrap the same underlying 
system? You've just written a lot of complicated code that doesn't provide 
much value.

-S


On Wednesday, February 13, 2013 2:30:40 PM UTC-5, Zack Maril wrote:

 To do that from scratch would probably be pretty hard and not worth the 
 effort. It would be an interesting learning experience, but for building 
 something significant, I would recommend selecting one of the libraries and 
 just sticking with that one at first. Hermes and Titanium are both wrappers 
 around Titan, so they should in theory play nice, but I cannot make 
 any guarantees about that. Effectively, you would be creating a third 
 library wrapping two wrappers. 
 -Zack


 On Wednesday, February 13, 2013 8:30:06 PM UTC+4, AtKaaZ wrote:

 Hi.
  Suppose you want to make an abstraction on top of two similar but 
 different libraries (hermes and titanium), so that I could switch between 
 using either of them(or both of them) at compiletime or runtime, how would 
 you do something like that?

 Thanks.

 -- 
 Please correct me if I'm wrong or incomplete,
 even if you think I'll subconsciously hate it.

  

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




Re: Using local jar

2013-02-16 Thread Aaron Cohen
I'm not sure if this is your problem, but a newbie might not realize one
thing from that blog post.

After doing all the steps there, you still have to add the dependency for
that artifact in your project.clj

I don't know how you named your local jar, but for their example you would
need to add

:dependencies [

[jaad/jaad 0.8.3]]


On Sat, Feb 16, 2013 at 6:00 PM, Jarod jaaroddeerfi...@yahoo.com wrote:

 Hi.  This is a really basic question, as I'm new to Clojure and Java.  I'm
 trying to use a jar file for Stanford's NLP software that isn't available
 on Maven.  I successfully ran the commands from this website:

 www.pgrs.net/2011/10/30/using-local-jars-with-leiningen/

 to create a local maven repository, but how do I access the methods in the
 jar now?  I created a project using leiningen with eclipse and
 counterclockwise and I add the following to core.clj in the src directory
 to import the jar:

 (import 'stanford-corenlp)

 where stanford-corenlp is the name of the directory in the local maven
 repository.  However, I get the error:

 ClassNotFoundException stanford-corenlp  java.net.URLClassLoader$1.run
 (URLClassLoader.java:217)

 Thanks in advance for your help.

 --
 --
 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: Using local jar

2013-02-16 Thread Aaron Cohen
Also, reading further on the blog, for lein2 you need to change


mvn install:install-file -Dfile=jaad-0.8.3.jar -DartifactId=jaad
-Dversion=0.8.3 -DgroupId=jaad -Dpackaging=jar
-DlocalRepositoryPath=maven_repository


to

mvn deploy:deploy-file -Dfile=jaad-0.8.3.jar -DartifactId=jaad
-Dversion=0.8.3 -DgroupId=jaad -Dpackaging=jar
-Durl=file:maven_repository



On Sat, Feb 16, 2013 at 7:13 PM, Aaron Cohen aa...@assonance.org wrote:

 I'm not sure if this is your problem, but a newbie might not realize one
 thing from that blog post.

 After doing all the steps there, you still have to add the dependency for
 that artifact in your project.clj

 I don't know how you named your local jar, but for their example you would
 need to add

 :dependencies [
 
 [jaad/jaad 0.8.3]]


 On Sat, Feb 16, 2013 at 6:00 PM, Jarod jaaroddeerfi...@yahoo.com wrote:

 Hi.  This is a really basic question, as I'm new to Clojure and Java.
  I'm trying to use a jar file for Stanford's NLP software that isn't
 available on Maven.  I successfully ran the commands from this website:

 www.pgrs.net/2011/10/30/using-local-jars-with-leiningen/

 to create a local maven repository, but how do I access the methods in
 the jar now?  I created a project using leiningen with eclipse and
 counterclockwise and I add the following to core.clj in the src directory
 to import the jar:

 (import 'stanford-corenlp)

 where stanford-corenlp is the name of the directory in the local maven
 repository.  However, I get the error:

 ClassNotFoundException stanford-corenlp  java.net.URLClassLoader$1.run
 (URLClassLoader.java:217)

 Thanks in advance for your help.

 --
 --
 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: [ANN] ring-filter-routes 0.1.1 ;simple route filtering middleware

2013-02-16 Thread Timothy Washington
Is it on github or clojars? Where can we take a look at the code?


Thanks
Tim


On Sat, Feb 16, 2013 at 3:53 PM, Omer Iqbal momeriqb...@gmail.com wrote:

 Would love some feedback. I used this code in another project, and decided
 to publish the (very simple) middleware as a clojar in case someone else
 finds it useful.
 Cheers,
 Omer

  --
 --
 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: [ANN] ClojureScript release 0.0-1586

2013-02-16 Thread David Nolen
Sweet! Thank you!

On Saturday, February 16, 2013, Stuart Sierra wrote:

 Coming soon to a Maven repository near you:

 [org.clojure/clojurescript 0.0-1586]

 List of changes:
 http://build.clojure.org/job/clojurescript-release/22/

 Notable change: fix for CLJS-418, the broken dependency chain between the
 Google Closure Library and its third-party extensions. ClojureScript's
 dependency tree now includes the third-party extensions by default.

 -S

  --
 You received this message because you are subscribed to the Google Groups
 Clojure Dev group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to clojure-dev+unsubscr...@googlegroups.com javascript:_e({},
 'cvml', 'clojure-dev%2bunsubscr...@googlegroups.com');.
 To post to this group, send email to 
 clojure-...@googlegroups.comjavascript:_e({}, 'cvml', 
 'clojure-...@googlegroups.com');
 .
 Visit this group at http://groups.google.com/group/clojure-dev?hl=en.
 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: [ANN] ring-filter-routes 0.1.1 ;simple route filtering middleware

2013-02-16 Thread Omer Iqbal
Oh my bad, forgot to add the link:
https://github.com/olenhad/ring-filter-routes
Its on both :)

On Sun, Feb 17, 2013 at 8:56 AM, Timothy Washington twash...@gmail.comwrote:

 Is it on github or clojars? Where can we take a look at the code?


 Thanks
 Tim


 On Sat, Feb 16, 2013 at 3:53 PM, Omer Iqbal momeriqb...@gmail.com wrote:

 Would love some feedback. I used this code in another project, and
 decided to publish the (very simple) middleware as a clojar in case someone
 else finds it useful.
 Cheers,
 Omer

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




-- 
-- 
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: Why is this so difficult?

2013-02-16 Thread Bizics
@Andy: Talk about unfortunate naming !!  
clojuredocs.org vs. clojure-doc.org
There is a site called clojure-doc.org ??
And it has some excellent documentation?
I just read their CCW guide - it is excellent and would have saved me so 
much frustration but I had no idea the site existed.

clojuredocs.org is the goto site for example usage of clojure functions.
And it is referenced from clojure.org under Documentation.

Any idea why clojure-doc.org is not mentioned under Documentation on 
clojure.org?

Maybe clojure-guides.org might be a better name?


On Saturday, February 16, 2013 5:48:13 AM UTC-8, Jules wrote:

 @Andy: I hadn't seen that page before, and it is excellent. It explains 
 everything step-by-step and also gives key information, for example that it 
 is not necessary to install leiningen manually because it comes with CCW. 
 If possible, that guide should be featured prominently on 
 http://code.google.com/p/counterclockwise/ and perhaps on clojure.org. 
 That would solve 90% of the difficulty of installation I think. Even 
 following that guide, CCW still won't run leiningen on my windows 7 system, 
 but maybe that's an anomaly possibly caused by me messing up something 
 during previous installation attempts.


-- 
-- 
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: new, macros and Can't eval locals

2013-02-16 Thread Jacob Goodson
You need to know something... it's a dialect of LISP, the only limitation 
is you.

On Thursday, February 14, 2013 5:08:57 PM UTC-5, AtKaaZ wrote:

 Thank you! I didn't know you could do .newInstance

 oh that's a nice trick with eval and list 'new

 So it's not impossible after all, thanks Aaron!
 Here's what I got from what you said:
 = *(defmacro mew [cls  restt]
`(eval (list 'new ~cls ~@restt))
  )*
 #'runtime.q/mew
 = *(let [a java.lang.RuntimeException]
(mew a)
  )*
 #RuntimeException java.lang.RuntimeException

 it makes sense now, using eval at runtime not at compile time as I was 
 trying

 and also the newInstance variant:
 = *(defmacro mew [cls  restt]
`(.newInstance ~cls ~@restt)
  )*
 #'runtime.q/mew
 = *(let [a java.lang.RuntimeException]
(mew a)
  )*
 #RuntimeException java.lang.RuntimeException


 Really, thank you Aaron, 


 On Thu, Feb 14, 2013 at 11:02 PM, Aaron Cohen 
 aa...@assonance.orgjavascript:
  wrote:

 Yes, since this is runtime you should use reflection.

 (let [a java.lang.RuntimeException]
(.newInstance a))

 Alternatively, you can use eval:

 (let [a java.lang.RuntimeException]
   (eval (list 'new a)))


 On Thu, Feb 14, 2013 at 4:53 PM, AtKaaZ atk...@gmail.com 
 javascript:wrote:

 I figure since new is expecting a class at compiletime, we can never 
 pass it a class that we evaluate at runtime(those locals), ergo = 
 impossible to macro around new like that

 like this = impossible:
 *(let [a java.lang.RuntimeException]
  (macro-that-eventually-calls-new a))*

 maybe someone could suggest another way? clojure.reflect ?



 On Thu, Feb 14, 2013 at 10:40 PM, AtKaaZ atk...@gmail.com javascript:
  wrote:

 thanks for the reply,

 = *(defmacro mew [cls  args]
  `(new ~cls ~@args))*
 #'runtime.q/mew
 =* (let [a java.lang.RuntimeException]
  (mew a)
  )*

 CompilerException java.lang.IllegalArgumentException: Unable to resolve 
 classname: a, compiling:(NO_SOURCE_PATH:2:3) 

 that would be the equivalent macro of what *new* is doing
 it's like
 *(new a)*
 CompilerException java.lang.IllegalArgumentException: Unable to resolve 
 classname: a, compiling:(NO_SOURCE_PATH:2:3) 


 This is the goal:

 The goal is to can write this form:
 =  *(let [a java.lang.RuntimeException]
  (new a))*

 but I think it's impossible, at least by using new it is


 On Thu, Feb 14, 2013 at 10:34 PM, Andy Fingerhut 
 andy.fi...@gmail.comjavascript:
  wrote:


 On Feb 14, 2013, at 1:27 PM, AtKaaZ wrote:

 The goal is to can write this form:
 = *(let [a java.lang.RuntimeException]
  (new a)
  )*
 CompilerException java.lang.IllegalArgumentException: Unable to 
 resolve classname: a, compiling:(NO_SOURCE_PATH:2:3) 

 attempt with macro:
 =* (defmacro mew [cls  restt]
  `(new ~(eval cls) ~@restt)
  )*
 #'runtime.q/mew


 This is probably your closest attempt.  Try this variation on the 
 above:

 (defmacro mew [cls  args]
   `(new ~cls ~@args))

 user= (macroexpand-1 '(mew java.lang.RuntimeException))
 (new java.lang.RuntimeException)

 Andy

  -- 
 -- 
 You received this message because you are subscribed to the Google
 Groups Clojure group.
 To post to this group, send email to clo...@googlegroups.comjavascript:
 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/groups/opt_out.
  
  




 -- 
 Please correct me if I'm wrong or incomplete,
 even if you think I'll subconsciously hate it.

  


 -- 
 Please correct me if I'm wrong or incomplete,
 even if you think I'll subconsciously hate it.

  -- 
 -- 
 You received this message because you are subscribed to the Google
 Groups Clojure group.
 To post to this group, send email to clo...@googlegroups.comjavascript:
 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/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 clo...@googlegroups.comjavascript:
 Note that posts from new members 

Re: new, macros and Can't eval locals

2013-02-16 Thread AtKaaZ
On Sun, Feb 17, 2013 at 6:12 AM, Jacob Goodson
submissionfight...@gmx.comwrote:

 You need to know something... it's a dialect of LISP, *the only*limitation is 
 you.

though it is certainly exerting its limitations on me





 On Thursday, February 14, 2013 5:08:57 PM UTC-5, AtKaaZ wrote:

 Thank you! I didn't know you could do .newInstance

 oh that's a nice trick with eval and list 'new

 So it's not impossible after all, thanks Aaron!
 Here's what I got from what you said:
 = *(defmacro mew [cls  restt]
`(eval (list 'new ~cls ~@restt))
  )*
 #'runtime.q/mew
 = *(let [a java.lang.RuntimeException]
(mew a)
  )*
 #RuntimeException java.lang.RuntimeException

 it makes sense now, using eval at runtime not at compile time as I was
 trying

 and also the newInstance variant:
 = *(defmacro mew [cls  restt]
`(.newInstance ~cls ~@restt)
  )*
 #'runtime.q/mew
 = *(let [a java.lang.RuntimeException]
(mew a)
  )*
 #RuntimeException java.lang.RuntimeException


 Really, thank you Aaron,


 On Thu, Feb 14, 2013 at 11:02 PM, Aaron Cohen aa...@assonance.orgwrote:

 Yes, since this is runtime you should use reflection.

 (let [a java.lang.RuntimeException]
(.newInstance a))

 Alternatively, you can use eval:

 (let [a java.lang.RuntimeException]
   (eval (list 'new a)))


 On Thu, Feb 14, 2013 at 4:53 PM, AtKaaZ atk...@gmail.com wrote:

 I figure since new is expecting a class at compiletime, we can never
 pass it a class that we evaluate at runtime(those locals), ergo =
 impossible to macro around new like that

 like this = impossible:
 *(let [a java.lang.RuntimeException]
  (macro-that-eventually-calls-new a))*

 maybe someone could suggest another way? clojure.reflect ?



 On Thu, Feb 14, 2013 at 10:40 PM, AtKaaZ atk...@gmail.com wrote:

 thanks for the reply,

 = *(defmacro mew [cls  args]
  `(new ~cls ~@args))*
 #'runtime.q/mew
 =* (let [a java.lang.RuntimeException]
  (mew a)
  )*

 CompilerException java.lang.**IllegalArgumentException: Unable to
 resolve classname: a, compiling:(NO_SOURCE_PATH:2:3)

 that would be the equivalent macro of what *new* is doing
 it's like
 *(new a)*
 CompilerException java.lang.**IllegalArgumentException: Unable to
 resolve classname: a, compiling:(NO_SOURCE_PATH:2:3)


 This is the goal:

 The goal is to can write this form:
 =  *(let [a java.lang.RuntimeException]
  (new a))*

 but I think it's impossible, at least by using new it is


 On Thu, Feb 14, 2013 at 10:34 PM, Andy Fingerhut andy.fi...@gmail.com
  wrote:


 On Feb 14, 2013, at 1:27 PM, AtKaaZ wrote:

 The goal is to can write this form:
 = *(let [a java.lang.RuntimeException]
  (new a)
  )*
 CompilerException java.lang.**IllegalArgumentException: Unable to
 resolve classname: a, compiling:(NO_SOURCE_PATH:2:3)

 attempt with macro:
 =* (defmacro mew [cls  restt]
  `(new ~(eval cls) ~@restt)
  )*
 #'runtime.q/mew


 This is probably your closest attempt.  Try this variation on the
 above:

 (defmacro mew [cls  args]
   `(new ~cls ~@args))

 user= (macroexpand-1 '(mew java.lang.RuntimeException))
 (new java.lang.RuntimeException)

 Andy

  --
 --
 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=enhttp://groups.google.com/group/clojure?hl=en
 ---
 You received this message because you are subscribed to the Google
 Groups Clojure group.
 To unsubscribe from this group and stop receiving emails from it,
 send an email to clojure+u...@**googlegroups.com.

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






 --
 Please correct me if I'm wrong or incomplete,
 even if you think I'll subconsciously hate it.




 --
 Please correct me if I'm wrong or incomplete,
 even if you think I'll subconsciously hate it.

  --
 --
 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=enhttp://groups.google.com/group/clojure?hl=en
 ---
 You received this message because you are subscribed to the Google
 Groups Clojure group.
 To unsubscribe from this group and stop receiving emails from it, send
 an email to clojure+u...@**googlegroups.com.

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




  --
 --
 You received