<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px;"><span style="font-family:'Helvetica'; font-size:medium; color:rgba(0, 0, 0, 0.5);"><b>Subject: </b></span><span style="font-family:'Helvetica'; font-size:medium;"><b>Ph.D position, Utrecht University, the Netherlands</b><br></span></div><br><br>===================================================<br>Vacancy PhD student on Realizing Optimal Sharing in the Functional Language Implementations<br>Utrecht University,<br>The Netherlands.<br>===================================================<br><br>Within the Software Technology group of the Information and Computing Sciences department of Utrecht University there is a vacancy for a PhD student to work on &nbsp;the efficient implementation of functional languages. The position is funded by NWO, the Netherlands Organization for Scientific Research.<br><br>-----------------------------------------------------------------------------------------<br>Project summary:<br><br>Lambda-calculus and term rewriting are models of computation lying at the basis of functional programming languages. Both possess syntactic meta-theories based on analyzing rewrite steps. Unfortunately, naive implementations are inefficient, since subterms are frequently copied.<br><br>To overcome this problem in both theoretical systems and actual implementations, duplicate work is avoided by using graph-based term representations, in which identical subterms can be (but not always are) shared. The question arises whether graph-representations and their reductions that are optimal in a theoretical sense can also be practical from an implementer's point of view. However, so far it is unclear whether nice theoretical ideas combine well with existing implementation methods. The overall-goal of this project is to answer this question in a back-and-forth communication between theoretical concepts and practical realizations. Starting points are the recent work on the optimal Lambdascope implementation based on context sharing, and the Haskell implementation developed at Utrecht University.<br><br>One of the open problems is whether the Lambdascope framework can be extended to efficiently represent &nbsp;sets of mutually recursive definitions. Another, whether global program analysis can discover where Lambdascope-based approaches solve problems due to insufficient sharing. If both questions can be solved, we want to combine Lambdascope-based implementations with conventional frameworks, and investigate how efficient the resulting implementations become. The unique combination of the theoretical depth from the Logic department and the implementation skills and compiler infrastructure from the Computer Science department make Utrecht University the optimal surroundings for such a project.<br><br>-----------------------------------------------------------------------------------------<div><span class="Apple-style-span" style="font-family: monospace; ">Project leaders are Prof.dr. Doaitse Swierstra and<br>dr. Vincent van Oostrom (principal investigator).</span></div><div><span class="Apple-style-span" style="font-family: monospace; "><br>The project will be executed in close cooperation between<br>&nbsp;&nbsp; * the Software Technology group (<a href="http://www.cs.uu.nl/wiki/Center">http://www.cs.uu.nl/wiki/Center</a>)&nbsp;of the Information and Computing Sciences department (<a href="http://www.cs.uu.nl/">http://www.cs.uu.nl/</a>)<br>&nbsp;&nbsp; * and the Theoretical Philosophy group<br>(<a href="http://www.uu.nl/EN/faculties/Humanities/research/researchinstitutes/zeno/research/theoreticalphilosophy/Pages/default.aspx">http://www.uu.nl/EN/faculties/Humanities/research/researchinstitutes/zeno/research/theoreticalphilosophy/Pages/default.aspx</a>)&nbsp;of the Philosophy department (<a href="http://www.phil.uu.nl/">http://www.phil.uu.nl/</a>),&nbsp;</span></div><div><font class="Apple-style-span" face="monospace"><br></font></div><div><span class="Apple-style-span" style="font-family: monospace; ">and between&nbsp;</span></div><div><span class="Apple-style-span" style="font-family: monospace; ">&nbsp;&nbsp; * the more practically oriented PhD&nbsp;student and&nbsp;</span></div><div><span class="Apple-style-span" style="font-family: monospace; ">&nbsp;&nbsp; * the more theory oriented postdoc.</span><br>-----------------------------------------------------------------------------------------<br><br>Requirements: Master degree in Computer Science, Logic, or equivalent. Good knowledge of functional programming, and several advanced computer science techniques. Knowledge of lambda-calculus implementations, Haskell, and compiler construction will be useful. Both theory and software development based on this should appeal to you.<br><br>Terms of employment: the PhD student should start as soon as possible, but no later than January 1, 2010. &nbsp;The position is for four years (after one year there will be an evaluation), full-time. Gross salary starts with  2042,-- per month in the first year and increases to  2612,-- in the fourth year of employment. &nbsp;The salary is supplemented with a holiday bonus of 8% and an end-of-year bonus of 3%. &nbsp;In addition we offer: a pension scheme, partially paid parental leave, facilities for child care, flexible employment conditions in which you may trade salary for vacation days or vice versa. Conditions are based on the Collective Employment Agreement of the Dutch Universities: <a href="http://www.vsnu.nl/Workstudy/Universities-as-employers-/Collective-Labour-Agreement.htm">http://www.vsnu.nl/Workstudy/Universities-as-employers-/Collective-Labour-Agreement.htm</a><br><br>More information:<br> &nbsp;&nbsp;* about the project can be found on <a href="http://www.cs.uu.nl/wiki/bin/view/Center/OptimalSharing">http://www.cs.uu.nl/wiki/bin/view/Center/OptimalSharing</a><br> &nbsp;&nbsp;* about the Software Technology group on <a href="http://www.cs.uu.nl/wiki/Center">http://www.cs.uu.nl/wiki/Center</a><br> &nbsp;&nbsp;* about the Information and Computing Sciences department on <a href="http://www.cs.uu.nl/">http://www.cs.uu.nl/</a><br> &nbsp;&nbsp;* about this vacancy can be obtained from Doaitse Swierstra (<a href="mailto:doaitse@cs.uu.nl">doaitse@cs.uu.nl</a>, &nbsp;+31 6 4613 6929).<br><br>Send your application in pdf (or another non-proprietary format) &nbsp;to <a href="mailto:SciencePenO@uu.nl">mailto:SciencePenO@uu.nl</a><span class="Apple-tab-span" style="white-space:pre">        </span><br><br>with a cc to <a href="mailto:doaitse@cs.uu.nl">mailto:doaitse@cs.uu.nl</a>. on or before Sept 31, 2009.<br><br>Mention vacancy nr 62910.<br></div>_______________________________________________<br>St-staff mailing list<br><a href="mailto:St-staff@cs.uu.nl">St-staff@cs.uu.nl</a><br><a href="http://mail.cs.uu.nl/mailman/listinfo/st-staff">http://mail.cs.uu.nl/mailman/listinfo/st-staff</a><br><br><br></body></html>