HacPDX/Projects
From HaskellWiki
(Difference between revisions)
| Line 19: | Line 19: | ||
| KimWallmark | | KimWallmark | ||
|- | |- | ||
| + | | [http://hackage.haskell.org/package/judy judy] | ||
| + | | Fast, mutable collection types | ||
| + | | dons | ||
|} | |} | ||
Revision as of 17:53, 26 September 2009
Contents |
1 Proposed Projects for HacPDX
Projects you intend to tackle.
| Project | Task Description | Participants |
|---|---|---|
| Network APIs | Investigate and test new APIs for potentially replacing network, network-bytestring, and network-fancy | TomMD |
| HPDF | Additional hacking and c bindings | jmelesky |
| HUnit | GUI. Maybe also text UI that isn't horrible | KimWallmark |
| judy | Fast, mutable collection types | dons |
2 Additional Project Suggestions
Projects you'd consider, but depends on the interest of other attendees.
| Project | Task Description | |
|---|---|---|
| Crypto Part I | Fix up the crypto library - use bytestring, fold in pureMD5/SHA/hecc, provide a new API | |
| PNG | Work on Bart Massey's pure-Haskell PNG reading/writing library. Lots to do here. | |
| ParseArgs | Clean up and extend a bit Bart Massey's parseargs package. | |
| TCP Service | Extract and package the SMTP-style TCP server bits from Bart Massey's MiniChess server. | |
| sqlite open_v2() | Add full support for SQlite's open_v2() call to the sqlite package. | |
| HaRe | Get it compiling under ghc 6.10; cabalize it. | |
| plugins | Tests and examples seem to fail with linking errors on the latest Haskell Platform. | |
| wxHaskell | Get this to install on Arch Linux. | |
| Kernel Modules | Finish porting a Linux driver to Haskell (mostly means working on the c2hs bindings) | |
| Whiteout | I - Echo Nolan - have been working on a BitTorrent client library. It uses fun things like iteratees and STM. If anyone is interested in hearing about/working on it, I'm more than happy to give the guided tour. | |
| Lambdabot | Everyone's favorite Haskell IRC bot. |
3 Crypto 5.0 notes
TomMD's design for a digest class. From memory.
class Digest d s | d -> s where -- Associated types are the new hotness. Should we be using them? size :: d -> Int -- Size of a digest extract :: d -> ByteString -- Initial state of the hash function. Dependent on the length of the -- message. Maybe we should let the hash function determine the precision -- or absence of the length. initial :: Word64 -> s -- Chunkwise hashing. Needed to implement efficient hashing of lazy -- bytestrings and efficient hashing of streams in general. OOH, an -- application for iteratees! Hooray! hashsome :: ByteString -> s -> s finalize :: s -> d hash :: Digest d s => ByteString -> d hash bs = finalize $ hashsome bs initial newtype SHA1 = SHA1 ByteString instance Digest SHA1 SHA1State where --Code goes here...
And similarly for block/stream ciphers and RNGs. Also, slurp up the various other crypto libs on hackage.
3.1 Other todos
- Add website and darcs repo to Crypto.cabal.
- Use test-framework.
- Don't build tests by default - use a flag.
- Is dominic.steinitz@blueyonder.co.uk still the correct contact email? If not, change it in CryptoHomePage.html
- Does the readme *really* have to be in TeX?
- Get a real bugtracker set up? code.haskell.org gives out trac hosting.
- Holy crap that is a lot of warnings.
- QuickCheck 2?
- Echo hates Darcs with a passion.
