Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Haskell
Wiki community
Recent changes
Random page
HaskellWiki
Search
Search
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
CamHac/PostHackathonReport
(section)
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Special pages
Page information
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
= Post-Hackathon Report = This page is for listing what was done during the Hackathon. Please add a short description of what you worked on, with links to relevant blog posts, hackage packages, commits, etc. == fclabels 1.0 release == New release of the '''fclabels''' package. The new package has a lot of code and documentation cleanups, support for partial labels in the case of multi-constructor datatypes and is about 20x as fast for setting and modifying as the previous version. Thanks everyone for helping me out! Hackage: http://hackage.haskell.org/package/fclabels-1.0.1 Github: http://github.com/sebastiaanvisser/fclabels == GHC and base library improvements == * [http://hackage.haskell.org/trac/ghc/ticket/5413 Add primops for bit population count]. These primops compile down to `POPCNT` instructions where available and fast fallbacks (implemented in C) otherwise. * [http://hackage.haskell.org/trac/ghc/ticket/5414 Add unchecked left and right bit shifts]: The Data.Bits.shift method uses a branch to check if the shift amount is larger than the word size and returns 0 in these cases. This extra safety makes performance worse in bit twiddling code. * Discussed unpacking of enums in GHC (not yet implemented). * Discussed refactoring compiler/util/Digraph.lhs into a reusable graph combinator library, along with porting over hoopl's control-flow-graph traversals (not yet implemented). * [http://hackage.haskell.org/trac/ghc/ticket/2132 Optimise nested comparisons]: started implementing (currently as a plugin) a new Core-to-Core pass. == Context synonym families == Started working on context synonym families and indexed context synonym families. We make this work by giving evidence the new kind Fact, and then allowing any type of kind Fact to appear on the left of a => arrow. (Max Bolingbroke, Dominic Orchard and Nicolas Wu) == Darcs == New contributors: * use red text to report when <font color="red">we have a conflict</font> ([http://bugs.darcs.net/issue1681 issue1681],[http://bugs.darcs.net/patch646 patch646], Jeff Foster) * support 'since' in English dates parser * filter SSH output ([http://bugs.darcs.net/issue845 issue845], Jeff Foster and Sebastian Korten) * support arbitrary darcs command in darcs-test (Alexander Njemz) * output ISO dates in darcs changes? ([http://bugs.darcs.net/issue140 issue140], Alexander N, may be not a good idea) * add a last regrets prompt to interactive patch selection ([http://bugs.darcs.net/issue1920 issue1920], [http://bugs.darcs.net/patch655 patch655], Johannes Weiß) * [in-progress] support removing changes in amend-record ([http://bugs.darcs.net/issue1470 issue1470], Johannes Weiß) == wxHaskell == * a Windows build fix ([https://sourceforge.net/mailarchive/forum.php?thread_name=CAA5%3D7kb%2BCmJ178tvrxtOnuswWBeBxYpSotiQWRXuKE3m_sByXA%40mail.gmail.com&forum_name=wxhaskell-devel patch]) * a fix for [https://sourceforge.net/tracker/?func=detail&aid=3019730&group_id=73133&atid=536845 an issue with colorDialog] ([https://sourceforge.net/mailarchive/forum.php?thread_name=20110813150933.GA758%40dewdrop.local&forum_name=wxhaskell-devel patch]) == hCole-server == * A Snap-based web application that interacts with the COLE (see http://portal.acm.org/citation.cfm?id=1356080 and http://portal.acm.org/citation.cfm?id=1772965) framework for exploring compiler optimisation levels. The purpose of the web app is that collaborators can submit optimisation sequences to the COLE backend and retrieve the results when they are available after measuring. * Git repository of the web application can be found at https://github.com/itkovian/hcole-server == GObject Introspection == * Work-in-progress binding generator for GObject-based libraries such as Gtk+ 3. * Started switching to [http://hackage.haskell.org/package/haskell-src-exts-1.11.1 haskell-src-exts] for code generation. * Patches currently on the ''camhac'' branch on [https://gitorious.org/haskell-gi/haskell-gi gitorious]. == Snap Framework == * Snap 0.5.3 and 0.5.3.1 released! * Several bugs squashed or nearly-squashed: [https://github.com/snapframework/snap-core/issues/2 #2] (IPv6 support, from Vlad Hanciuta), [https://github.com/snapframework/snap-core/issues/77 #77], [https://github.com/snapframework/snap-core/issues/78 #78], and [https://github.com/snapframework/snap-core/issues/79 #79]. * File upload code: replaced "openBinaryTempFile" with something less dumb (mkstemp) on unix, and fixed some iteratee cleanup problems using an MVar finalizer * Removed the template haskell code from Data.Concurrent.HashMap in snap-server * Some work has been done on the authentication Snaplet, including an (incomplete) HDBC backend for it. An early work-in-progress can be found here: https://github.com/norm2782/snap * An example application which uses Snap 0.6 has been improved to use the authentication Snaplet. Another work-in-progress: https://github.com/norm2782/snap-guestbook == Data.Text == * Further benchmarking, bug fixing to support the UTF-8 port * Progress can be found in the ''utf8'' branch [http://github.com/jaspervdj/text here] * The [http://jaspervdj.be/files/text.html GSoC project] is basically done, next up is writing a summary report of benchmark results and what advantages and disadvantages come with the port == hs-poker == * A "redneck naive" poker hand evaluator. Code is on github (https://github.com/fffej/HS-Poker). Hopefully intend to turn this into a poker bot playground for Haskell (Jeff / Sebastian) == haskell-mpi == * New version 1.1.0 uploaded to hackage, including support for more MPI implementations, bugfixes and general awesomness * Upcoming Monad Reader would feature and article about parallel programming with MPI, written during the course of the hackathon (Dmitry Astapov) == HTTP == Some work was done on setting up tests for HTTP. Additionally, some bugs were fixed, code was cleaned up, warnings removed and a start was made on improving the Network.Browser module. == EchoNest API == A very nascent API for accessing the EchoNest Music API http://developer.echonest.com/docs/v4/index.html . Coming to a GitHub server in the near future, as soon as it stops looking so ugly (Ian Knopke / Jose Calderon). == TagSoup/Derive/HLint == All the above packages got upgraded to the latest GHC, along with a few bug fixes (Derive now deals with singleton constructors with no fields, HLint now supports an ANSI CPP flag) (Neil Mitchell) == Hoogle == The current Hoogle parser for user queries is old, doesn't parse everything correctly, and in particular doesn't deal well with partial queries (when the user is still typing their search). We discussed lots of edge cases, and started implementing a new version (Jacek Generowicz, with guidance from Neil Mitchell) == CmdArgs == The CmdArgs package lets you concisely specific command line arguments. I ported the package to GHC 7.2.1, did some cleanups, and fixed some bugs (you can now use Int64 etc). I then started working on two new features: 1) Given a CmdArgs program (such as Hoogle) you can specify you want to enter the arguments via a GUI hosted in the web browser. Currently the GUI is a simple textbox with realtime validation, but in future it will become a structured command line argument editor based on the options to your tool. 2) Adding automatic bash autocompletion - some of the work has been done, but the details are not yet finished. (Neil Mitchell) == Hackage server == Further refactoring work, simplification of HTTP basic/digest authentication code. Started work on serving package changelogs. Improvements to admin pages to make various features more discoverable (Duncan Coutts, Stefan Wehr, Ben Millwood). Hackathon branch of the code is at (not all patches have been submitted yet): darcs get http://code.haskell.org/~duncan/camhac/hackage-server/ == Bittorrent DHT == Initial work on implementing [http://www.bittorrent.org/beps/bep_0005.html BEP 0005] in Haskell. Some core data structures seem to be working (although untested) and I'm currently working on the protocol. I will probably merge this into Haskell Torrent when everything is working, but I intend to keep the library available separately as I see potential uses for the network other than Bittorrent. (Alex Horsman) https://github.com/aninhumer/haskell-dht == LambdaHack == Discussed gameplay and hacks, annotated the code with the discussion results and finally accepted [https://github.com/kosmikus/LambdaHack/pull/11 the pull request] from [http://hackage.haskell.org/package/Allure Allure of the Stars] to [http://hackage.haskell.org/package/LambdaHack LambdaHack]. == HaskelSSHClient == Hacked around a bit on the Haskel SSH Client. Work was started on making it able to do re-keying after the initial key exchange, but it is unfinished for now... (Bart Coppens) https://github.com/bcoppens/HaskellSshClient == Haskell Test Framework (HTF) == * New '--quiet' flag: only produces output for failing tests (FINISHED) * Output a diff if an assertEqual fails (not yet finished) == Stack traces in GHC == I (Simon M.) was working on adding better support for source code annotations in GHC's Core language, and unifying the way we handle profiling cost centres, coverage annotations, and breakpoints in the GHCi debugger. I'm working on a new semantics for cost centre stacks, which will allow us to track call stacks at runtime. This will not only give us more accurate profiling, but also let us report stack traces on errors (e.g. head []), perhaps enabled by a compile-time option. == TLS == lots of various misc improvements: re-work records for more type safety, support for compression, initial support of version 1.2. (Vincent Hanquez) https://github.com/vincenthz/hs-tls == Pattern Synonyms == Simon PJ, Simon M, and I (Lennart Augustsson) hashed out a design for pattern synonyms. I've barely begun implementation, so don't expect anything just yet. http://hackage.haskell.org/trac/ghc/wiki/PatternSynonyms == Frequent Subgraph Algorithm == I (Stephen Lavelle) implemented the vSiGraM algorithm for searching for frequent vertex-disjoint subgraphs of large graphs. Doesn't really work for large graphs, though - 'tis quite slow right now. https://github.com/increpare/vsigram == Data.ByteString.Lazy.Builder == Duncan Coutts and Johan Tibell reviewed my (Simon Meier) work on a lazy bytestring builder for the 'bytestring' library; based on blaze-builder. The API and implementation is now complete. Documentation is there, but needs lots of polishing. I also gave a talk on when and how to use the bytestring builder. The slides and example code are available from [https://github.com/meiersi/bytestring/blob/master/bench/CSV.hs github]. == Error reporting for JsonGrammar == Some progress on better error reporting for the JSON conversion functions in the [http://hackage.haskell.org/package/JsonGrammar JsonGrammar package] was made. Now <hask>fromJson</hask> no longer says <hask>Nothing</hask> when there is an error in the input JSON. Progress can be [https://github.com/MedeaMelana/JsonGrammar/tree/errors tracked on GitHub]. When finished it will be merged back into the master branch and released in a new version on hackage. (Martijn van Steenbergen) == Implementing 'docase' notation in GHC == I (Tomas Petricek) started implementing the <hask>docase</hask> notation that I briefly presented on Sunday as a GHC langauge extension. The slides from the presentation [http://slidesha.re/oJP10b are available online] and you can find more information in my [http://www.cl.cam.ac.uk/~tp322/papers/docase.html Haskell Symposium paper].<br /><br /> At Hasckathon, I extended the GHC lexer & parser and added a language extension flag <Hask>DocaseNotation</Hask>. I also understood a little bit how type-checker and desugaring works and I got a very basic part of the extension to work (one particular part of syntax type-checks and desugars to Prelude function call, but it supports re-bindable syntax as other similar extensions). I continue working on the extension and will upload a patch for more discussion when it's ready. == LambdaCube 3D engine == The next version of the engine will be based on a (DSL) graphics pipeline description language. During the weekend I've checked some related projects like accelerate and gpipe and did some examples with them. [[Category:Community]]
Summary:
Please note that all contributions to HaskellWiki are considered to be released under simple permissive license (see
HaskellWiki:Copyrights
for details). If you don't want your writing to be edited mercilessly and redistributed at will, then don't submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource.
DO NOT SUBMIT COPYRIGHTED WORK WITHOUT PERMISSION!
Cancel
Editing help
(opens in new window)
Toggle limited content width