Updated GSoC 2014 Ideas (markdown)

This commit is contained in:
Dominik Picheta 2014-02-12 08:32:32 -08:00
parent 10e0bdb40c
commit eab789025b
1 changed files with 27 additions and 9 deletions

View File

@ -92,7 +92,7 @@ The Nimrod standard library currently lacks a YAML parsing module. This task req
**Difficulty:** Medium
**Mentor:** Araq ([@Araq](http://github.com/Araq))
**Mentor:** Araq ([@Araq](http://github.com/Araq)), dom96 ([@dom96](http://github.com/dom96))
___
#### Enhance the filesystem monitoring module "fsmonitor.nim"
@ -131,18 +131,18 @@ ___
**Difficulty:** Medium
**Mentor:** zahary ([@zah](http://github.com/zah))
**Mentor:** zahary ([@zah](http://github.com/zah)), dom96 ([@dom96](http://github.com/dom96))
___
#### Add documentation to the nimrod compiler internals
#### Add documentation to the Nimrod compiler internals
**Skill Requirements:** Basic writing and documentation skills.
**Description:**
* Add comments to the compiler internals, documenting the various mechansisms and mechanics the compiler uses to analyze and transform nimrod code to the code of the specified backend.
* Add comments to the compiler internals, documenting the various mechanisms and mechanics the compiler uses to analyze and transform nimrod code to the code of the specified backend.
**Difficulty:** Medium
**Mentor:** Araq ([@Araq](http://github.com/Araq))
**Mentor:** Araq ([@Araq](http://github.com/Araq)), zahary ([@zah](http://github.com/zah))
___
#### Improve times module
@ -179,7 +179,7 @@ ___
**Difficulty:** Medium
**Mentor:** Araq ([@Araq](http://github.com/Araq))
**Mentor:** Araq ([@Araq](http://github.com/Araq)), dom96 ([@dom96](http://github.com/dom96))
___
#### Wrap and test GTK3
@ -193,19 +193,37 @@ ___
**Difficulty:** Medium
**Mentor:** dom96 ([@dom96](http://github.com/dom96))
**Mentor:** dom96 ([@dom96](http://github.com/dom96)), Araq ([@Araq](http://github.com/Araq))
## Tools & Infrastructure
#### Update and refactor nimrod builder
#### Nimbuild
**Skill Requirements**: JSON parsing, modular program construction, inter-process communication.
**Description**:
* Reduce the number of assumptions the nimrod builder makes about its host system, in order to reduce configuration restrictions. Assumptions include location and usage of external tools, such as git.
* Reduce the number of assumptions the Nimrod builder makes about its host system, in order to reduce configuration restrictions. Assumptions include location and usage of external tools, such as git.
* Implement benchmark tests in the builder and generate graphs showing the time taken to perform those benchmarks on the Nimbuild site. This can include bootstrap times, and test times too.
* Generate images showing the status of the build to be shown in Nimrod's Github repo and/or Nimrod's website.
* Improve the download tables on Nimbuild's homepage and generate embeddable download tables for the Nimrod website.
**Difficulty:** Medium
**Mentor:** dom96 ([@dom96](http://github.com/dom96))
#### Babel
**Skill Requirements**: Knowledge of Git and other version control systems.
**Description**:
Babel is the Nimrod package manager. It is currently very basic and some important features are still missing. Babel packages are stored in user-controlled repositories with support for Git and Mercurial currently present.
**Possible tasks:**
* Add support for other VCS' alongside Git and Mercurial.
* Create a website which tracks packages similar to hackage, npm, the [DUB registry](http://code.dlang.org/) etc.
* Add support for the removal of packages.
* Automate the package submission process.
* Expand the babel tester to test more dependency scenarios.
**Mentor:** dom96 ([@dom96](http://github.com/dom96))
___
#### Implement re2nim, a lexer generator for nimrod
* Model it after re2c or the Ragel state machine generator