Re: Don't understand inline vs extend-type implementation of defprotocol across namespaces

2014-08-01 Thread Tassilo Horn
Flea Wong globalf...@gmail.com writes:

Hi!

I'll take the third question first:

 3.  Why the different function call subtotal (*without* Dot, see
 Apple) vs .subtotal (*with* Dot, see Orange) for extend-type vs
 inline implementation of Fruit?

You should always use (subtotal fruit).  That with an inline
implementation which is backed by some generated interface there is a
.subtotal method is a pure implementation detail you shouldn't rely on.
I.e., (.subtotal fruit) is no function call but a Java interop method
call.

 1.  Why *doesn't* extend-type (see Banana) work when implementing
 protocol Fruit in a different namespace

It does work, but since Banana doesn't extend Fruit inline, the
corresponding Fruit interface has no .subtotal method, so you cannot
call it using (.subtotal banana) but (subtotal banana) will work.

 2.  Why *does* inline implementation (see Apple) work when
 implementing protocol Fruit in a different namespace

Calling (.subtotal apple) works, because it's implemented inline and so
the corresponding interface has that method and you can call it using
Java interop which (.subtotal apple) is.

Bye,
Tassilo

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


Re: clojurescript introduction

2014-08-01 Thread Paweł Rozynek
thank u all for responses, very helpful
regards
PR

-- 
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: Namespace browser for Emacs users

2014-08-01 Thread Bozhidar Batsov
Nicely done! As you might know I'm cider's maintainer and I actually had a 
namespace browser on the roadmap. :-) I'd like to invite you to transfer 
the project to the official clojure-emacs github organisation (to increase 
the package's visibility and to make easier for the cider team to help you 
with the maintenance). 

I hope to eventually include cider-browse-ns in the standard cider package.

On Monday, July 28, 2014 5:48:20 AM UTC+3, John Andrews wrote:

 Emacs users: I have put together a namespace browser which builds upon the 
 existing functionality of Cider. It is in early stages of development but I 
 find it quite useful.

 Check it out! https://github.com/jxa/cider-browse-ns
  

-- 
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 few String functions we could implement in Clojure?

2014-08-01 Thread Bozhidar Batsov
I recently raised a similar point regarding `starts-with?` and `ends-with?` 
(link - http://dev.clojure.org/jira/browse/CLJ-1449) and it seems that 
Clojure's team acknowledges that this is valid reasoning.

I think you should open a ticket as well as the case you present is pretty 
much the same. With ClojureScript and cljx it makes much more sense now to 
create
portable interfaces that it used to before (in the era of Java-only 
Clojure).

On Saturday, July 19, 2014 6:56:44 PM UTC+3, Pierre Masci wrote:

 Thank you for your insight Andy :-)

 Interesting question Bruce.

 -- Pierre Masci
  

 On 19 July 2014 16:49, Andy Fingerhut andy.fi...@gmail.com javascript: 
 wrote:

 I would have to defer that question to someone who makes decisions 
 regarding what goes into Clojure/ClojureScript, and what does not.

 Of course, anyone else is free to create libraries that try to make 
 portability between those two platforms easier.  Perhaps someone has 
 already taken a go at creating such a thing?  I haven't used ClojureScript 
 myself yet, so haven't looked for anything in that area.

 Andy


 On Sat, Jul 19, 2014 at 8:23 AM, Bruce Durling b...@otfrom.com 
 javascript: wrote:

 Andy,

 How much of this reasoning do you think changes when we starting
 thinking about being hosted on multiple platforms (I'm thinking
 specifically clojure/clojurescript and cljx)?

 cheers,
 Bruce

 On Sat, Jul 19, 2014 at 4:17 PM, Andy Fingerhut
 andy.fi...@gmail.com javascript: wrote:
  Pierre:
 
  I maintain the cheatsheet, and I put .indexOf and .lastIndexOf on there
  since they are probably the most common thing I saw asked about that 
 is in
  the Java API but not the Clojure API, for strings.  There are also 
 links to
  whole Java classes and their entire API, e.g. for file I/O, for which 
 there
  is no Clojure equivalent, since file I/O is a common need.  Clojure is 
 meant
  to be a hosted language, not hiding its host platform, but making it 
 easily
  callable.
 
  If there are entire Java classes that meet very common needs that 
 aren't
  mentioned on the cheatsheet, I would consider adding links to their
  documentation pages.  I don't want to fill up the cheatsheet with many
  individual Java methods, though.
 
  As for why there are not Clojure equivalents of particular Java API 
 methods,
  I think the reasoning might be similar (it has likely been discussed
  publicly, but I don't have a link handy) -- don't create a large 
 number of
  Clojure functions that do nothing more than what the equivalent Java 
 APIs
  do.
 
  Andy
 
 
  On Sat, Jul 19, 2014 at 3:58 AM, Pierre Masci mas...@gmail.com 
 javascript: wrote:
 
  Hi all, just nit picking about Clojure's String API.
 
  I've been comparing it with Java's, and I noticed that (not 
 surprisingly)
  they are very similar.
  There are just 2-3 functions that exist in Java but don't have an
  equivalent in Clojure. I was wondering if they could be worth adding 
 to
  clojure.string :
 
  (.indexOf s c)   and   (.lastIndexOf c)
 
  (.startsWith s danc)   and   (.endsWith s ing)
 
  (.charAt s 5)
  same as (get s 5) but expresses a clearer intent. It's less 
 general
  than (get) though as it only applies to Strings, so that might be
  unnecessary sugar.
 
 
 
 
  .indexOf and .lastIndexOf are indicated in the Clojure Cheatsheet, 
 maybe
  .startsWith and .endsWith also deserve to be mentioned there?
 
  I've been wondering why some functions have been ported, like 
 (lower-case)
  for (.toLowerCase), but not the ones mentioned above.
 
  I told you it was nit picking (^c^) Clojure's API is awesome as it is.
 
  --
  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.
 
 
  --
  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 
 

Re: Don't understand inline vs extend-type implementation of defprotocol across namespaces

2014-08-01 Thread Flea Wong


On Friday, August 1, 2014 5:32:15 PM UTC+8, Tassilo Horn wrote:

 Flea Wong globa...@gmail.com javascript: writes: 

 Hi! 

 I'll take the third question first: 

  3.  Why the different function call subtotal (*without* Dot, see 
  Apple) vs .subtotal (*with* Dot, see Orange) for extend-type vs 
  inline implementation of Fruit? 

 You should always use (subtotal fruit).  That with an inline 
 implementation which is backed by some generated interface there is a 
 .subtotal method is a pure implementation detail you shouldn't rely on. 
 I.e., (.subtotal fruit) is no function call but a Java interop method 
 call. 


Ok. Guess it make sense.  But it seems rather inconsistent to me.
 

  1.  Why *doesn't* extend-type (see Banana) work when implementing 
  protocol Fruit in a different namespace  


 It does work, but since Banana doesn't extend Fruit inline, the 
 corresponding Fruit interface has no .subtotal method, so you cannot 
 call it using (.subtotal banana) but (subtotal banana) will work. 

 I've tried  (subtotal (Banana 2)) - as you've suggested (without '.') i 
get compile error: Unable to resolve symbol: subtotal in this context.  So 
in it doesn't work.   I don't understand how you got it to work.  AFAIK, 
extend-type across ns does not work - with or without the '.'.  
 

  2.  Why *does* inline implementation (see Apple) work when 
  implementing protocol Fruit in a different namespace 

 Calling (.subtotal apple) works, because it's implemented inline and so 
 the corresponding interface has that method and you can call it using 
 Java interop which (.subtotal apple) is.


Ok. 

  


 Bye, 
 Tassilo 


-- 
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 few String functions we could implement in Clojure?

2014-08-01 Thread mascip
I have voted your issue up, and added a comment. Thanks for the link :-)

-- Pierre Masci


On 1 August 2014 11:16, Bozhidar Batsov bozhidar.bat...@gmail.com wrote:

 I recently raised a similar point regarding `starts-with?` and
 `ends-with?` (link - http://dev.clojure.org/jira/browse/CLJ-1449) and it
 seems that Clojure's team acknowledges that this is valid reasoning.

 I think you should open a ticket as well as the case you present is pretty
 much the same. With ClojureScript and cljx it makes much more sense now to
 create
 portable interfaces that it used to before (in the era of Java-only
 Clojure).


 On Saturday, July 19, 2014 6:56:44 PM UTC+3, Pierre Masci wrote:

 Thank you for your insight Andy :-)

 Interesting question Bruce.

 -- Pierre Masci


 On 19 July 2014 16:49, Andy Fingerhut andy.fi...@gmail.com wrote:

  I would have to defer that question to someone who makes decisions
 regarding what goes into Clojure/ClojureScript, and what does not.

 Of course, anyone else is free to create libraries that try to make
 portability between those two platforms easier.  Perhaps someone has
 already taken a go at creating such a thing?  I haven't used ClojureScript
 myself yet, so haven't looked for anything in that area.

 Andy


 On Sat, Jul 19, 2014 at 8:23 AM, Bruce Durling b...@otfrom.com wrote:

 Andy,

 How much of this reasoning do you think changes when we starting
 thinking about being hosted on multiple platforms (I'm thinking
 specifically clojure/clojurescript and cljx)?

 cheers,
 Bruce

 On Sat, Jul 19, 2014 at 4:17 PM, Andy Fingerhut
 andy.fi...@gmail.com wrote:
  Pierre:
 
  I maintain the cheatsheet, and I put .indexOf and .lastIndexOf on
 there
  since they are probably the most common thing I saw asked about that
 is in
  the Java API but not the Clojure API, for strings.  There are also
 links to
  whole Java classes and their entire API, e.g. for file I/O, for which
 there
  is no Clojure equivalent, since file I/O is a common need.  Clojure
 is meant
  to be a hosted language, not hiding its host platform, but making it
 easily
  callable.
 
  If there are entire Java classes that meet very common needs that
 aren't
  mentioned on the cheatsheet, I would consider adding links to their
  documentation pages.  I don't want to fill up the cheatsheet with many
  individual Java methods, though.
 
  As for why there are not Clojure equivalents of particular Java API
 methods,
  I think the reasoning might be similar (it has likely been discussed
  publicly, but I don't have a link handy) -- don't create a large
 number of
  Clojure functions that do nothing more than what the equivalent Java
 APIs
  do.
 
  Andy
 
 
  On Sat, Jul 19, 2014 at 3:58 AM, Pierre Masci mas...@gmail.com
 wrote:
 
  Hi all, just nit picking about Clojure's String API.
 
  I've been comparing it with Java's, and I noticed that (not
 surprisingly)
  they are very similar.
  There are just 2-3 functions that exist in Java but don't have an
  equivalent in Clojure. I was wondering if they could be worth adding
 to
  clojure.string :
 
  (.indexOf s c)   and   (.lastIndexOf c)
 
  (.startsWith s danc)   and   (.endsWith s ing)
 
  (.charAt s 5)
  same as (get s 5) but expresses a clearer intent. It's less
 general
  than (get) though as it only applies to Strings, so that might be
  unnecessary sugar.
 
 
 
 
  .indexOf and .lastIndexOf are indicated in the Clojure Cheatsheet,
 maybe
  .startsWith and .endsWith also deserve to be mentioned there?
 
  I've been wondering why some functions have been ported, like
 (lower-case)
  for (.toLowerCase), but not the ones mentioned above.
 
  I told you it was nit picking (^c^) Clojure's API is awesome as it
 is.
 
  --
  You received this message because you are subscribed to the Google
  Groups Clojure group.
  To post to this group, send email to clo...@googlegroups.com

  Note that posts from new members are moderated - please be patient
 with
  your first post.
  To unsubscribe from this group, send email to
  clojure+u...@googlegroups.com

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

  For more options, visit https://groups.google.com/d/optout.
 
 
  --
  You received this message because you are subscribed to the Google
  Groups Clojure group.
  To post to this group, send email to clo...@googlegroups.com

  Note that posts from new members are moderated - please be patient
 with your
  first post.
  To unsubscribe from this group, send email to
  clojure+u...@googlegroups.com

  For more options, visit this group at
  http://groups.google.com/group/clojure?hl=en
  ---
  You received this message because you are subscribed to the Google
 Groups
  Clojure group.
  To unsubscribe from this group and 

Re: A few String functions we could implement in Clojure?

2014-08-01 Thread Paul Butcher
I recently hit exactly this question in a ClojureScript app I’m writing. It 
just so happens that Javascript provides a .indexOf method which is, as near as 
dammit, the same as the one provided by Java. So in this instance, portability 
isn’t an issue.

But having said that, I would still prefer to see this supported natively in 
Clojure, even if it’s just a wrapper around the interop. Using interop to do 
things that are as generic as simple string manipulation just feels messy.

--
paul.butcher-msgCount++

Silverstone, Brands Hatch, Donington Park...
Who says I have a one track mind?

http://www.paulbutcher.com/
LinkedIn: http://www.linkedin.com/in/paulbutcher
Skype: paulrabutcher

Author of Seven Concurrency Models in Seven Weeks: When Threads Unravel
http://pragprog.com/book/pb7con

On 19 July 2014 at 16:49:33, Andy Fingerhut (andy.finger...@gmail.com) wrote:

I would have to defer that question to someone who makes decisions regarding 
what goes into Clojure/ClojureScript, and what does not.

Of course, anyone else is free to create libraries that try to make portability 
between those two platforms easier.  Perhaps someone has already taken a go at 
creating such a thing?  I haven't used ClojureScript myself yet, so haven't 
looked for anything in that area.

Andy


On Sat, Jul 19, 2014 at 8:23 AM, Bruce Durling b...@otfrom.com wrote:
Andy,

How much of this reasoning do you think changes when we starting
thinking about being hosted on multiple platforms (I'm thinking
specifically clojure/clojurescript and cljx)?

cheers,
Bruce

On Sat, Jul 19, 2014 at 4:17 PM, Andy Fingerhut
andy.finger...@gmail.com wrote:
 Pierre:

 I maintain the cheatsheet, and I put .indexOf and .lastIndexOf on there
 since they are probably the most common thing I saw asked about that is in
 the Java API but not the Clojure API, for strings.  There are also links to
 whole Java classes and their entire API, e.g. for file I/O, for which there
 is no Clojure equivalent, since file I/O is a common need.  Clojure is meant
 to be a hosted language, not hiding its host platform, but making it easily
 callable.

 If there are entire Java classes that meet very common needs that aren't
 mentioned on the cheatsheet, I would consider adding links to their
 documentation pages.  I don't want to fill up the cheatsheet with many
 individual Java methods, though.

 As for why there are not Clojure equivalents of particular Java API methods,
 I think the reasoning might be similar (it has likely been discussed
 publicly, but I don't have a link handy) -- don't create a large number of
 Clojure functions that do nothing more than what the equivalent Java APIs
 do.

 Andy


 On Sat, Jul 19, 2014 at 3:58 AM, Pierre Masci mas...@gmail.com wrote:

 Hi all, just nit picking about Clojure's String API.

 I've been comparing it with Java's, and I noticed that (not surprisingly)
 they are very similar.
 There are just 2-3 functions that exist in Java but don't have an
 equivalent in Clojure. I was wondering if they could be worth adding to
 clojure.string :

 (.indexOf s c)   and   (.lastIndexOf c)

 (.startsWith s danc)   and   (.endsWith s ing)

 (.charAt s 5)
     same as (get s 5) but expresses a clearer intent. It's less general
 than (get) though as it only applies to Strings, so that might be
 unnecessary sugar.




 .indexOf and .lastIndexOf are indicated in the Clojure Cheatsheet, maybe
 .startsWith and .endsWith also deserve to be mentioned there?

 I've been wondering why some functions have been ported, like (lower-case)
 for (.toLowerCase), but not the ones mentioned above.

 I told you it was nit picking (^c^) Clojure's API is awesome as it is.

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


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

Re: ANN: Namespace browser for Emacs users

2014-08-01 Thread Phillip Lord

It's very nice, but it breaks for me because I have used
(set! *print-length* 200) in my repl-options. 

When this bit of code is run

(let* ((form (sort (map name (keys (ns-publics (quote %s))
   (vars (cider-eval-and-get-value (format form namespace

The last value of vars ends up as \.\.\. rather than a string.

Is this more of an issue with cider?

Phil


Bozhidar Batsov bozhidar.bat...@gmail.com writes:

 Nicely done! As you might know I'm cider's maintainer and I actually had a 
 namespace browser on the roadmap. :-) I'd like to invite you to transfer 
 the project to the official clojure-emacs github organisation (to increase 
 the package's visibility and to make easier for the cider team to help you 
 with the maintenance). 

 I hope to eventually include cider-browse-ns in the standard cider package.

 On Monday, July 28, 2014 5:48:20 AM UTC+3, John Andrews wrote:

 Emacs users: I have put together a namespace browser which builds upon the 
 existing functionality of Cider. It is in early stages of development but I 
 find it quite useful.

 Check it out! https://github.com/jxa/cider-browse-ns
  

-- 
Phillip Lord,   Phone: +44 (0) 191 222 7827
Lecturer in Bioinformatics, Email: phillip.l...@newcastle.ac.uk
School of Computing Science,
http://homepages.cs.ncl.ac.uk/phillip.lord
Room 914 Claremont Tower,   skype: russet_apples
Newcastle University,   twitter: phillord
NE1 7RU 

-- 
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: CLJS Function clobbering js function of same name

2014-08-01 Thread David Nolen
js/foo does not resolve to the global namespace.

David

On Thu, Jul 31, 2014 at 9:42 AM, Sam Ritchie sritchi...@gmail.com wrote:
 Hey guys,

 I ran into this last night when trying to port some ancient JS in our
 project over to cljs. I was defining an om component called
 users-typeahead, and in the (did-mount ...) implementation calling a bare
 javascript function called js/users_typeahead. At the repl, the latter
 worked great; INSIDE the did-mount implementation, js/users_typeahead
 resolved to a reference to the enclosing function itself.

 My expectation was that, with Clojurescript's namespacing, js/func_name
 would always resolve to the top-level global namespace. Instead,

 Here's a minimal reproduction:

 (.log js/console Hi!)
 ;; logs Hi!

 (defn console [s] (.log js/console s))

 (console Hi!)
 ;; throws Compilation error: TypeError: undefined is not a function

 What do you think? Expected behavior, or just an edge case to avoid?

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

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

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


clojure + clojure-contrib offline documentation

2014-08-01 Thread Andrea Richiardi
I have noticed that gh-pages are no more in-sync with the latest 
developments of the code, especially after clojure-contrib has been split 
in separate repositories. I would like to ask if there is something similar 
to:

curl-L https://github.com/clojure/clojure/archive/gh-pages.tar.gz | tar 
xvzf -

but for clojure.github.io, which contains everything.

Thank you very much!

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


ANN: Joplin -- flexible database migration and seeding

2014-08-01 Thread martintrojer


Available on Github; https://github.com/juxt/joplin

Joplin tries to solve the problems that arise when dealing with complicated 
systems consisting of multiple datastores. It lets you define and reason 
about environments (for instance dev, staging, UAT, prod).

Joplin lets you declare your databases, migrators, seed functions up front 
and combine them into different environments. It can be used via 
a leiningen plugin or be called programatically.

Joplin comes with plugins for SQL/JDBC databases, Datomic, ElasticSearch, 
Cassandra and Zookeeper. It is built with extensibility in mind, adding 
more stores is done by a handful of multi-methods.

Joplin is built on top of ragtime https://github.com/weavejester/ragtime.

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


honeysql tagged literal problem

2014-08-01 Thread Brian Craft
Trying to do a #sql/call with honeysql, like

[#sql/call [:unpackValue probe-field :row]]

where probe-field is a local variable, it builds a SqlCall object with 
symbol probe-field, instead of using the value in the probe-field variable.

I guess, then, that tagged literal handlers are passed symbols before 
they've been resolved? Is there a workaround for this?

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


Transposing a map and back again

2014-08-01 Thread Bruno Kim Medeiros Cesar
 

Is there a standard/library function to transpose a map from key-value to 
value-keys?

I've met this task many times before, and I'm sure others have too. Here is the 
code I'm using, mildly highlighted by Google 
Groups. I used to copy-paste from Pygments.org 
http://pygments.org/demo/506245/, but it seems to no longer work.

(defn transpose
  Transposes a map of the form k_i - v_i into v_j - #{k_j1 k_j2 ...}
  [m]
  (reduce (fn [acc [k v]]
(assoc acc v 
  (conj (get acc v #{}) k)))
  {} m))

(transpose {:a 1 :b 1 :c 2 :d 4 :e 2 :f 1}) ;= {4 #{:d}, 2 #{:c :e}, 1 
#{:a :b :f}}

(defn inverse-transpose
  Transposes back a map of the form v_i - #{k_i1 k_12 ...} into k_j - 
v_j
  [m]
  (into {} (mapcat (fn [[v ks]] 
 (map #(vector %1 %2) ks (repeat v))) 
   m)))

(inverse-transpose (transpose {:a 1 :b 1 :c 2 :d 4 :e 2 :f 1})) ;= {:d 4, :c 
2, :e 2, :a 1, :b 1, :f 1}

(let [m {:a 1 :b 1 :c 2 :d 4 :e 2 :f 1}]
  (= m (inverse-transpose (transpose m ;= true
 

-- 
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: Transposing a map and back again

2014-08-01 Thread Andy Fingerhut
clojure.set/map-invert is the closest I can think of in the functions
included with Clojure to your transpose function, but it does not handle
duplicate values the way your transpose does.

Andy


On Fri, Aug 1, 2014 at 11:16 AM, Bruno Kim Medeiros Cesar 
brunokim...@gmail.com wrote:

 Is there a standard/library function to transpose a map from key-value to 
 value-keys?

 I've met this task many times before, and I'm sure others have too. Here is 
 the code I'm using, mildly highlighted by Google
 Groups. I used to copy-paste from Pygments.org 
 http://pygments.org/demo/506245/, but it seems to no longer work.

 (defn transpose
   Transposes a map of the form k_i - v_i into v_j - #{k_j1 k_j2 ...}
   [m]
   (reduce (fn [acc [k v]]
 (assoc acc v
   (conj (get acc v #{}) k)))
   {} m))

 (transpose {:a 1 :b 1 :c 2 :d 4 :e 2 :f 1}) ;= {4 #{:d}, 2 #{:c :e}, 1
 #{:a :b :f}}

 (defn inverse-transpose
   Transposes back a map of the form v_i - #{k_i1 k_12 ...} into k_j -
 v_j
   [m]
   (into {} (mapcat (fn [[v ks]]
  (map #(vector %1 %2) ks (repeat v)))
m)))

 (inverse-transpose (transpose {:a 1 :b 1 :c 2 :d 4 :e 2 :f 1})) ;= {:d 4,
 :c 2, :e 2, :a 1, :b 1, :f 1}

 (let [m {:a 1 :b 1 :c 2 :d 4 :e 2 :f 1}]
   (= m (inverse-transpose (transpose m ;= true

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


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


ANN: Om 0.7.0

2014-08-01 Thread David Nolen
I'm happy to announce Om 0.7.0. The biggest change is depending on
ClojureScript 0.0-2277 and  React 0.11.1. There's a breaking change
around the :ctor option to om.core/root which is now renamed
:descriptor. Check the om.core/root docstring for more details.

As it's been a long while between releases there may very well be
subtle issues lurking about. Any and all feedback welcome!

https://github.com/swannodette/om

David

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


Re: ANN: Om 0.7.0

2014-08-01 Thread David Nolen
Oops forgot to mention the big enhancement - multimethods and
anonymous functions should now Just Work(TM) as component
constructors. There's no longer any need to hack - a unique React
class is automatically constructed for every Om component constructor
function.

David

On Fri, Aug 1, 2014 at 3:36 PM, David Nolen dnolen.li...@gmail.com wrote:
 I'm happy to announce Om 0.7.0. The biggest change is depending on
 ClojureScript 0.0-2277 and  React 0.11.1. There's a breaking change
 around the :ctor option to om.core/root which is now renamed
 :descriptor. Check the om.core/root docstring for more details.

 As it's been a long while between releases there may very well be
 subtle issues lurking about. Any and all feedback welcome!

 https://github.com/swannodette/om

 David

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


Re: ANN: Om 0.7.0

2014-08-01 Thread Rostislav Svoboda
Thanx a lot guys!

 The biggest change is depending on ClojureScript 0.0-2277 and

BTW the Using it section of README.md still says 0.0-2173:

(defproject foo 0.1.0
  ...
  :dependencies [[org.clojure/clojure 1.5.1]
 [org.clojure/clojurescript 0.0-2173]
 [om 0.7.0]]
  ...)

-- 
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: Om 0.7.0

2014-08-01 Thread David Nolen
Thanks for the correction, fixed!

On Fri, Aug 1, 2014 at 4:26 PM, Rostislav Svoboda
rostislav.svob...@gmail.com wrote:
 Thanx a lot guys!

 The biggest change is depending on ClojureScript 0.0-2277 and

 BTW the Using it section of README.md still says 0.0-2173:

 (defproject foo 0.1.0
   ...
   :dependencies [[org.clojure/clojure 1.5.1]
  [org.clojure/clojurescript 0.0-2173]
  [om 0.7.0]]
   ...)

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

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


[ANN] Grimoire 0.3.0

2014-08-01 Thread Reid McKenzie
For those of you who didn't notice the ten minutes of 500 pages as I
upgraded, I'm delighted to announce the Grimoire's 3rd release!

This version would not have been possible without Robert Stuttaford, who
was a huge help in porting Grimoire off of the original Jekyll back end
to a real Ring server. Thanks also to Andy Fingerhut, thanks to whom
Grimoire now incorporates the Thalia extended docstrings.

So what's new?
 - HTML and plain text API! see http://grimoire.arrdem.com/api for details.
 - Extended  unofficial docstrings from Andy.
 - Pervasive edit links. If it's templated, you can submit edits to it.
 - Redesigned examples system which allows for even easier contribution.
 - Changes to symbol munging which may have broken bookmarks.

This release breaks the cider-grimoire command for symbols with
punctuation and probably breaks some favorites as I took the opportunity
to discard some symbol munging which was really a Jekyll workaround. In
retrospect I shouldn't have mucked with that for backwards
compatibility, but live and learn. Andyf's cheat sheet should be updated
later today and the updated munge function should appear in next week's
Cider 0.7.0.

Comments and complaints are welcome here and on the bug tracker over at
https://github.com/arrdem/grimoire/issues.

Cheers!
Reid

-- 
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 + clojure-contrib offline documentation

2014-08-01 Thread Stuart Sierra
I think clojure.github.io is just the gh-pages of all the individual 
projects under github.com/clojure, so you should be able to grab the 
gh-pages of each one.

For example, https://github.com/clojure/tools.namespace/tree/gh-pages

The root index at clojure.github.io is just another repo at 
https://github.com/clojure/clojure.github.com

-S


On Friday, August 1, 2014 12:26:51 PM UTC-4, Andrea Richiardi wrote:

 I have noticed that gh-pages are no more in-sync with the latest 
 developments of the code, especially after clojure-contrib has been split 
 in separate repositories. I would like to ask if there is something similar 
 to:

 curl-L https://github.com/clojure/clojure/archive/gh-pages.tar.gz | tar 
 xvzf -

 but for clojure.github.io, which contains everything.

 Thank you very much!


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


Re: [ClojureScript] Re: ANN: Om 0.7.0

2014-08-01 Thread Daniel Kersten
That's awesome, thank you for the amazing work, David!

Are there any plans to merge the ind-components branch into master any time
soonish?


On 1 August 2014 21:29, David Nolen dnolen.li...@gmail.com wrote:

 Thanks for the correction, fixed!

 On Fri, Aug 1, 2014 at 4:26 PM, Rostislav Svoboda
 rostislav.svob...@gmail.com wrote:
  Thanx a lot guys!
 
  The biggest change is depending on ClojureScript 0.0-2277 and
 
  BTW the Using it section of README.md still says 0.0-2173:
 
  (defproject foo 0.1.0
...
:dependencies [[org.clojure/clojure 1.5.1]
   [org.clojure/clojurescript 0.0-2173]
   [om 0.7.0]]
...)
 
  --
  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.

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


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


ANN: ClojureScript 0.0-2280

2014-08-01 Thread David Nolen
ClojureScript, the Clojure compiler that emits JavaScript source code.

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

New release version: 0.0-2280

Leiningen dependency information:

[org.clojure/clojurescript 0.0-2280]

### Changes
* depend on latest org.clojure/google-closure-library

### Fixes
* fix constants table bug where keywords did not include precomputed hash-code

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


Re: Help Getting Sente to Work

2014-08-01 Thread Timothy Washington
Hey Daniel,

Yes, that's true. I've run into that, as I've gotten used to a lot of
gymnastics when setting up these tools, lol. So thanks for the heads up.
Those friendly reminders are needed :)


Tim Washington
Interruptsoftware.com http://interruptsoftware.com


On Thu, Jul 31, 2014 at 4:06 AM, Daniel Kersten dkers...@gmail.com wrote:

 Hi Timothy, I just wanted to note that you can control the port Austin
 uses through environment variables. I do this so I can port forward, for
 example.

 This probably won't help you though, as httpkit and the browser repl can't
 run on the same port.
 On 30 Jul 2014 16:24, Timothy Washington twash...@gmail.com wrote:


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


[ANN] clojure.java.jdbc 0.3.5

2014-08-01 Thread Sean Corfield
Clojure wrapper for JDBC database access.

https://github.com/clojure/java.jdbc

• Release 0.3.5 on 2014-08-01

• Reflection warnings on executeUpdate addressed.
• HSQLDB and SQLite in-memory strings are now accepted JDBC-94.
• Add support for readonly transactions via :read-only? JDBC-93.

(should be up on Maven soon)

Thanks to Brian Craft for highlighting the performance hotspot due to 
reflection in the executeUpdate code!

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

Perfection is the enemy of the good.
-- Gustave Flaubert, French realist novelist (1821-1880)





signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: Don't understand inline vs extend-type implementation of defprotocol across namespaces

2014-08-01 Thread Sean Corfield
On Jul 31, 2014, at 7:19 PM, Flea Wong globalf...@gmail.com wrote:
 (ns crecords.trec
   (:require [crecords.tproc :refer [Fruit]]))

You'll need to :refer subtotal here as well:

(ns crecords.trec
  (:require [crecords.tproc :refer [Fruit]]))

Then this will work:

(defn f1 []
  (println Banana Subtotal: (subtotal (Banana. 2 

Note: Banana. not Banana 

I think it's more idiomatic to use -RecordName rather than RecordName. BTW.

I can't answer your questions directly but here's what I understand is 
happening so maybe this will answer them indirectly:

defprotocol creates both the type and the top-level functions. Those top-level 
functions expect to call methods on their argument (I think) but those methods 
are defined elsewhere (in defrecord, extend-type, etc).

defrecord creates a class that has methods. I think that those methods can be 
resolved as function calls that give the impression you really have a top-level 
function.

extend-type provides implementations of methods that can be invoked on objects 
of the extended type.

(subtotal ..) is a regular function call - which for a record can be mapped to 
a method call automatically it seems - and (.subtotal ..) is a Java interop 
call invoking a method directly on an object.

Looking at what Vars are defined in each of your namespaces gives some insight 
into this:

user= (require 'crecords.tproc)
nil
user= (ns crecords.tproc)
nil
crecords.tproc= (ns-publics *ns*)
{Fruit #'crecords.tproc/Fruit, map-Orange #'crecords.tproc/map-Orange, 
subtotal #'crecords.tproc/subtotal, -main #'crecords.tproc/-main, -Orange 
#'crecords.tproc/-Orange}
crecords.tproc= (require 'crecords.trec)
nil
crecords.tproc= (ns crecords.trec)
nil
crecords.trec= (ns-publics *ns*)
{f2 #'crecords.trec/f2, -Apple #'crecords.trec/-Apple, -Banana 
#'crecords.trec/-Banana, map-Banana #'crecords.trec/map-Banana, -main 
#'crecords.trec/-main, f1 #'crecords.trec/f1, map-Apple 
#'crecords.trec/map-Apple}

Hope that helps?

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

Perfection is the enemy of the good.
-- Gustave Flaubert, French realist novelist (1821-1880)





signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: [ANN] Grimoire 0.3.0

2014-08-01 Thread Sean Corfield
This is very cool.

Given the URL structure, have you given any thought to how contrib libraries 
might be integrated into this in future?

Sean

On Aug 1, 2014, at 2:00 PM, Reid McKenzie rmckenzi...@gmail.com wrote:
 For those of you who didn't notice the ten minutes of 500 pages as I
 upgraded, I'm delighted to announce the Grimoire's 3rd release!
 
 This version would not have been possible without Robert Stuttaford, who
 was a huge help in porting Grimoire off of the original Jekyll back end
 to a real Ring server. Thanks also to Andy Fingerhut, thanks to whom
 Grimoire now incorporates the Thalia extended docstrings.
 
 So what's new?
 - HTML and plain text API! see http://grimoire.arrdem.com/api for details.
 - Extended  unofficial docstrings from Andy.
 - Pervasive edit links. If it's templated, you can submit edits to it.
 - Redesigned examples system which allows for even easier contribution.
 - Changes to symbol munging which may have broken bookmarks.
 
 This release breaks the cider-grimoire command for symbols with
 punctuation and probably breaks some favorites as I took the opportunity
 to discard some symbol munging which was really a Jekyll workaround. In
 retrospect I shouldn't have mucked with that for backwards
 compatibility, but live and learn. Andyf's cheat sheet should be updated
 later today and the updated munge function should appear in next week's
 Cider 0.7.0.
 
 Comments and complaints are welcome here and on the bug tracker over at
 https://github.com/arrdem/grimoire/issues.
 
 Cheers!
 Reid



signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: [ANN] Grimoire 0.3.0

2014-08-01 Thread Reid McKenzie
Hey Sean,

It's something I've thought about and will probably continue to decline
as a feature. cross-clj already does the easy half of that job:
providing HTML documentation and does it at least as well as Grimoire
does. Sure Grimoire could be extended to provide the same content, but I
see the value of Grimoire in its examples and extended documentation of
Core rather than in being a HTML render of the existing documentation.
As providing these things for contrib libraries is a significant
undertaking and there's already plenty to do in cleaning up the existing
Core docs I'm not likely to do it myself.

However I'm open to persuasion and PRs.
Reid

On 08/01/2014 06:47 PM, Sean Corfield wrote:
 This is very cool.

 Given the URL structure, have you given any thought to how contrib libraries 
 might be integrated into this in future?

 Sean

 On Aug 1, 2014, at 2:00 PM, Reid McKenzie rmckenzi...@gmail.com wrote:
 For those of you who didn't notice the ten minutes of 500 pages as I
 upgraded, I'm delighted to announce the Grimoire's 3rd release!

 This version would not have been possible without Robert Stuttaford, who
 was a huge help in porting Grimoire off of the original Jekyll back end
 to a real Ring server. Thanks also to Andy Fingerhut, thanks to whom
 Grimoire now incorporates the Thalia extended docstrings.

 So what's new?
 - HTML and plain text API! see http://grimoire.arrdem.com/api for details.
 - Extended  unofficial docstrings from Andy.
 - Pervasive edit links. If it's templated, you can submit edits to it.
 - Redesigned examples system which allows for even easier contribution.
 - Changes to symbol munging which may have broken bookmarks.

 This release breaks the cider-grimoire command for symbols with
 punctuation and probably breaks some favorites as I took the opportunity
 to discard some symbol munging which was really a Jekyll workaround. In
 retrospect I shouldn't have mucked with that for backwards
 compatibility, but live and learn. Andyf's cheat sheet should be updated
 later today and the updated munge function should appear in next week's
 Cider 0.7.0.

 Comments and complaints are welcome here and on the bug tracker over at
 https://github.com/arrdem/grimoire/issues.

 Cheers!
 Reid

-- 
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] Grimoire 0.3.0

2014-08-01 Thread Sean Corfield
On Aug 1, 2014, at 5:40 PM, Reid McKenzie rmckenzi...@gmail.com wrote:
 It's something I've thought about and will probably continue to decline
 as a feature. cross-clj already does the easy half of that job:
 providing HTML documentation and does it at least as well as Grimoire
 does.

Ah, I hadn't looked at cross-clj before - that is super nice!

 Sure Grimoire could be extended to provide the same content, but I
 see the value of Grimoire in its examples and extended documentation of
 Core rather than in being a HTML render of the existing documentation.

Indeed. I only asked because clojuredocs.org did have a lot of the old contrib 
in there (with some examples etc) and wondered whether Grimoire might be a 
complete replacement... But I think you're right that there's just too much to 
cover with the way contrib is growing and evolving these days - and we have 
clojure-doc.org for more extensive, community-maintained documentation that 
provides guides to using contrib libraries etc. In addition, contrib libraries 
probably don't lend themselves to isolated examples the way the core Clojure 
namespaces do.

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

Perfection is the enemy of the good.
-- Gustave Flaubert, French realist novelist (1821-1880)





signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: [ANN] Grimoire 0.3.0

2014-08-01 Thread Reid McKenzie

On 08/01/2014 09:03 PM, Sean Corfield wrote:
 Ah, I hadn't looked at cross-clj before - that is super nice!

Yeah! I'm still very impressed by their coverage of the Clojure ecosystem.

 I only asked because clojuredocs.org did have a lot of the old contrib
 in there (with some examples etc) and wondered whether Grimoire might
 be a complete replacement... But I think you're right that there's
 just too much to cover with the way contrib is growing and evolving
 these days - and we have clojure-doc.org for more extensive,
 community-maintained documentation that provides guides to using
 contrib libraries etc. In addition, contrib libraries probably don't
 lend themselves to isolated examples the way the core Clojure
 namespaces do.

Definitely. I see Grimoire as an overgrown edition of Andyf's
cheatsheet. Even small example projects let alone long form tutorials
are totally out of scope and a much better fit for clojure-doc's article
format. Search and quick reference utility are going to to be my main
goals going forwards.

Reid

-- 
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] Grimoire 0.3.0

2014-08-01 Thread Bozhidar Batsov
On Saturday, August 2, 2014, Reid McKenzie rmckenzi...@gmail.com wrote:

 For those of you who didn't notice the ten minutes of 500 pages as I
 upgraded, I'm delighted to announce the Grimoire's 3rd release!

 This version would not have been possible without Robert Stuttaford, who
 was a huge help in porting Grimoire off of the original Jekyll back end
 to a real Ring server. Thanks also to Andy Fingerhut, thanks to whom
 Grimoire now incorporates the Thalia extended docstrings.

 So what's new?
  - HTML and plain text API! see http://grimoire.arrdem.com/api for
 details.
  - Extended  unofficial docstrings from Andy.
  - Pervasive edit links. If it's templated, you can submit edits to it.
  - Redesigned examples system which allows for even easier contribution.
  - Changes to symbol munging which may have broken bookmarks.

 This release breaks the cider-grimoire command for symbols with
 punctuation and probably breaks some favorites as I took the opportunity
 to discard some symbol munging which was really a Jekyll workaround. In
 retrospect I shouldn't have mucked with that for backwards
 compatibility, but live and learn. Andyf's cheat sheet should be updated
 later today and the updated munge function should appear in next week's
 Cider 0.7.0.


Just a quick note. I actually updated cider-grimoire for 0.3 a few hours
before you released it, so everybody using the latest snapshot should be
fine.  I hope that we'll finally get to release CIDER 0.7 on Monday. I've
also implemented support for the text API (but haven't commited yet) which
should make it into the release.


 Comments and complaints are welcome here and on the bug tracker over at
 https://github.com/arrdem/grimoire/issues.

 Cheers!
 Reid

 --
 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
 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+unsubscr...@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+unsubscr...@googlegroups.com javascript:;.
 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.