Hi Ben,

I’m pretty sure we are all on the same page that rendering a string with a 
single character of 2 is “2”.

Regarding not needing a delimiter: if everybody everywhere signed up to this 
then yes, I agree - no delimiter is necessary. Until that becomes true then I 
still think a delimiter is useful, in which case “2” isn’t entirely unambiguous 
given that some people would use quotes as a delimiter. My principle (far too 
big a word to describe this) is ‘be idiomatic’ > ‘use prior art’ > ‘be 
unambiguous’.

Your examples also disambiguate through the use of contrasting examples, which 
unfortunately isn’t always possible, or at least taken advantage of.

So, I still claim that whilst there is only one way of rendering values an 
idiomatic delimiter when rendering that value has value, and if that delimiter 
is nothing at all, I’m fine with that as well :-). As I said before, I care 
less about the delimiter than the consistency of using it :-).

> On 13 Nov 2015, at 17:47, Ben Wolfson <wolf...@gmail.com> wrote:
> 
> On Fri, Nov 13, 2015 at 5:47 AM, Colin Yates <colin.ya...@gmail.com 
> <mailto:colin.ya...@gmail.com>> wrote:
> Really, I don’t mind - I would just like consistency :-)
> 
> One argument for the right delimiter of some sort is that it is unambiguous 
> and therefore nobody can misinterpret it. If you were unfamiliar with a 
> validation library and it reported <start>[:a :b :c must be “2”]</start> you 
> _could_ interpret that as either the literal 2 or a string containing 2.  To 
> interpret it correctly you must know more than just the literal text, 
> therefore it isn’t a great choice.
> 
> The choice of delimiter seems independent of how to render the value in 
> question. To my mind there's exactly one correct, and obviously correct, way 
> to render an EDN value which is a string containing the single character \2, 
> and it's the second one:
> 
>   "2"
> 
> If you want to refer to the value by wrapping it in quotation marks of some 
> kind, thereby delimiting it from some surrounding text, you'll need a 
> delimiter of some sort. But you might not want to do that at all; you might 
> want to set off the value you're rendering by indenting it:
> 
>    expected value: "2"
>    received value: 2
> 
> pretty clear to me. The importance of consistency is that if you're going to 
> quote an EDN value to refer to it in one part of the message, then you should 
> do so with all values in all parts. This is clear:
> 
>    expected value ""2"", received value "2"
> 
> this is not:
>   
>    expected value "2" [unquoted string], received value "2" [quoted number]
> 
> Using the same symbol for quotation of values in the metalanguage as is used 
> for quotation of strings in the object language is a little inelegant, I 
> guess, but as long as it's consistent it seems pretty manageable.
>  
>  
> I like _ because <start>[:a :b :c must be _”2”_]</start> is less open to 
> misinterpretation because the _ symbol is not part of the Clojure grammar 
> (unlike brackets and quotes). It is also idiomatic to use as a symbol to mean 
> “I don’t care about the value of this” which has some symmetry (albeit at a 
> stretch) in the use I am proposing here. 
> 
>> On 13 Nov 2015, at 13:19, Atamert Ölçgen <mu...@muhuk.com 
>> <mailto:mu...@muhuk.com>> wrote:
>> 
>> Hi Colin,
>> 
>> Why not just "2"?
>> 
>> On Fri, Nov 13, 2015 at 1:55 PM, Colin Yates <colin.ya...@gmail.com 
>> <mailto:colin.ya...@gmail.com>> wrote:
>> Hi all,
>> 
>> Can we, the community agree a consistent way of rendering Clojure EDN when 
>> we report it in info or error. For example, given the EDN "2" (i.e. a string 
>> containing a single character 2) I have seen various libraries render it as:
>> 
>>  - 2
>>  - "2"
>>  - ["2"]
>>  - [2]
>>  - (2)
>>  - '"2"'
>> 
>> I would like to propose that we standardise around "_" as the boundary 
>> character as that isn't likely to be used in (except for some markup I guess 
>> but that is pretty unlikely), so a test framework might render as such:
>> 
>>  - expected _2_ but was _"2"_
>> 
>> Please? :-)
>> 
>> -- 
>> You received this message because you are subscribed to the Google
>> Groups "Clojure" group.
>> To post to this group, send email to clojure@googlegroups.com 
>> <mailto:clojure@googlegroups.com>
>> Note that posts from new members are moderated - please be patient with your 
>> first post.
>> To unsubscribe from this group, send email to
>> clojure+unsubscr...@googlegroups.com 
>> <mailto:clojure%2bunsubscr...@googlegroups.com>
>> For more options, visit this group at
>> http://groups.google.com/group/clojure?hl=en 
>> <http://groups.google.com/group/clojure?hl=en>
>> --- 
>> You received this message because you are subscribed to the Google Groups 
>> "Clojure" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to clojure+unsubscr...@googlegroups.com 
>> <mailto:clojure+unsubscr...@googlegroups.com>.
>> For more options, visit https://groups.google.com/d/optout 
>> <https://groups.google.com/d/optout>.
>> 
>> 
>> 
>> -- 
>> Kind Regards,
>> Atamert Ölçgen
>> 
>> ◻◼◻
>> ◻◻◼
>> ◼◼◼
>> 
>> www.muhuk.com <http://www.muhuk.com/>
>> 
>> -- 
>> You received this message because you are subscribed to the Google
>> Groups "Clojure" group.
>> To post to this group, send email to clojure@googlegroups.com 
>> <mailto:clojure@googlegroups.com>
>> Note that posts from new members are moderated - please be patient with your 
>> first post.
>> To unsubscribe from this group, send email to
>> clojure+unsubscr...@googlegroups.com 
>> <mailto:clojure+unsubscr...@googlegroups.com>
>> For more options, visit this group at
>> http://groups.google.com/group/clojure?hl=en 
>> <http://groups.google.com/group/clojure?hl=en>
>> --- 
>> You received this message because you are subscribed to the Google Groups 
>> "Clojure" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to clojure+unsubscr...@googlegroups.com 
>> <mailto:clojure+unsubscr...@googlegroups.com>.
>> For more options, visit https://groups.google.com/d/optout 
>> <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 
> <mailto:clojure@googlegroups.com>
> Note that posts from new members are moderated - please be patient with your 
> first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com 
> <mailto:clojure%2bunsubscr...@googlegroups.com>
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en 
> <http://groups.google.com/group/clojure?hl=en>
> --- 
> You received this message because you are subscribed to the Google Groups 
> "Clojure" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to clojure+unsubscr...@googlegroups.com 
> <mailto:clojure+unsubscr...@googlegroups.com>.
> For more options, visit https://groups.google.com/d/optout 
> <https://groups.google.com/d/optout>.
> 
> 
> 
> -- 
> Ben Wolfson
> "Human kind has used its intelligence to vary the flavour of drinks, which 
> may be sweet, aromatic, fermented or spirit-based. ... Family and social life 
> also offer numerous other occasions to consume drinks for pleasure." 
> [Larousse, "Drink" entry]
> 
> 
> -- 
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com 
> <mailto:clojure@googlegroups.com>
> Note that posts from new members are moderated - please be patient with your 
> first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com 
> <mailto:clojure+unsubscr...@googlegroups.com>
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en 
> <http://groups.google.com/group/clojure?hl=en>
> --- 
> You received this message because you are subscribed to the Google Groups 
> "Clojure" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to clojure+unsubscr...@googlegroups.com 
> <mailto:clojure+unsubscr...@googlegroups.com>.
> For more options, visit https://groups.google.com/d/optout 
> <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.

Reply via email to