Changes between Version 20 and Version 21 of SplitBase


Ignore:
Timestamp:
Mar 7, 2013 8:21:29 PM (14 months ago)
Author:
nomeata
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • SplitBase

    v20 v21  
    2323==== More appropriate string types in IO ==== 
    2424 
    25 Johan would like to have text Handles use the Text type and binary Handles use the ByteString type. Right now we have this somewhat awkward setup where the I/O APIs are spread out and bundled with pure types. Splitting base would let us fix this and write a better I/O layer. 
     25Johan would like to have text Handles use the Text type and binary Handles use the !ByteString type. Right now we have this somewhat awkward setup where the I/O APIs are spread out and bundled with pure types. Splitting base would let us fix this and write a better I/O layer. 
    2626 
    2727==== Avoid code copies ==== 
    2828 
    29 Johan says: The I/O manager currently has a copy of IntMap inside its implementation because base cannot use containers. Splitting base would let us get rid of this code duplication.  
     29Johan says: The I/O manager currently has a copy of !IntMap inside its implementation because base cannot use containers. Splitting base would let us get rid of this code duplication.  
    3030 
    3131==== Installable base ==== 
     
    5656 * Forces disentanglement of the implementation (i.e. `IOError`-less `error`) 
    5757 * Hence further development may be easier ([http://www.haskell.org/pipermail/glasgow-haskell-users/2013-February/023818.html according to Ian]) 
    58  * Some base-foo package can use other libraries like containers (IntMap issue) 
     58 * Some base-foo package can use other libraries like containers in their implementation (!IntMap issue) 
     59 * More appropriate types like !ByteString and Text can be used in, say, base-io-file 
    5960 * Alternative compilers/targets may only have to reimplement some of the base-* packages. 
    6061 * Possibly fewer modules in “magic” packages that cannot be installed via cabal.