Difference between revisions of "ZuriHac2016/Projects"

From HaskellWiki
Jump to navigation Jump to 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

Agda

Contact: Philipp Hausmann

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

Required skill level: Advanced

Cryptonite

Contact: Vincent Hanquez

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

Required skill level: Advanced

Grenoble Haskell Club

Contact: José-Paul Dominguez

Required skill level: Beginner

Hakyll

Contact: Jasper Van der Jeugt

Homepage: http://jaspervdj.be/hakyll

Required skill level: Beginner

Haskell IDE Engine

Contact: Moritz Kiefer

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

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:

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

Work on the list of Opaleye enhancements

Contact: Tom Ellis

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

Required skill level: Advanced

OpenCV 3.1 Haskell binding

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

Contact: Bas van Dijk

Required skill level: Expert

Shaking up GHC

Contact: Andrey Mokhov

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

Required skill level: Advanced

Spock

Contact: Alexander Thiemann

Homepage: https://www.spock.li

Required skill level: Advanced

Hoodle

Contact: Ian-Woo Kim

Homepage: http://ianwookim.org/hoodle

Required skill level: Advanced