Personal tools

ZuriHac2016/Projects

From HaskellWiki

< ZuriHac2016(Difference between revisions)
Jump to: navigation, search
(added my project hoodle)
Line 42: Line 42:
  
 
'''Required skill level''': Beginner
 
'''Required skill level''': Beginner
 +
 +
By order of difficulty, the following things could be done:
 +
 +
== Data.Text support ==
 +
 +
Level: beginner
 +
 +
Description: use Data.Text instead of String
 +
 +
== Injection tests ==
 +
 +
Level: beginner in Haskell, solid SQL knowledge
 +
 +
Description: ensure that the library is dealing correctly against SQL injection.
 +
 +
== Database tests ==
 +
 +
Level: beginner/intermediate
 +
 +
Description: write the integration tests against real databases (SqLite, PostgreSQL and MariaDB).
 +
 +
== 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.
 +
 +
== Architecture ==
 +
 +
Level: expert
 +
 +
Description: the library is currently using a State Monad for writing SELECT queries, but maybe there is a better way.
  
 
= Opaleye =
 
= Opaleye =

Revision as of 13:37, 5 July 2016

Contents

1 Agda

Contact: Philipp Hausmann

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

Required skill level: Advanced

2 Cryptonite

Contact: Vincent Hanquez

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

Required skill level: Advanced

3 Grenoble Haskell Club

Contact: José-Paul Dominguez

Required skill level: Beginner

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 Shaking up GHC

Contact: Andrey Mokhov

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

Required skill level: Advanced

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