Personal tools

ZuriHac2016/Projects

From HaskellWiki

Jump to: navigation, search

Contents

1 Agda

Contact: Philipp Hausmann

Homepage: http://wiki.portal.chalmers.se/agda/pmwiki.php

Required skill level: Advanced

Agda is a dependently-typed functional programming language implemented in Haskell. The plan is to improve the current IO support in the Standard Library/Prelude and maybe fix a bug or two in the Agda Compiler Backends.

2 Cryptonite

Contact: Vincent Hanquez

Homepage: https://github.com/haskell-crypto/cryptonite

Required skill level: Advanced

3 Discussion about Local Haskell Clubs

Contact: José-Paul Dominguez

Required skill level: Beginner

The Grenoble Haskell club is a project I envisaged with Jérémy, who is attenting ZuriHac2016 too. We would like to bring Haskell to our University with a "student club", open to everybody. Anyone could propose talks, projects, materials around Haskell in order to learn, teach, try and have fun.

I thought it might be insteresting to discuss about it with people. Being myself a recent "Haskeller" I find it quite hard sometimes to catch people's interest about Haskell. Maybe experienced Haskell programmers will be interested by giving tips or eventually getting involved.

4 Hakyll

Contact: Jasper Van der Jeugt

Homepage: http://jaspervdj.be/hakyll

Required skill level: Beginner

5 Haskell IDE Engine

Contact: Moritz Kiefer

Homepage: https://github.com/haskell/haskell-ide-engine

6 Hedsql

Contact: Léonard Monnier

Homepage: https://github.com/momomimachli/Hedsql

Required skill level: Beginner

By order of difficulty, the following things could be done:

6.1 Data.Text support

Level: beginner

Description: use Data.Text instead of String

6.2 Injection tests

Level: beginner in Haskell, solid SQL knowledge

Description: ensure that the library is dealing correctly against SQL injection.

6.3 Database tests

Level: beginner/intermediate

Description: write the integration tests against real databases (SqLite, PostgreSQL and MariaDB).

6.4 Add new SQL functionalities

Level: intermediate Description:

Add support to additional SQL functions such as:

  • ALTER statements
  • types (such as time-stamp, date, etc.)
  • various SQL vendor functions such as "sqlite3_last_insert_rowid()" for example.

It implies to work through the full stack:

  • create a new function/datatype in the AST
  • create a new constructor function to generate the AST
  • create new parser(s) function(s) to generate the SQL code.

6.5 Architecture

Level: expert

Description: the library is currently using a State Monad for writing SELECT queries, but maybe there is a better way.

7 Opaleye

Work on the list of Opaleye enhancements

Contact: Tom Ellis

Homepage: https://hackage.haskell.org/package/opaleye

Required skill level: Advanced

8 OpenCV 3.1 Haskell binding

Homepage: https://github.com/LumiGuide/haskell-opencv

Contact: Bas van Dijk

Required skill level: Expert

9 Hadrian (Shaking up GHC)

Contact: Andrey Mokhov

Homepage: https://github.com/snowleopard/hadrian

Required skill level: Advanced

Hadrian is a new build system for the Glasgow Haskell Compiler. It is based on the Shake library and we hope that it will eventually replace the current make-based build system. You can find more details about the motivation behind this project and our implementation approach in this document.

Hadrian is a work in progress, and there are still many issues that need to be solved before we can match the capabilities of the old build system. Join this project if you'd like to help.

10 Spock

Contact: Alexander Thiemann

Homepage: https://www.spock.li

Required skill level: Advanced

11 Hoodle

Contact: Ian-Woo Kim

Homepage: http://ianwookim.org/hoodle

Required skill level: Advanced

Hoodle is a pen notetaking program written almost entirely in Haskell. It's one of rather rare GUI programs in Haskell world. Recently, I upgraded hoodle to use Gtk3, and therefore much modernized and easier to be ported to other platform natively. In this hackathon, I would like to stabilize this Gtk3 port and want to try to port the program to many different platform (especially targetting OS X and hopefully windows), and modernize tablet input part to use gtk3 counterpart, not use custom X11 C FFI. I also want to add some shiny new features if possible during the hackathon.