Infrastructure/Utrecht-Hacking-Notes

From HaskellWiki
< Infrastructure
Revision as of 08:46, 30 August 2010 by DonStewart (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Notes from Utrecht on future directions for packages and infrastructure

containers

Work underway to do general performance improvements to the containers package, based on worker/wrapper and other idioms. New repository for work on patch-tag:

Added test suite and coverage data, (increased coverage to > 50%)

Investigate certain functions, then determine if anything on Hackage uses them. If no such package is found using the Map function, remove it from the API -- 20 years and 2000 packages should be enough empirical evidence.

Added benchmarking suite.

Improved performance. Submitted to libraries process: http://hackage.haskell.org/trac/ghc/ticket/4277

Candidates for removal:

Function Reason Comment
notMember Trivial composition of not and member
findWithDefault Should be renamed to lookupWithDefault for consistency
updateWithKey The caller already has the key
updateLookupWithKey The caller already has the key. updateLookup could be useful though
adjust Simply calls adjustWithKey that calls updateWithKey
adjustWithKey Simply calls updateWithKey

hackage 2

Ready Hackage 2 for use.

network

network package is low level, difficult to maintain and fragile. Rewrite using design from python?

hashmaps

Based on Patricia trees and using MurmurHash.

hashtables

Fast, open addressed hashtables: useful, but relatively small ROI. Also quite complex.

text

Propose text for the HP. Draft now available: http://trac.haskell.org/haskell-platform/wiki/Proposals/text

platform

Generate unified docs for the HP.