Re: ClojureDocs example management?

2017-06-18 Thread Andy Fingerhut
I think part of it is that examples are easy to edit, so if there are small
easily fixed mistakes, often someone will.

Unlike politically contentious issues on Wikipedia, there isn't much to be
gained from putting misleading information in ClojureDocs.

Andy

On Sun, Jun 18, 2017 at 7:53 PM, Alex Miller  wrote:

> I believe Lee Hinman was the original maintainer of ClojureDocs and it's
> mostly Zachary Kim now.
>
> Reop is at: https://github.com/zk/clojuredocs although the data is not
> publicly available other than through the site afaik.
>
> I'm not sure how much editing it receives right now. In general, I think
> most of the examples are reasonably good and/or there are corrections in
> later comments.
>
> Some factors that I think are in our collective favor are:
> - Clojure favors stability and backwards compatibility so in general it's
> pretty rare for examples to break over time
> - Most examples are 1-liners that are easy to put in a REPL and verify
> yourself
> - Clojure fans are all good thoughtful, careful people who never make
> foolish mistakes
>
>
> On Sunday, June 18, 2017 at 9:13:16 PM UTC-5, Mars0i wrote:
>>
>> Who polices ClojureDocs?  If someone adds a silly or simply incorrect
>> example, does someone eventually remove it?  Are there ever spam-like
>> "examples"?  Or are Clojure fans all good, thoughtful, careful people who
>> never make foolish mistakes?
>>
>> I'm curious because I see no sign that anyone polices ClojureDocs, and it
>> nevertheless seems like a uniformly useful resource.  The only flaws I've
>> experienced came when I thought something was missing--and then it was easy
>> enough to add an example or crossreference link myself.
>>
>> I'm asking because of a conversation in another language-centered
>> community where a worry was expressed that a community-contributed examples
>> website would end up full of junk--bad examples, etc.  Supposedly some
>> sites end up that way.  What's our secret?
>>
> --
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with
> your first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en
> ---
> You received this message because you are subscribed to the Google Groups
> "Clojure" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to clojure+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

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


Re: ClojureDocs example management?

2017-06-18 Thread Alex Miller
I believe Lee Hinman was the original maintainer of ClojureDocs and it's 
mostly Zachary Kim now.

Reop is at: https://github.com/zk/clojuredocs although the data is not 
publicly available other than through the site afaik.

I'm not sure how much editing it receives right now. In general, I think 
most of the examples are reasonably good and/or there are corrections in 
later comments. 

Some factors that I think are in our collective favor are:
- Clojure favors stability and backwards compatibility so in general it's 
pretty rare for examples to break over time
- Most examples are 1-liners that are easy to put in a REPL and verify 
yourself
- Clojure fans are all good thoughtful, careful people who never make 
foolish mistakes


On Sunday, June 18, 2017 at 9:13:16 PM UTC-5, Mars0i wrote:
>
> Who polices ClojureDocs?  If someone adds a silly or simply incorrect 
> example, does someone eventually remove it?  Are there ever spam-like 
> "examples"?  Or are Clojure fans all good, thoughtful, careful people who 
> never make foolish mistakes?
>
> I'm curious because I see no sign that anyone polices ClojureDocs, and it 
> nevertheless seems like a uniformly useful resource.  The only flaws I've 
> experienced came when I thought something was missing--and then it was easy 
> enough to add an example or crossreference link myself.
>
> I'm asking because of a conversation in another language-centered 
> community where a worry was expressed that a community-contributed examples 
> website would end up full of junk--bad examples, etc.  Supposedly some 
> sites end up that way.  What's our secret?
>

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


ClojureDocs example management?

2017-06-18 Thread Mars0i
Who polices ClojureDocs?  If someone adds a silly or simply incorrect 
example, does someone eventually remove it?  Are there ever spam-like 
"examples"?  Or are Clojure fans all good, thoughtful, careful people who 
never make foolish mistakes?

I'm curious because I see no sign that anyone polices ClojureDocs, and it 
nevertheless seems like a uniformly useful resource.  The only flaws I've 
experienced came when I thought something was missing--and then it was easy 
enough to add an example or crossreference link myself.

I'm asking because of a conversation in another language-centered community 
where a worry was expressed that a community-contributed examples website 
would end up full of junk--bad examples, etc.  Supposedly some sites end up 
that way.  What's our secret?

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


Re: The soul of case

2017-06-18 Thread David Nolen
I agree that this behavior diverges from Clojure's and that we probably
should have thought it through a bit more 2 years ago. But at this point
it's probably water under the bridge. Anybody that's actually relying on
this behavior is likely inlining named numeric constants to make jump
tables. The only semantic fuzzy area is if you want to match a symbol and
you have defined a constant with the exact same symbol or referred such a
constant in your namespace. But I suspect this requirement is esoteric
enough that nobody has reported such a problem in actual code in the last 2
years.

I believe I accidentally let it slip through since I don't think I'd ever
used `case` to match symbols myself and at the time I had not internalized
that symbols need not be quoted in this case (yes I know it says so in the
`case` docstring).

It's a strange historical quirk, but I also don't think the situation is
interesting or common enough to be very worked up about :)

David

On Sun, Jun 18, 2017 at 1:26 PM, Herwig Hochleitner 
wrote:

> I was pretty horrified, when this crossed my timeline. Thanks, Phil, for
> starting this thread, because I'd already forgotten about it.
>
> First thing that seems strange, is, that the blog post is from 2015.
> Nevertheless, I just tried it on a nashorn repl:
>
> cljs.user> *clojurescript-version*
> "1.9.562"
> cljs.user> (case 2
>  x :X
>  :no-match)
> :no-match
> cljs.user> (case 'x
>  x :X
>  :no-match)
> :X
> cljs.user> (def ^:const x 2)
> #'cljs.user/x
> cljs.user> (case 2
>  x :X
>  :no-match)
> :X
> cljs.user> (case 'x
>  x :X
>  :no-match)
> :no-match
>
> 2017-06-18 16:37 GMT+02:00 Alex Miller :
>
>> ... that seems wrong.
>>
>
> Yes, yes it does.
>
> --
> 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] Miraj: functional, idiomatic Clojure web programming, including web components

2017-06-18 Thread Gregg Reynolds
Hi folks,

The goal of the Miraj project is to  support web programming, including
definition and use of web components (specifically Polymer 1.9.x
 in
this version), in seamless and idiomatic Clojure.  It seems to be somewhere
in the vicinity of Alpha, so I'm looking for feedback and help.

The homepage at https://miraj-project.github.io/ contains high-level docs
and brief examples (and is implemented in Miraj).  I've also got a bunch of
graded and commented demos at
https://github.com/miraj-project/demos/tree/master/hello-world .  I would
be grateful to anybody who gives them a whirl and provides feedback.

Very briefly, it contains a functional HTML library, supports bits of sugar
(e.g. :#foo for id attributes, etc.), and provides macros for defining
pages, components and component libraries, such that the shape of such code
is similar to that of ordinary deftype or defrecord.  It tries to hide and
automate as much low-level detail as possible (e.g. construction of the
 element).

The code it generates could be used in production, but the libraries
themselves should be considered alpha, since they depend on Clojure 1.9.0
alpha, and currently only Polymer version 1 is supported.  There are a few
loose ends in the Polymer support that will only be tied off in version 2.

For help:  I've taken the liberty of creating a #miraj channel on
Clojurians slack; I also monitor this list, #clojure, #clojurescript etc.

Thanks,

Gregg

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


Re: The soul of case

2017-06-18 Thread Herwig Hochleitner
I was pretty horrified, when this crossed my timeline. Thanks, Phil, for
starting this thread, because I'd already forgotten about it.

First thing that seems strange, is, that the blog post is from 2015.
Nevertheless, I just tried it on a nashorn repl:

cljs.user> *clojurescript-version*
"1.9.562"
cljs.user> (case 2
 x :X
 :no-match)
:no-match
cljs.user> (case 'x
 x :X
 :no-match)
:X
cljs.user> (def ^:const x 2)
#'cljs.user/x
cljs.user> (case 2
 x :X
 :no-match)
:X
cljs.user> (case 'x
 x :X
 :no-match)
:no-match

2017-06-18 16:37 GMT+02:00 Alex Miller :

> ... that seems wrong.
>

Yes, yes it does.

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


The soul of case

2017-06-18 Thread Alex Miller
At a glance I'd say no and that seems wrong.

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


The soul of case

2017-06-18 Thread Matching Socks
In Clojure's case, a symbol is a symbol. For example, this snippet of 
Clojure says *:no-match*.

(ns foo.bar)

(def ^:const n 3)
(def ^:const m 4)

(let [x 4]
  (case x
n 1
m 2
7 3
"hi" 4
:no-match))


The snippet came from 
http://blog.fikesfarm.com/posts/2015-06-15-clojurescript-case-constants.html, 
which uses it to illustrate a rip-snorting new feature of ClojureScript's 
version of the case form.  According to that page, --

in ClojureScript, the same case henceforth yields *2*!

Is the same change coming to Clojure itself?

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