Changes between Version 13 and Version 14 of Internships


Ignore:
Timestamp:
Jan 16, 2008 2:49:48 PM (8 years ago)
Author:
simonpj
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Internships

    v13 v14  
    2222
    2323To give you some idea, here are some past projects
    24   * Kevin Donnelly is changing GHC's intermediate language to support equality constraints.
    25   * Roshan James is writing a parallel garbage collection
     24  * Kevin Donnelly changed GHC's intermediate language to support equality constraints.
     25  * Roshan James wrote a parallel garbage collectof
    2626  * Geoff Washburn made the first implementation of GADTs in GHC
    2727  * Dimitrios Vitytonis worked on type inference for impredicative polymorphism
     
    3030== Current projects ==
    3131
    32 Here is a list of some possible future projects we have in mind:
     32Here is a list of some possible future projects we have in mind.  But feel free to suggest your own!
    3333
    3434=== Programming environment and tools ===
     
    4949    * '''Improve the GHC API''', whereby you can import GHC as a library.  We make improvements now and then, but it would benefit from some sustained attention.  A particular project would be to port the Haskell refactorer [http://www.cs.kent.ac.uk/projects/refactor-fp/hare.html HaRE] to use the GHC API.
    5050
     51=== Types ===
     52
     53 * '''Allow unboxed tuples as function arguments'''.   Currently unboxed tuples are second class; fixing this would be a nice simplification.
     54
     55  * '''Implement overlap and exhaustiveness checking for pattern matching'''.  GHC's current overlap and exhaustiveness checker is old and inadequate.  Furthermore, it takes no account of GADTs and type families.
     56
     57 * '''Extend kinds beyond * and k1->k2'''.  With GADTs etc we clearly want to have kinds like `Nat`, so that advanced hackery at the type level can be done in a typed language; currently it's all effectively untyped.  A neat approach would be to re-use any data type declaration as a kind declaration.
     58
     59 * '''Extensible constraint domains'''.  Andrew Kennedy shows how to incorporate [http://research.microsoft.com/~akenn/units/index.html dimensional analysis] into an ML-like type system.  Maybe we could do an extensible version of this, so that it wasn't restricted to dimensions.  Integer arithmetic is another obvious domain. 
     60
     61 * Implement [http://repetae.net/john/recent/out/classalias.html John Meacham's class alias proposal]
    5162
    5263=== Parallel stuff ===
     
    5970  * Back end and code generation.  This is an active area at the moment, but there is sure to be more to do.  See suggestions in [wiki:BackEndNotes]
    6071
    61   * Implement [http://repetae.net/john/recent/out/classalias.html John Meacham's class alias proposal]
    6272
    6373=== Build system ===