Re: Better string constants
Bruce Mitchener <[email protected]>
| Newsgroups | gmane.comp.lang.dylan.gwydion.devel |
|---|---|
| Message-ID | <CA+esKjNf=hkANhhf_Ei1MYf1ix2iKYJc3-4eo5oKjZVUEWN07w@mail.gmail.com> |
define constant coil-parser = parse-coil;
let c = #coil:[
A: {
a: 'a'
b: 'b'
c: 'c'
}
];
Suspect that works right now in OpenDylan 2012.1.
- Bruce
On Thu, Feb 28, 2013 at 9:55 AM, Carl Gay <[email protected]> wrote:
> I really want better string constant syntax in Dylan. Doing this sort of
> thing...
>
> parse-coil("A: {\n"
> " a: 'a'\n"
> " b: 'b'\n"
> " c: 'c'\n"
> "}\n"
> ...
> or
> "\"5\""
>
> is really tedious and error prone. (Both of the above are from a test
> suite.)
>
> We need two things:
> (1) raw string literals
> (2) multi-line strings
>
> Briefly, my suggestions are:
> * Use """ for multiline backslash-interpreted strings.
> * Use ` (backquote) for one-line raw strings.
> * Use ``` for multi-line raw strings.
>
> `"5"` == "\"5\""
> `\d+\.` == "\\d+\\."
> ```A: {
> a: 'a'
> b: 'b'
> c: 'c'
> }``` == the string near the top of this message.
>
> While I think it may be possible to use `...` for multi-line raw strings
> (as Go does) it bothers me that there's no way to embed a backquote, and
> also I like having the symmetry of "..." / """...""" and `...` / ```...```.
>
> Another possibility I like is #r"..." and #r"""...""" for raw strings.
>
> Thoughts/opinions?
>
>
> _______________________________________________
> hackers mailing list
> [email protected]
> https://lists.opendylan.org/mailman/listinfo/hackers
>
>
_______________________________________________
hackers mailing list
[email protected]
https://lists.opendylan.org/mailman/listinfo/hackers