Only if _everybody_ signs up to it otherwise I think your second example is 
open to misinterpretation given that some libraries would generate that for the 
number 2 and others for a string with the number 2 in it.

> On 14 Nov 2015, at 00:01, Alan Thompson <clooj...@gmail.com> wrote:
> 
> I would that the existing format of pr-str would work, no?. I often structure 
> Exception error strings like:
> 
> foo-service: bad value=2
> foo-service: bad value="2"
> 
> Does that not keep it unambiguous?
> Alan
> 
> On Fri, Nov 13, 2015 at 10:59 AM, Colin Yates <colin.ya...@gmail.com 
> <mailto:colin.ya...@gmail.com>> wrote:
> 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 
>> <mailto: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 
> <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>.
> 
> 
> -- 
> 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 
> <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