www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - I wondered what characters are allowed for delimiters in a

reply Philip Miess <philip.Miess yahoo.com> writes:
The spec seemed a little loose, so I tried the first 256 to see.

It is everything minus letters, null and control-z, opening brackets 
braces, parenthesis & whitespace

I did not expect that all the non-whitespace control characters in both 
control blocks would be supported or the closing brackets, braces and 
parenthesis.

I found the inclusion of double quotes and single quotes to be slightly 
amusing. But, after all if one set of quotes isn't enough, why not use 
two sets.

The exclusion of ·(183) and º (186) surprised me since they didn't look 
like letters.

To be specific, the following is a list of decimal numbers for characters 
that work on dmd 2.063.2
1-8 
14-25
27-31
33-39
41-59
61-64
92-94
96
124-169
171-182
184-185
187-191
215
247

Everything not listed up to 256 doesn't work.
I didn't have an install of GDC or LDC so I didn't check them.
Mar 05 2015
parent "anonymous" <anonymous example.com> writes:
On Friday, 6 March 2015 at 01:44:30 UTC, Philip Miess wrote:
 The spec seemed a little loose, so I tried the first 256 to see.

 It is everything minus letters, null and control-z, opening 
 brackets
 braces, parenthesis & whitespace
Opening brackets, braces, and parenthesis are allowed; the 'MatchingDelimiter's are the closing variants: q"[foo]" q"{foo}" q"(foo)" [...]
 The exclusion of ·(183) and º (186) surprised me since they 
 didn't look
 like letters.
186 (U+00BA MASCULINE ORDINAL INDICATOR) is in the Unicode category 'Letter, Other' [1], like 170 (U+00AA FEMININE ORDINAL INDICATOR). 183 (U+00B7 MIDDLE DOT) is in 'Punctuation, Other' [2], though.
Mar 06 2015