13

Compiler theory seems to be a pretty vetted subject. What are some open problems or current research happening in the field?

goric
  • 215
  • 3
  • 10
  • 2
    I am in the mood for rambling comments today. Are you familiar with http://en.wikipedia.org/wiki/Full_employment_theorem ? – Raphael Jan 28 '11 at 09:33

2 Answers2

8

In my experience, I've seen the following new compiler developments:

  • Work on automating data parallelism (or at least, reducing the amount of explicit work done by the programmer). This typically requires extensions to the language as well.
  • Work on extreme optimization strategies such as supercompilation or partial evaluation (where a program is collapsed via evaluation until it is reduced to its "smallest" form and then compiled)

I've seen a variety of work on things such as type checkers and so on, but I assume you're talking more about compiler-specific stuff.

Liam O'Connor
  • 281
  • 2
  • 4
7

From when I left (but are probably still relevant):

  • Distributed processing:
    • Compiling the application to run on a distributed cluster of processors.
      This requires taking into consideration memory mapping (distribution of problem data) of data to processors and adding explicit code to request memory pages for reading/writing before they are actually needed to prevent processors stalls.
  • Parallel processing:
    • Compiler generated threaded code.
      Removing the need for developers to explicitly generate threaded code (because they are generally very bad at it).
Martin York
  • 101
  • 3