Changes between Initial Version and Version 7 of Ticket #5255


Ignore:
Timestamp:
Jun 14, 2011 7:02:58 AM (4 years ago)
Author:
simonpj
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #5255 – Description

    initial v7  
    11There has been a discussion[1] on the web-devel list about
    2 the fate of the IsString instance for Name in the xml-types
     2the fate of the `IsString` instance for Name in the xml-types
    33library[2]. A Name is the name of an XML element or attribute.
    44
     
    1212are used in a string literal.
    1313
    14 OverloadedStrings as a more general mechanism is very
     14`OverloadedStrings` as a more general mechanism is very
    1515convenient in many settings. One of them is XML names;
    1616another is attoparsec-text[3] parsers. I must
     
    1818deal with the devil and benefiting from them.
    1919
    20 But when used this way OverloadedStrings
     20But when used this way `OverloadedStrings`
    2121is really just another syntax for quasi-quotation, and that
    2222is what should have been used explicitly instead of these
     
    2626
    2727A. Make string literals syntax in fact a specialized
    28 quasi-quotation when OverloadedStrings is turned on. That way, exceptions are caught at compile time as they should be.
     28quasi-quotation when `OverloadedStrings` is turned on. That way, exceptions are caught at compile time as they should be.
    2929
    30 B. Bless Text, and possibly ByteString, as the only types that
     30B. Bless Text, and possibly `ByteString`, as the only types that
    3131get magical behavior of string literals.
    3232
    33 C. Remove OverloadedStrings altogether.
     33C. Remove `OverloadedStrings` altogether.
    3434
    3535Option A is by far the nicest. But it requires GHC
     
    4141By submitting this bug, I am making it clear that I am opposed
    4242to Option D, leaving things the way they are and wishing
    43 everyone the best of luck. The OverloadedStrings pragma
     43everyone the best of luck. The `OverloadedStrings` pragma
    4444is not really optional anymore now that Text is becoming
    4545the default string type in practice for Haskell. It is not
     
    4747`(T.pack "")` and give up the chance of it being CAFfed.
    4848In fact, the blaze-html[4] library relies on
    49 OverloadedStrings for its performance[5].
     49`OverloadedStrings` for its performance[5].
    5050
    5151I am also opposed, though less so, to providing a