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.