[Haskell] Postdoc ad: Domain-specific languages
Kathleen Fisher
kathleen.fisher at gmail.com
Mon Apr 25 20:35:24 UTC 2016
The Programming Language Group at Tufts University seeks applicants for a postdoctoral position on a new project that will focus on building tools to construct first-class embedded Domain-Specific Language.
As computing has taken on a larger role in many areas of science, there is an increasing need to provide experts in those domains with effective programming tools. Domain-specific programming languages (DSLs) are appealing because they allow domain experts to write programs using familiar concepts and abstractions. The problem is that implementing a new programming language -- including all the expected support tools, such as editors, type checkers, compilers, profilers, and debuggers -- is a substantial undertaking.
The goal of this project is to develop a system for building embedded domain-specific languages, including the full chain of support tools. Embedded DSLs (EDLSs) are convenient for language designers because they can inherit the infrastructure of the host language: syntax, type system, libraries, debugging support, etc. However, the experience of the domain user is less than ideal: error messages, debugging, and profiling all work at the level of the host language, not the DSL. In this project, we envision a different way of defining EDSLs, in which the language designers define the syntax, typing rules, and semantics of their language in a declarative fashion and then the system generates an implementation of the language and tool support, including a parser, a type checker, an interpreter, an optimizing compiler, a proof that the compiler and interpreter correctly implement the semantics, a debugger, a profiler, and other useful tools. The initial work on the project will be done in the context of Haskell.
The position is funded for two and half years (ending summer of 2017) starting immediately. The start date is negotiable, but all else equal we prefer to hire someone sooner rather than later. Salary is competitive. Work will be carried out at the main Tufts campus in Medford, MA.
QUALIFICATIONS
The selected applicant will work closely with Professors Kathleen Fisher and Sam Guyer as well as with graduate and undergraduate students. He or she will be expected to take a leadership role in the project, helping to formulate research directions and coordinate the activities of PhD, Masters and Undergraduate students. Applicants are required to either have a PhD or to be about to receive one. We are looking for someone with a strong background in at least one of the domains relating to the project: language design and implementation, compilers, formal specification and verification, type systems, and runtime systems (including memory management, debugging, and profiling). An explicit goal of the project is to produce working tools in addition to writing research papers, so we are looking for applicants with a track record of building software and writing papers. Applicants are expected to have good communication and organization skills.
APPLICATION INSTRUCTIONS
Interested candidates should apply through Interfolio at https://apply.interfolio.com/34187. An application should include (a) a cover letter explaining your interest in the position, (b) a current CV or resume, and (c) at least two letters of reference.
If you have any questions about the project or whether it is a good fit for you, please contact either Sam Guyer (sguyer at cs.tufts.edu) or Kathleen Fisher (kfisher at cs.tufts.edu).
More information about the Haskell
mailing list