Personal tools

Hac Boston/Projects

From HaskellWiki

< Hac Boston(Difference between revisions)
Jump to: navigation, search
(Wide fanout sequences)
(Refactoring combinators for Haskell)
(5 intermediate revisions by 4 users not shown)
Line 77: Line 77:
   
 
* Jan-Willem Maessen
 
* Jan-Willem Maessen
  +
  +
=== hxournal ===
  +
  +
[http://ianwookim.org/hxournal hxournal] is a note-taking program being developed in haskell and gtk2hs. It is modeled after xournal program but it is going to have more functionalities and better flexibility.
  +
  +
Interested in this project:
  +
  +
* Ian-Woo Kim
  +
  +
=== GObject Introspection for Haskell ===
  +
  +
GObject Introspection provides machine-readable API descriptions for C libraries. <code>haskell-gi</code> generates Haskell bindings for C libraries using these descriptions.
  +
  +
http://www.haskell.org/haskellwiki/GObjectIntrospection
  +
  +
Interested in this project:
  +
  +
* Dafydd Harries
  +
  +
=== Refactoring combinators for Haskell ===
  +
  +
Highly experimental project! Create a code database for Haskell, support querying and transformation via Datalog, and use this to implement a set of refactoring combinators that would allow arbitrary compilation-preserving transformations of Haskell codebases. I posted some more details here:
  +
  +
http://pchiusano.blogspot.com/2012/01/possible-projects-for-boston-haskell.html
  +
  +
Interested in this project:
  +
  +
* Paul Chiusano
  +
* Patrick Wheeler - While unfortunately not attending I wanted to register my interest.
  +
  +
=== Smarter evaluation strategies for lazy languages ===
  +
  +
Highly experimental project! Whiteboard ideas for a specializing, strictness propagating evaluation strategy with the same termination properties as normal order evaluation, but better space usage. Then implement a prototype. The general idea is to propagate additional strictness information at runtime so that evaluation becomes more predictable for polymorphic and higher order code. Some more details here:
  +
  +
http://pchiusano.blogspot.com/2012/01/possible-projects-for-boston-haskell.html
  +
  +
Interested in this project:
  +
  +
* Paul Chiusano
   
 
== Experience ==
 
== Experience ==
Line 97: Line 136:
 
| jmaessen
 
| jmaessen
 
| containers, unordered-containers, eager haskell, ancient haskell history
 
| containers, unordered-containers, eager haskell, ancient haskell history
  +
|-
  +
| mokus
  +
| [https://github.com/mokus0 these], HOC, lambdabot, several others
 
|}
 
|}

Revision as of 08:33, 21 January 2012

Contents

1 Sharing your code

If you need a place to host a project so that others can help with it, we suggest github, but if you are using darcs patch-tag is just dandy as well.

You can also apply for an account on the community server.

2 Projects

If you have a project that you want to work on at the Hackathon, please describe it here.

Since Hackathons are great for teamwork, consider joining one of the projects mentioned below. If you're interested in one of these projects, add your name to the list of hackers under that project.


2.1 Trifecta

Trifecta is a library for dealing with both parsing and the ancillary concerns that arise once you have a parser.

Interested in this project:

  • Edward Kmett
  • Doug McClean
  • Paul Martel

2.2 Machine code analysis tools

Haskell could be a great platform for analyzing and reverse-engineering machine code. We already have disassemblers (x86, ARM), object format parsers (ELF, PE/COFF, MachO), SMT and bitvector solvers, dataflow analysis, etc. Let's improve these tools and fill in the gaps.

Some concrete projects in this area:

  • Write bindings to radare
  • Finish up the charm disassembler for ARM, and get it on Hackage
  • Modify elf to support parsing relocation records
  • Add support to the object format libraries for writing data structures back out to disk
  • Write a format-agnostic layer on top of the object format libraries

Interested in this project:

  • Keegan McAllister
  • Ben Gamari (ARM support in GHC linker)

2.3 G-code backend for Diagrams

Diagrams is a nice library for declarative vector graphics. With a G-code backend, it could be used to control industrial cutting equipment.

We already have a G-code output library. For this project we would need to render Diagrams constructs to the simpler G-code commands.

Interested in this project:

2.4 Livecoding and Music

Haskell has libraries for livecoding and music composition. We need more tutorials and tools. Focus will be on hsc3 for Supercollider.

Interested in this project:

  • Tom Murphy (amindfv)

2.5 Wide fanout sequences

I'd like to build a drop-in replacement for Data.Sequence that uses wide-fanout trees, similar to the wide-fanout tries used by Johan Tibbell in recent versions of unordered containers. The hope is to come up with something that's substantially faster than lists or vectors, even for short lists, while supporting efficient (lg n) concatenation and indexing.

Interested in this project:

  • Jan-Willem Maessen

2.6 hxournal

hxournal is a note-taking program being developed in haskell and gtk2hs. It is modeled after xournal program but it is going to have more functionalities and better flexibility.

Interested in this project:

  • Ian-Woo Kim

2.7 GObject Introspection for Haskell

GObject Introspection provides machine-readable API descriptions for C libraries. haskell-gi generates Haskell bindings for C libraries using these descriptions.

http://www.haskell.org/haskellwiki/GObjectIntrospection

Interested in this project:

  • Dafydd Harries

2.8 Refactoring combinators for Haskell

Highly experimental project! Create a code database for Haskell, support querying and transformation via Datalog, and use this to implement a set of refactoring combinators that would allow arbitrary compilation-preserving transformations of Haskell codebases. I posted some more details here:

http://pchiusano.blogspot.com/2012/01/possible-projects-for-boston-haskell.html

Interested in this project:

  • Paul Chiusano
  • Patrick Wheeler - While unfortunately not attending I wanted to register my interest.

2.9 Smarter evaluation strategies for lazy languages

Highly experimental project! Whiteboard ideas for a specializing, strictness propagating evaluation strategy with the same termination properties as normal order evaluation, but better space usage. Then implement a prototype. The general idea is to propagate additional strictness information at runtime so that evaluation becomes more predictable for polymorphic and higher order code. Some more details here:

http://pchiusano.blogspot.com/2012/01/possible-projects-for-boston-haskell.html

Interested in this project:

  • Paul Chiusano

3 Experience

Please list projects with which you are familiar. This way, people know whom to contact for more information or guidance on a particular project.

Name Projects
edwardk lots of projects, mtl, general libraries
ezyang ghc
keegan various, some GHC internals, FFI tricks
jmaessen containers, unordered-containers, eager haskell, ancient haskell history
mokus these, HOC, lambdabot, several others