Google summer of code: Difference between revisions
(Added link to Marcos's blog) |
m (Added link to GSoC 2017 ideas in Web Archive; corrected titles of links) |
||
(26 intermediate revisions by 12 users not shown) | |||
Line 1: | Line 1: | ||
The [ | The [https://developers.google.com/open-source/soc/?csw=1 Google Summer of Code (GSoC)] is an annual program funded by Google to allow hundreds of students around the world to participate in free or open source software. | ||
GSoC is open to students using all kinds of technologies and each year we like to see many projects written in/for the | GSoC is open to students using all kinds of technologies and each year we like to see many projects written in/for the Haskell programming language. | ||
Some possibly useful links: | Some possibly useful links: | ||
haskell.org: [http://hackage.haskell.org/trac/summer-of-code/report/1 | * haskell.org: | ||
** [https://summer.haskell.org/ Summer of Haskell]; the main Haskell Summer of Code page | |||
** [https://summer.haskell.org/ideas.html GSoC Ideas]. ([http://web.archive.org/web/20170705154806/summer.haskell.org/ideas.html GSoC 2017 ideas].) | |||
** [http://hackage.haskell.org/trac/summer-of-code/report/1 Summer of Code Trac] | |||
* Reddit: [http://www.reddit.com/r/haskell_proposals Haskell proposals] | |||
Johan Tibell: [http://blog.johantibell.com/2011/03/writing-good-google-summer-of-code.html | * Johan Tibell: [http://blog.johantibell.com/2011/03/writing-good-google-summer-of-code.html Writing a good Google Summer of Code application], [http://blog.johantibell.com/2011/03/summer-of-code-project-suggestions.html Summer of Code project suggestions] (for 2011) | ||
Gwern: [http://www.gwern.net/Haskell%20Summer%20of%20Code | * Gwern: [http://www.gwern.net/Haskell%20Summer%20of%20Code Retrospectives 2006-2013] | ||
== Accepted GSOC2016 projects == | |||
See the Reddit page [https://www.reddit.com/r/haskell/comments/4kp6zg/summer_of_haskell_2016_accepted_projects/ Summer of Haskell 2016 - Accepted Projects]. The results are described at [https://summer.haskell.org/news/2016-12-08-2016-wrapup.html Summer of Haskell 2016 Wrap-Up]. | |||
== Accepted GSOC2015 projects == | |||
* A Strict language pragma for GHC - Adam Sandberg Eriksson [https://github.com/adamse Github account] | |||
* [https://gist.github.com/Alllex/439480b7e80303f19ddc STM Data Structures Implementation] - Alex Semin | |||
* [https://gist.github.com/AjayRamanathan/c84a4641836700a2547b Implementation of Layered Gramamar of Graphics] - chinu [https://github.com/AjayRamanathan/Plot Github repository] | |||
* Implementing Version Comparison for Cabal Packages - Craig Roche [https://github.com/cdxr Github account] | |||
* Improving Hackage Discoverability - D. Zack Garza [https://github.com/dzackgarza Github repository], [http://dzackgarza.com/mockup/main.html Mockup] | |||
* [http://darcs.net/GSoC/2015-Darcsden Darcsden improvements] - Daniil Frumin [http://hub.darcs.net/co-dan Darcsden accoun] - [https://parenz.wordpress.com/2015/09/24/darcsden-imporvements-and-darcs-sprint/ Blog post] | |||
* [https://gist.github.com/hdgarrood/0a389937149453c69e03 Pursuit enhancements] - Harry Garrood [https://github.com/hdgarrood Github account] | |||
* Improvements For HBLAS And Adding LAPACK Bindings. - JuejiYang | |||
* [https://gist.github.com/Jubobs/7a9298eeaf02bcefbc35 A standalone functional parser for CommonMark] - Julien Cretel [https://github.com/Jubobs Github account] | |||
* [http://mpickering.github.io/gsoc2015.html Refactor program with HLint suggestions] - Matthew Pickering [https://github.com/mpickering Github account], [https://camo.githubusercontent.com/a928338441f119fa911151c0db0ceaa72c51e0c4/687474703a2f2f692e696d6775722e636f6d2f3759586f5666742e676966 Demo] | |||
* Replication back-end for acid-state - Max Voit | |||
* [https://gist.github.com/spinda/b261167303515cc8a1d9 Native Haskell Type Encoding for LiquidHaskell] - Michael Smith [https://github.com/spinda Github account] | |||
* Exhaustiveness Checker for PureScript - Nicolas Del Piano [https://github.com/nicodelpiano Github account] | |||
* [https://gist.github.com/nkartashov/e46fd146b1df2d79aaf3 Fast splittable pseudorandom number generator for System.Random] - Nikita Kartashov [https://github.com/nkartashov Github account] | |||
* [https://github.com/sumitsahrawat/gsoc/blob/master/2015/ihaskell.pdf Interactive widgets in IHaskell] - Sumit Sahrawat [https://github.com/sumitsahrawat Github account] | |||
* Improvements to yesod-devel - urbanslug [https://github.com/urbanslug Github account] | |||
* [https://gist.github.com/fugyk/37510958b52589737274 Implement nix-like package management features in cabal] - Vishal Agrawal [https://github.com/fugyk Github account] | |||
* Haddock improvements - Łukasz Hanuszczak [https://github.com/mrhania Github account] | |||
=== Achieved Goals === | |||
==== Refactor program with HLint suggestions ==== | |||
My project was refactoring programs with hlint suggestions. I'm | |||
counting it as a success but I am waiting for a new release of HSE and | |||
hlint before making an announcement. We can apply almost all | |||
suggestions from hlint. | |||
Here is a [https://camo.githubusercontent.com/a928338441f119fa911151c0db0ceaa72c51e0c4/687474703a2f2f692e696d6775722e636f6d2f3759586f5666742e676966 demo] of it working | |||
==== Interactive widgets in IHaskell ==== | |||
My project "Interactive widgets in IHaskell" was completed successfully. We'll be having a public announcement with an online demo on try.jupyter.org soon. | |||
==== A Strict language pragma for GHC ==== | |||
Johan Tibell writes: I'm very happy with Adam's work strict Haskell. StrictData is already in HEAD and will be part of 8.0. Adam is working (as his studies permit) of finish the rest. Perhaps if we're really lucky we'll have the Strict pragma as well in 8.0. | |||
As of 2015-11-14 both language extensions (StrictData and Strict) are merged in GHC Head (in time for GHC 8.0). | |||
==== STM Data Structures Implementation ==== | |||
Alex's excellent work is [https://github.com/Alllex/stm-data-collection here] and is soon to be uploaded to hackage. | |||
=== Did Not Achieve Goals === | |||
==== Implementation of Layered Gramamar of Graphics ==== | |||
Last commit was made on 30 June 2015 and the README says | |||
Working on a implementation of layered grammar of graphics. Work in progress, | |||
Nothing to see here, Move on. | |||
It may be that this work has been subsumed [https://github.com/cchalmers/plots here] but I am not sure how to confirm this. | |||
==== Improvements For HBLAS And Adding LAPACK Bindings ==== | |||
The last contribution by the student to the [https://github.com/wellposed/hblas repo ] seems to be 2 May 2015. | |||
There is [https://www.googlemelange.com/gsoc/project/details/google/gsoc2015/juejiyang/5693417237512192 this] | |||
but it's hard to judge from it what the contribution is. | |||
== Accepted GSOC2013 projects == | == Accepted GSOC2013 projects == | ||
From [http://www.google-melange.com/gsoc/org/google/gsoc2013/haskell haskell.org]: | From [http://www.google-melange.com/gsoc/org/google/gsoc2013/haskell haskell.org]: | ||
* Better record command for darcs | * [http://blog.jlneder.com.ar/search/label/darcs Better record command for darcs] | ||
* [http://gsoc2013cwithmobiledevices.blogspot.com.ar/ Communicating with mobile devices] | * [http://gsoc2013cwithmobiledevices.blogspot.com.ar/ Communicating with mobile devices] | ||
* [http://bsrkaditya.blogspot.com/ Enhancing Darcsden] | * [http://bsrkaditya.blogspot.com/ Enhancing Darcsden] | ||
* Extending GHC to support building modules in parallel | * Extending GHC to support building modules in parallel | ||
* Haddock | * Improve Haddock Markup and Capabilities | ||
* Haskell Qt Binding Generator | * [http://ofan.me/cat/gsoc.html Haskell Qt Binding Generator and semi-automated C++ ffi wrapper] (blog not live yet) | ||
* Improve the feedback of the cabal-install dependency solver | * [http://cabal-summer.blogspot.com Improve the feedback of the cabal-install dependency solver] | ||
* [http://parenz.wordpress.com/ interactive-diagrams and a paste site with the ability for dynamic rendering of diagrams] | * [http://parenz.wordpress.com/ interactive-diagrams and a paste site with the ability for dynamic rendering of diagrams] | ||
* [http://hackage.haskell.org/trac/ghc/wiki/Records/OverloadedRecordFields/Plan Overloaded record fields for GHC] | * [http://hackage.haskell.org/trac/ghc/wiki/Records/OverloadedRecordFields/Plan Overloaded record fields for GHC] | ||
* Parallelise 'cabal build' | * Parallelise 'cabal build' | ||
* Port Charts to use Diagrams | * [https://github.com/jbracker/haskell-chart Port Charts to use Diagrams] | ||
== Accepted GSOC2011 projects == | == Accepted GSOC2011 projects == |
Latest revision as of 13:09, 24 March 2018
The Google Summer of Code (GSoC) is an annual program funded by Google to allow hundreds of students around the world to participate in free or open source software.
GSoC is open to students using all kinds of technologies and each year we like to see many projects written in/for the Haskell programming language.
Some possibly useful links:
- haskell.org:
- Summer of Haskell; the main Haskell Summer of Code page
- GSoC Ideas. (GSoC 2017 ideas.)
- Summer of Code Trac
- Reddit: Haskell proposals
- Johan Tibell: Writing a good Google Summer of Code application, Summer of Code project suggestions (for 2011)
- Gwern: Retrospectives 2006-2013
Accepted GSOC2016 projects
See the Reddit page Summer of Haskell 2016 - Accepted Projects. The results are described at Summer of Haskell 2016 Wrap-Up.
Accepted GSOC2015 projects
- A Strict language pragma for GHC - Adam Sandberg Eriksson Github account
- STM Data Structures Implementation - Alex Semin
- Implementation of Layered Gramamar of Graphics - chinu Github repository
- Implementing Version Comparison for Cabal Packages - Craig Roche Github account
- Improving Hackage Discoverability - D. Zack Garza Github repository, Mockup
- Darcsden improvements - Daniil Frumin Darcsden accoun - Blog post
- Pursuit enhancements - Harry Garrood Github account
- Improvements For HBLAS And Adding LAPACK Bindings. - JuejiYang
- A standalone functional parser for CommonMark - Julien Cretel Github account
- Refactor program with HLint suggestions - Matthew Pickering Github account, Demo
- Replication back-end for acid-state - Max Voit
- Native Haskell Type Encoding for LiquidHaskell - Michael Smith Github account
- Exhaustiveness Checker for PureScript - Nicolas Del Piano Github account
- Fast splittable pseudorandom number generator for System.Random - Nikita Kartashov Github account
- Interactive widgets in IHaskell - Sumit Sahrawat Github account
- Improvements to yesod-devel - urbanslug Github account
- Implement nix-like package management features in cabal - Vishal Agrawal Github account
- Haddock improvements - Łukasz Hanuszczak Github account
Achieved Goals
Refactor program with HLint suggestions
My project was refactoring programs with hlint suggestions. I'm counting it as a success but I am waiting for a new release of HSE and hlint before making an announcement. We can apply almost all suggestions from hlint.
Here is a demo of it working
Interactive widgets in IHaskell
My project "Interactive widgets in IHaskell" was completed successfully. We'll be having a public announcement with an online demo on try.jupyter.org soon.
A Strict language pragma for GHC
Johan Tibell writes: I'm very happy with Adam's work strict Haskell. StrictData is already in HEAD and will be part of 8.0. Adam is working (as his studies permit) of finish the rest. Perhaps if we're really lucky we'll have the Strict pragma as well in 8.0.
As of 2015-11-14 both language extensions (StrictData and Strict) are merged in GHC Head (in time for GHC 8.0).
STM Data Structures Implementation
Alex's excellent work is here and is soon to be uploaded to hackage.
Did Not Achieve Goals
Implementation of Layered Gramamar of Graphics
Last commit was made on 30 June 2015 and the README says
Working on a implementation of layered grammar of graphics. Work in progress, Nothing to see here, Move on.
It may be that this work has been subsumed here but I am not sure how to confirm this.
Improvements For HBLAS And Adding LAPACK Bindings
The last contribution by the student to the repo seems to be 2 May 2015.
There is this but it's hard to judge from it what the contribution is.
Accepted GSOC2013 projects
From haskell.org:
- Better record command for darcs
- Communicating with mobile devices
- Enhancing Darcsden
- Extending GHC to support building modules in parallel
- Improve Haddock Markup and Capabilities
- Haskell Qt Binding Generator and semi-automated C++ ffi wrapper (blog not live yet)
- Improve the feedback of the cabal-install dependency solver
- interactive-diagrams and a paste site with the ability for dynamic rendering of diagrams
- Overloaded record fields for GHC
- Parallelise 'cabal build'
- Port Charts to use Diagrams
Accepted GSOC2011 projects
From haskell.org:
- Alejandro Serrano : Improve EclipseFP
- Alexander Göransson: Simplified OpenGL bindings
- Anklesaria: Interpreter Support for the Cabal-Install Build Tool
- Jasper Van der Jeugt: Convert the text package to use UTF–8 internally
- Mikhail Glushenkov: Build multiple Cabal packages in parallel
- Owen Stephens: Darcs Bridge
- Petr Ročkai: Darcs: primitive patches version 3
Projects from other organizations related to haskell: