[Haskell] Vacancy: Professor Software technology at Utrecht University
The Faculty of Science at Utrecht University is seeking to appoint a Full Professor in Software Technology to lead, alongside the other two chairs, the division of Software Systems within the Faculty. The full Professor directs and supervises research in the field of software technology, specifically in the design and development of formalisms and methodologies for effective program construction and program analysis. She/he develops new initiatives, aiming at research programs in software technology. This includes the acquisition of external research funds, both at the national and international levels, and the dissemination of research results and its applications to the relevant research communities. The full professor has a leading role in teaching and supervision. She or he contributes to the department’s curriculum development at BSc, MSc and PhD levels. The full professor plays an active role in the leadership and administrative duties of the Department and/or Faculty. For more information about this vacancy, go to http://goo.gl/1vLeVc ——— Johan Jeuring Department of Information and Computing Sciences Utrecht University The Netherlands http://www.jeuring.net/ ___ Haskell mailing list Haskell@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell
[Haskell] VACANCIES : 3x PhD position in Fuctional Programming
The research group of Software Technology is part of the Software Systems division of in the department of Information and Computer Science at the Utrecht University. We focus our research on functional programming, compiler construction, tools for learning and teaching (serious games, intelligent tutoring systems), program analysis, validation, and verification. Financed by the Technology Foundation STW, the EU, and Utrecht University we currently have job openings for: ** 3x PhD researcher (PhD student) in Functional Programming ** We are looking for PhD students to develop functional programming techniques related to parsing, rewriting, property-based testing, dependently typed programming, or program analysis, and to apply these techniques in several applications, such as distributed systems, applied games, dialogue management systems, or assessment tools. Besides research, the successful candidate will be expected to help supervise MSc students and assist courses. We prefer candidates to start no later than September 2015. - What we are looking for - The candidate should have an MSc in Computer Science with good grades, be highly motivated to pursue a PhD, and speak and write English well. Knowledge of functional programming, such as Haskell or ML is essential. - What we offer - The candidate is offered a full-time salaried position for four years. The salary is supplemented with a holiday bonus of 8% and an end-of-year bonus of 8,3% per year. In addition we offer: a pension scheme, partially paid parental leave, flexible employment conditions. Conditions are based on the Collective Labour Agreement Dutch Universities. The research group will provide the candidate with necessary support on all aspects of the project. More information is available on the website: Terms and employment: http://bit.ly/1elqpM7 Salary starts at € 2,083.- and increases to € 2,664.- gross per month in the fourth year of the appointment. Utrecht is a great place to live, having been ranked as one of the happiest places in the world, according to BBC travel. Living in Utrecht: http://bitly.com/HdbL0X - In order to apply - To apply please attach a letter of motivation, a curriculum vitae, and (email) addresses of two referees. Make sure to also include a transcript of the courses you have followed (at bachelor and master level), with the grades you obtained, and to include a sample of your scientific writing, such as your master thesis. It is possible to apply for this position if you are close to obtaining your Master's. In that case include a letter of your supervisor with an estimate of your progress, and do not forget to include at least a sample of your technical writing skills. Applications are accepted until the positions are filled. Send your application via email to Johan Jeuring: j.t.jeur...@uu.nl --- Contact person --- For further information you can direct your inquiries to: Johan Jeuring phone: +31 (0)30 253 4115/ (0) 6 40010053 e-mail: j.t.jeur...@uu.nl website: http://www.staff.science.uu.nl/~jeuri101/ ___ Haskell mailing list Haskell@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell
[Haskell] Vacancies: 4 PhD students Software Technology Utrecht University
4 x PhD position in Software Technology The research group of Software Technology is part of the Software Systems division of in the department of Information and Computer Science at the Utrecht University. We focus our research on functional programming, compiler construction, program analysis, validation, and verification. Financed by the Netherlands Organisation for Scientific Research (NWO), the EU, Technology Foundation STW and Utrecht University we currently have job openings for four PhD researchers (PhD students) in Software Technology. We are looking for PhD students to work on some of the following topics: * Version control of structured data The theory and practice underlying structure-aware version control systems capable of handling more than just text files. * Intelligent tutoring technologies Technologies for tutoring subjects such as functional programming, statistics, algebra, etc. * Serious games Domain-specific languages and technologies for specifying strategies for serious games. * iTasks iTasks is a formalism for specifying distributed tasks. Specify and test properties of iTasks, and give run-time feedback for iTasks. Besides research, the successful candidate will be expected to help supervise MSc students and assist teaching courses. We prefer candidates to start no later than September 2015. --- What we are looking for --- The candidate should have an MSc in Computer Science, be highly motivated, speak and write English well. Furthermore the successful candidate should be proficient in reporting scientific findings. Knowledge of and experience with at least some of the following areas (depending on the topic chosen to work on for your PhD) is essential: * functional programming, such as Haskell or ML; * datatype generic programming; * intelligent tutoring systems; * serious games; * strategies, rewriting, parsing; * modern version control systems such as git, mercurial, or darcs. -- What we offer -- The candidate is offered a full-time position for 4 years. A part-time position of at least 0.8 fte may also be possible. Salary starts at 2083 euro and increases to 2664 euro gross per month in the fourth year of the appointment. The salary is supplemented with a holiday bonus of 8% and an end-of-year bonus of 8.3% per year. In addition we offer: a pension scheme, partially paid parental leave, flexible employment conditions. Conditions are based on the Collective Labour Agreement Dutch Universities. The research group will provide the candidate with necessary support on all aspects of the project. How to apply To apply please attach a letter of motivation, a curriculum vitae, and (email) addresses of two referees. Make sure to also include a transcript of the courses you have followed (at bachelor and master level), with the grades you obtained, and to include a sample of your scientific writing, such as your master thesis. It is possible to apply for this position if you are close to obtaining your Master's. In that case include a letter of your supervisor with an estimate of your progress, and do not forget to include at least a sample of your technical writing skills. Application deadline is March 8, 2015. You can apply online through the University's website: http://tinyurl.com/qhlco6s --- Additional information --- If you have any questions regarding these positions, please contact Johan Jeuring +31 (0)640010053 j.t.jeur...@uu.nl Wouter Swierstra +31 (0)30 253 9207 w.s.swiers...@uu.nl ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] CFP: TFPIE 2015
Trends in Functional Programming in Education (TFPIE 2015) Call for papers https://wiki.science.ru.nl/tfpie/TFPIE2015 The 4th International Workshop on Trends in Functional Programming in Education, TFPIE 2015, will be held on June 2, 2015 in Sophia-Antipolis in France. It is co-located with the Symposium on Trends in Functional Programming (TFP 2015) which takes place from June 3 - 5. *** Goal *** The goal of TFPIE is to gather researchers, teachers and professionals that use, or are interested in the use of, functional programming in education. TFPIE aims to be a venue where novel ideas, classroom-tested ideas and work-in-progress on the use of functional programming in education are discussed. The one-day workshop will foster a spirit of open discussion by having a review process for publication after the workshop. The program chair of TFPIE 2015 will screen submissions to ensure that all presentations are within scope and are of interest to participants. Potential presenters are invited to submit an extended abstract (4-6 pages) or a draft paper (up to 16 pages) in EPTCS style. The authors of accepted presentations will have their preprints and their slides made available on the workshop's website/wiki. Visitors to the TFPIE 2015 website/wiki will be able to add comments. This includes presenters who may respond to comments and questions as well as provide pointers to improvements and follow-up work. After the workshop, presenters will be invited to submit (a revised version of) their article for review. The PC will select the best articles for publication in the journal Electronic Proceedings in Theoretical Computer Science (EPTCS). Articles rejected for presentation and extended abstracts will not be formally reviewed by the PC. TFPIE workshops have previously been held in St Andrews, Scotland (2012), Provo Utah, USA (2013), and Soesterberg, The Netherlands (2014). *** Program Committee *** Peter Achten, Radboud University Nijmegen, The Netherlands Edwin Brady, University of St Andrews, UK Johan Jeuring, Utrecht University and Open University, The Netherlands (Chair) Shriram Krishnamurthi, Brown University, US Rita Loogen, Philipps-Universität Marburg, Germany Marco Morazan, Seton Hall University, US Norman Ramsey, Tufts University, US *** Submission Guidelines *** TFPIE 2015 welcomes submissions describing techniques used in the classroom, tools used in and/or developed for the classroom and any creative use of functional programming (FP) to aid education in or outside Computer Science. Topics of interest include, but are not limited to: - FP and beginning CS students - FP and Computational Thinking - FP and Artificial Intelligence - FP in Robotics - FP and Music - Advanced FP for undergraduates - Tools supporting learning FP - FP in graduate education - Engaging students in research using FP - FP in Programming Languages - FP in the high school curriculum - FP as a stepping stone to other CS topics - FP and Philosophy *** Best Lectures *** In addition to papers, we request “best lecture” presentations. What is your best lecture topic in an FP related course? Do you have a fun way to present FP concepts to novices or perhaps an especially interesting presentation of a difficult topic? In either case, please consider sharing it. Best lecture topics will be selected for presentation based on a short abstract describing the lecture and its interest to TFPIE attendees. *** Submission *** Papers and abstracts can be submitted via easychair at the following link: https://easychair.org/conferences/?conf=tfpie2015 It is expected at at least one author for each submitted paper will attend the workshop. *** Important Dates *** April 7, 2015: Early Registration for TFP closes April 27, 2015: Submission deadline for draft TFPIE papers and abstracts May 3 2015: Notification of acceptance for presentation ?? (Probably May 22 2015): Registration for TFPIE closes - as does late registration for TFP June 2, 2015: Presentations in Sophia-Antipolis, France July 7, 2015: Full papers for EPTCS proceedings due. September 1, 2015: Notification of acceptance for proceedings September 22, 2015: Camera ready copy due for EPTCS Submission of an abstract implies no obligation to submit a full version; abstracts with no corresponding full versions by the full paper deadline will be considered as withdrawn. ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] FINAL CALL: Applied Functional Programming (AFP) Summerschool 7-18 July 2014, Utrecht, Netherlands
One week to go until the registration deadline... -- Johan Jeuring === AFP Summerschool 2014 === Applied Functional Programming (AFP) Summerschool July 7-18, 2014 Utrecht University, Department of Information and Computing Sciences Utrecht, The Netherlands Summerschool registration website: http://www.utrechtsummerschool.nl/courses/science/applied-functional-programming-in-haskell AFP website with edition 2013 info : http://www.cs.uu.nl/wiki/USCS contact: uscs-...@lists.science.uu.nl *** The 2014 edition of the Applied Functional Programming (AFP) Summerschool in Utrecht, Netherlands will be held from 7-18 July 2014. The summerschool teaches Haskell on both beginners and advanced levels via lectures and lab exercises. More info can be found via the references above, included here is an excerpt from the summerschool website: ``Typed functional programming in Haskell allows for the development of compact programs in minimal time and with maximal guarantees about robustness and correctness. The course introduces Haskell as well as its theoretical underpinnings such as typed lambda calculus, and Damas-Milner type inference. There is ample opportunity to put this all in practice during lab sessions. Typed functional programming languages allow for the development of robust, concise programs in a short amount of time. The key advantages are higher-order functions as an abstraction mechanism, and an advanced type system for safety and reusability. This course introduces Haskell, a state-of-the-art functional programming language, together with some of its theoretical background, such as typed lambda calculi, referential transparency, Damas-Milner type inference, type level programming, and functional design patterns. We will combine this with applications of functional programming, concentrating on topics such as language processing, building graphical user interfaces, networking, databases, and programming for the web. The goal of the course is not just to teach the programming language and underlying theory, but also to learn about the Haskell community and to get hands-on experience by doing lab exercises or a Haskell project of your own.'' *** ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] Video chair at ICFP
Dear people, We are busy organising ICFP 2014, which will happen together with the Haskell Symposium and many other events in Göteborg in Sweden from August 31 until September 6 2014. I am looking for a Video chair to organise the recording of the events on video. Tasks - prepare the video recording of the events: equipment (camera's, software, microphones?), required post-processing, ... - instruct student-volunteers in assisting the recording process - oversee the post-processing of the recordings, and the uploads Budget - we have some budget available for buying or renting equipment for the video recordings, or we can pay you for you bringing your own equipment - we will defray your costs for travelling to Göteborg, staying in Göteborg, and attending ICFP 2014 and affiliated events Please contact me if you are interested in this position/task, With kind regards, Johan Jeuring General chair for ICFP 2014 ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] Vacancy Professor Software Technology
Dear colleague,Want to teach and do research in an exciting environment, in the fourth most happy city on earth (http://www.bbc.com/travel/feature/20131022-living-in-the-worlds-happiest-places)? Or do you think a colleague might be a suitable candidate? Let us know. We have a vacancy for:Full Professor Software Technology (0.8 – 1.0 fte)The full professor directs and supervises research in the field of software technology, specifically in the design and development of formalisms and methodologiesfor effective program construction and program analysis. She or he develops new initiatives, aiming at research programs in software technology that are relevantfor software systems in general and for the departmental focus domain of game technology. This includes the acquisition of external research funds at the nationaland international level, and the dissemination, of research results and its applications, to the relevant research communities. The initiatives should be developedin line with worldwide trends in software technology such as software generation, domain-specific languages, and multi-core programming.The full professor has a leading role in teaching and supervision. She or he contributes to the department’s curriculum development at all levels: BSc, MSc, andPhD. The full professor plays an active role in the leadership and administrative duties of the Division of Software Systems, the Department and/or Faculty. ProfileCandidates must have an excellent track record in research, teaching and leadership, as exemplified by:Research:• A PhD degree in Computer Science or a closely related scientific field.• An excellent publication record, including papers in high-impact journals and conference proceedings.• Proven ability to obtain extramural funding for research and to provide leadership in collaborative research programs.Teaching:• Experience and enthusiasm for teaching and student supervision.• Experience and leadership in curriculum development.• Academic leadership:• An active role in leading (national and international) activities in the area of the chair and participation in academic communities.• An established international network of research partnerships with other leading research groups and institutions.• Experience in administrative roles at department or faculty level.Utrecht University employs a system of quality assessment for teaching and research with consequences for career development. This implies that, in addition tohaving a PhD in a relevant field of research, a successful candidate also possesses appropriate senior level academic teaching and research qualifications. TheFaculty may use an assessment as an instrument in the selection procedure. We offer a permanent position as full professor at 0.8 – 1.0 fte. The gross salary depends on qualifications and experience, and ranges between € 5,003.- and €7,285.- per month (salary scale H2, of the Collective Labour Agreement of the Dutch Universities).The salary is supplemented with a holiday bonus of 8% and an end-of-year bonus of 8.3% per year. In addition we offer: an excellent pension scheme, a partiallypaid parental leave, and flexible employment conditions. Conditions are based on the Collective Labour Agreement Dutch Universities.More information about terms of employment:http://www.uu.nl/EN/informationfor/jobseekers/Working-for-Utrecht-University/terms-of-employment/Pages/default.aspxAbout the department:§The Department of Information and Computing Sciences (http://www.cs.uu.nl/) has a strong national and international reputation in computer science and ininformation science. The department’s research activities are clustered into four divisions, viz. Software Systems, Artificial Intelligence, Virtual Worlds, andInteraction Technology. Each division is specialized in a specific research area within computer science and contributes from this area to the department’s overallfocus on Game Technology.The focus area of Game Technology deals with all technological aspects of games, and of interactive virtual experiences more in general; Game Technologyconstitutes one of the four strategic research themes of the Faculty of Science. While the research activities of the four computer-science divisions meet in theGame Technology area, research is not restricted to games application. Through collaboration with (often external) partners, the various divisions also connectwith the other strategic research themes of the university, viz. life sciences, sustainability, and youth and identity.The Department of Information and Computing Sciences offers educational bachelor programs in computer science and information science, and three (English)research master programs, viz. Computing Science, Game and Media Technology, and Business Informatics; the Department is further involved in the masterprogram Artificial Intelligence. Three years ago the Department introduced a track on Game Technology in the bachelor program in computer
[Haskell] Vacancy Assistant Professor Software Technology Utrecht University (1, 0 fte)
Assistant Professor Software Technology Utrecht University (1,0 fte)Job descriptionThe division Software Systems of the Department of Information and Computing Sciences is looking for an Assistant Professor for the bachelor programmes Computing Science and Information Science and the master programmes of the department, and for research in the area of software technology.You are expected to develop an independent line of research within the field of software technology in cooperation with the other members of the division Software Systems.The tasks include:performing scientific research in the field of software systems, in particular software technology;supervising PhD students and acquiring research funding;developing and teaching courses within the bachelor and master programmes of the department;supervising internships and theses;organizational activities within the division, department or faculty.QualificationsWe are looking for candidates with a PhD with expertise and experience in scientific education and research in computer science. Expertise in the fields of software technology, programming languages and typing systems, advanced programming methods, or compilers is required. Experience in academic education within a university setting is desired. You have published on the aforementioned areas in national and international conferences and / or journals. Well-developed teaching skills and command of English in speaking and writing are a requirement. Candidates who prefer part-time employment are also invited to apply by specifying the desired part-time ratio.OfferWe offer a position in a dynamic environment. The position is for at most five years. The total size of the position is 100%, but part-time is possible. The salary depends on education and experience and ranges between € 2,919 (scale 10) and € ,5070 (scale 12) gross per month for a full-time appointment. Additionally, excellent secondary benefits are provided, such as 8% holiday allowance and 8.3% end of year bonus.We also offer a pension scheme, partially paid parental leave and flexible working conditions. For more information see theterms of employment. The department provides the candidate the necessary support for the arrangements of the education and research line.About the organisationUtrecht University has great ambitions for its teaching quality and study success rates. This also applies to its clear research profiles which are centred around four themes: Sustainability, Life Sciences, Youth Identity, and Institutions. Utrecht University plays a prominent role in our society and contributes to finding the answers to topical and future societal issues.The Faculty of Science at Utrecht University comprises six departments: Biology, Pharmacy, Information and Computer Sciences, Chemistry, Mathematics and Physics and Astronomy. It has 3500 students and nearly 2000 employees, and is internationally known for its quality in research. The academic programs of the Faculty reflect developments in society and science of today.The Department of Information and Computer Science is nationally and internationally renowned for its fundamental research in computer science and information science. Its research is positioned around game technology, one of the four research themes of the Faculty of Science. The research of the department is grouped into four divisions: Software Systems, Artificial Intelligence, Virtual Worlds and Interaction Technology. The Department offers bachelor programmes in computer science and information science, and four English-language research master-programmes including Computing Science. High enrollment figures and good student ratings make the education very successful.Part of the research of the division Software Systems focuses on how programming languages, methods, and tools can be adapted to support program construction.More specifically, the research covers the following areas:programming languages and compiler construction-toolsprogram analysisinteraction analysis, error diagnosisadvanced programming methods: generic programming, dependently-typed programmingprogram testing and verificationThe division aims to design better programming languages and methods; to implement tools and languages that help programmers work more effectively; and to develop products and systems demonstrating the feasibility (and/or validity) of the ideas. An important application area studied in the department and the division is (serious) games. The division mainly contributes to the education in the bachelor programs information science and computer science, and to the master program Computing Science.Additional informationFor more information please contact Prof.dr. Johan Jeuring +31.30.253.4115 or +31.6.400.100.53, email:j.t.jeur...@uu.nl.ApplyYour application must contain a letter of motivation, your CV with publication list, teaching and research statement, and contact details of at least two references.You can respond via
[Haskell-cafe] Vacancy Assistant Professor Software Technology Utrecht University (1, 0 fte)
Assistant Professor Software Technology Utrecht University (1,0 fte)Job descriptionThe division Software Systems of the Department of Information and Computing Sciences is looking for an Assistant Professor for the bachelor programmes Computing Science and Information Science and the master programmes of the department, and for research in the area of software technology.You are expected to develop an independent line of research within the field of software technology in cooperation with the other members of the division Software Systems.The tasks include:performing scientific research in the field of software systems, in particular software technology;supervising PhD students and acquiring research funding;developing and teaching courses within the bachelor and master programmes of the department;supervising internships and theses;organizational activities within the division, department or faculty.QualificationsWe are looking for candidates with a PhD with expertise and experience in scientific education and research in computer science. Expertise in the fields of software technology, programming languages and typing systems, advanced programming methods, or compilers is required. Experience in academic education within a university setting is desired. You have published on the aforementioned areas in national and international conferences and / or journals. Well-developed teaching skills and command of English in speaking and writing are a requirement. Candidates who prefer part-time employment are also invited to apply by specifying the desired part-time ratio.OfferWe offer a position in a dynamic environment. The position is for at most five years. The total size of the position is 100%, but part-time is possible. The salary depends on education and experience and ranges between € 2,919 (scale 10) and € ,5070 (scale 12) gross per month for a full-time appointment. Additionally, excellent secondary benefits are provided, such as 8% holiday allowance and 8.3% end of year bonus.We also offer a pension scheme, partially paid parental leave and flexible working conditions. For more information see theterms of employment. The department provides the candidate the necessary support for the arrangements of the education and research line.About the organisationUtrecht University has great ambitions for its teaching quality and study success rates. This also applies to its clear research profiles which are centred around four themes: Sustainability, Life Sciences, Youth Identity, and Institutions. Utrecht University plays a prominent role in our society and contributes to finding the answers to topical and future societal issues.The Faculty of Science at Utrecht University comprises six departments: Biology, Pharmacy, Information and Computer Sciences, Chemistry, Mathematics and Physics and Astronomy. It has 3500 students and nearly 2000 employees, and is internationally known for its quality in research. The academic programs of the Faculty reflect developments in society and science of today.The Department of Information and Computer Science is nationally and internationally renowned for its fundamental research in computer science and information science. Its research is positioned around game technology, one of the four research themes of the Faculty of Science. The research of the department is grouped into four divisions: Software Systems, Artificial Intelligence, Virtual Worlds and Interaction Technology. The Department offers bachelor programmes in computer science and information science, and four English-language research master-programmes including Computing Science. High enrollment figures and good student ratings make the education very successful.Part of the research of the division Software Systems focuses on how programming languages, methods, and tools can be adapted to support program construction.More specifically, the research covers the following areas:programming languages and compiler construction-toolsprogram analysisinteraction analysis, error diagnosisadvanced programming methods: generic programming, dependently-typed programmingprogram testing and verificationThe division aims to design better programming languages and methods; to implement tools and languages that help programmers work more effectively; and to develop products and systems demonstrating the feasibility (and/or validity) of the ideas. An important application area studied in the department and the division is (serious) games. The division mainly contributes to the education in the bachelor programs information science and computer science, and to the master program Computing Science.Additional informationFor more information please contact Prof.dr. Johan Jeuring +31.30.253.4115 or +31.6.400.100.53, email:j.t.jeur...@uu.nl.ApplyYour application must contain a letter of motivation, your CV with publication list, teaching and research statement, and contact details of at least two references.You can respond via
[Haskell] Summer school on Applied Functional Programming at Utrecht University
We offer a summer school on Applied Functional Programming in Haskell August 19 - 30, 2013 Utrecht University. The deadline for registration is May 20, 2013. Almost 20 students have already registered. In the previous four occasions students were all very happy with the school and we plan to repeat this success this year. Among the intended audience are prospective master students who gained an interest in Functional Programming, e.g. by taking a general course on programming languages, and want to learn more about Haskell and its typical programming patterns. In previous years we have taught an introductory part (advanced bachelor level), an advanced part (beginning master level) and a shared part for both groups. Topics covered are, besides some examples of domain specific languages, monads, monad transformers, arrows, parser combinators and self-analysing programs, underlying principles, type inferencing, etc. Half of the course time is spent on a larger programming exercise; you can also come with a problem of your own if you want, and get help from the Utrecht University Software Technology group in finding the proper Haskell idioms, tools and libraries, for solving it. More information: http://www.cs.uu.nl/wiki/USCS/ Please forward this announcement to potential participants. Best, Doaitse Swierstra, Atze Dijkstra and Johan Jeuring ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell-cafe] Summer school on Applied Functional Programming at Utrecht University
We offer a summer school on Applied Functional Programming in Haskell August 19 - 30, 2013 Utrecht University. The deadline for registration is May 20, 2013. Almost 20 students have already registered. In the previous four occasions students were all very happy with the school and we plan to repeat this success this year. Among the intended audience are prospective master students who gained an interest in Functional Programming, e.g. by taking a general course on programming languages, and want to learn more about Haskell and its typical programming patterns. In previous years we have taught an introductory part (advanced bachelor level), an advanced part (beginning master level) and a shared part for both groups. Topics covered are, besides some examples of domain specific languages, monads, monad transformers, arrows, parser combinators and self-analysing programs, underlying principles, type inferencing, etc. Half of the course time is spent on a larger programming exercise; you can also come with a problem of your own if you want, and get help from the Utrecht University Software Technology group in finding the proper Haskell idioms, tools and libraries, for solving it. More information: http://www.cs.uu.nl/wiki/USCS/ Please forward this announcement to potential participants. Best, Doaitse Swierstra, Atze Dijkstra and Johan Jeuring ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell] ANNOUNCE: Palindromes 0.2
Palindromes 0.2 == Palindromes is a package for finding palindromes in files. Palindromes 0.2 is now available on hackage. Visit the homepage http://www.jeuring.net/Palindromes/ In version 0.2, the following features have been added: - Read from standard input, via the flag -i - More flexible flag handling - Read multiple files - Specify minimum length of palindromes returned, via the flag -m int For more information, consult the README file in the distribution. -- Johan Jeuring ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
Re: [Haskell-cafe] ANNOUNCE: Palindromes 0.1
Hi Henning, Thanks for the many suggestions. On Sun, 6 Sep 2009, Johan Jeuring wrote: The primary features of Palindromes include: * Linear-time algorithm for finding exact palindromes * Linear-time algorithm for finding text palindromes, ignoring spaces, case of characters, and punctuation symbols. You made me curious, whether there are palindromes in my texts. However, I have some difficulties getting sensible results from it. First I found a long palindrome, that was actually a code example for an array definition. This was using the option -t I suppose. So I wondered, whether this palindrome shadows nicer shorter palindromes in the same text. Indeed it might. By using -ts you will get all text palindromes around every position in the string, but I guess you found this option (the description of which was not correct, as you noticed). But on a long text you get (probably too) many results. How about an option for showing the n longest palindromes or palindromes with length larger than n? This makes sense. I will add an option -n which takes a number n and outputs all palindromes of length at least n. Then I found a palindrome in Functi[on sin is no]t defined How about restricting text palindromes to sequences that are bounded by space and punctuation? This makes sense as well. The Palindrome welcome message is a bit disturbing when running palindrome on a set of files. I see. I'll remove it. I also like to filter out HTML markup (with strip-html from tagchup package), before piping into palindrome. This however would require to run palindrome on standard input. Again, this makes sense. The options are '-x' for a single answer and '-xs' for multiple answers, but for '-ts' this logic does not hold. How about '-lt' or '-tl' ? I would like to have '-ts' to print all text palindromes (or actually, I would like to get all palindromes with at least 5 characters). Corrected. Documentation - The API is documented using Haddock and available on the Palindromes package site. It says, that the executable is FindingPalindromes, but actually it is palindromes, right? Right. Pretty much suggestions, I know. Don't get worried and thank you for the program! You're welcome, thanks for the suggestions. I'll try to upload a new version of palindromes that includes your suggestions in the next couple of weeks. -- Johan ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] ANNOUNCE: Palindromes 0.1
On 07 Sep 2009, at 21:21, Rafael Cunha de Almeida wrote: Johan Jeuring wrote: Palindromes == Palindromes is a package for finding palindromes in files. Visit the homepage http://www.jeuring.net/Palindromes/ A few options are not working well: Thanks. Both errors have been corrected in version 0.1.1. And I moved it from category Algorithm to category Algorithms. -- Johan $ ./palindromes --h * * Palindrome Finder * * palindromes: --h: openFile: does not exist (No such file or directory) $ cat f socorram-me subi no onibus em marrocos $ ./palindromes -tl f * * Palindrome Finder * * Usage: palindrome [command-line-options] input-file The following options are available: --h: This message -p : Print the longest palindrome (default) -ps: Print the longest palindrome around each position in the input -l : Print the length of the longest palindrome -ls: Print the length of the longest palindrome around each position in the input -t : Print the longest palindrome ignoring case, spacing and punctuation -tl: Print the length of the longest text palindrome $ ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell] ANNOUNCE: Palindromes 0.1
Palindromes == Palindromes is a package for finding palindromes in files. Visit the homepage http://www.jeuring.net/Palindromes/ Features The primary features of Palindromes include: * Linear-time algorithm for finding exact palindromes * Linear-time algorithm for finding text palindromes, ignoring spaces, case of characters, and punctuation symbols. Requirements Palindromes has the following requirements: * GHC version 6.8.1 or later - It has been tested with version 6.10.1. * Cabal library version 1.2.1 or later - It has been tested with version 1.6.0.1. Download Installation --- * Use cabal-install cabal install palindromes * If you don't have cabal-install, you must download the Palindromes package from HackageDB and install it manually. Get the `tar.gz` file and decompress it. http://hackage.haskell.org/package/palindromes Once downloaded, use the following commands for configuring, building, and installing the library. runghc Setup.lhs configure runghc Setup.lhs build runghc Setup.lhs install * Get the source: svn checkout https://subversion.cs.uu.nl/repos/staff.johanj.palindromes/ Documentation - The API is documented using Haddock and available on the Palindromes package site. Examples You can find example palindromes, on which Palindromes has been tested, in the `examples` directory of the source distribution. https://subversion.cs.uu.nl/repos/staff.johanj.palindromes/trunk/examples/palindromes Bugs Support -- To report bugs, use the Google Code project page for Palindromes. http://code.google.com/p/palindromes/ For general concerns and questions, email the author: johan at jeuring.net Licensing - Palindromes is licensed under the so-called BSD3 license. See the included `LICENSE` file. Credits --- Palindromes is based on the functional program developed by Johan Jeuring in his PhD thesis. The current author and maintainer of Palindromes is Johan Jeuring. http://www.jeuring.net/ ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell-cafe] ANNOUNCE: Palindromes 0.1
Palindromes == Palindromes is a package for finding palindromes in files. Visit the homepage http://www.jeuring.net/Palindromes/ Features The primary features of Palindromes include: * Linear-time algorithm for finding exact palindromes * Linear-time algorithm for finding text palindromes, ignoring spaces, case of characters, and punctuation symbols. Requirements Palindromes has the following requirements: * GHC version 6.8.1 or later - It has been tested with version 6.10.1. * Cabal library version 1.2.1 or later - It has been tested with version 1.6.0.1. Download Installation --- * Use cabal-install cabal install palindromes * If you don't have cabal-install, you must download the Palindromes package from HackageDB and install it manually. Get the `tar.gz` file and decompress it. http://hackage.haskell.org/package/palindromes Once downloaded, use the following commands for configuring, building, and installing the library. runghc Setup.lhs configure runghc Setup.lhs build runghc Setup.lhs install * Get the source: svn checkout https://subversion.cs.uu.nl/repos/staff.johanj.palindromes/ Documentation - The API is documented using Haddock and available on the Palindromes package site. Examples You can find example palindromes, on which Palindromes has been tested, in the `examples` directory of the source distribution. https://subversion.cs.uu.nl/repos/staff.johanj.palindromes/trunk/examples/palindromes Bugs Support -- To report bugs, use the Google Code project page for Palindromes. http://code.google.com/p/palindromes/ For general concerns and questions, email the author: johan at jeuring.net Licensing - Palindromes is licensed under the so-called BSD3 license. See the included `LICENSE` file. Credits --- Palindromes is based on the functional program developed by Johan Jeuring in his PhD thesis. The current author and maintainer of Palindromes is Johan Jeuring. http://www.jeuring.net/ ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Why is there no Zippable class? Would this work?
Why is there no Zippable class? There is. You can use Data.Zippable from http://hackage.haskell.org/package/bff. It gives you a function tryZip :: Zippable k = k a - k b - Either String (k (a,b)) The Either in the return type is to capture an error message in case the two structures are not of the same shape. This functionality can also be obtained from the generic programming library EMGM, with the function zip :: FRep3 ZipWith f = f a - f b - Maybe (f (a, b)) You can use Template Haskell to generate the necessary FRep3 instances. Once you have those you get many other generic functions for free. See http://hackage.haskell.org/package/emgm -- Johan Jeuring For example, for data Tree a = Leaf a | Node (Tree a) (Tree a) you would have: instance Zippable Tree where tryZip (Leaf a) (Leaf b) = Right (Leaf (a,b)) tryZip (Node a1 a2) (Node b1 b2) = do z1 - tryZip a1 b1 z2 - tryZip a2 b2 return (Node z1 z2) tryZip _ _ = Left Structure mismatch. Of course, you can get an unsafe zip by composing tryZip with a fromRight. What's more, the mentioned package contains an automatic Template Haskell deriver for Zippable instances, so you don't have to write the above instance definition yourself. The implementation is by Joachim Breitner. Ciao, Janis. -- Dr. Janis Voigtlaender http://wwwtcs.inf.tu-dresden.de/~voigt/ mailto:vo...@tcs.inf.tu-dresden.de ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Foldable for BNFC generated tree
Hi Deniz, Deniz Dogan wrote: So, basically I'd like some sort of folding functionality for these data types, without having to hack the lexer/parser myself (parameterising the data types), because as I said they're being generated by BNFC. What exactly do you mean by folding functionality? Folding as in the Foldable type class applies to containers, which your data type isn't. Perhaps you're looking for generic programming? There are several good GP libraries out there: * EMGM: http://www.cs.uu.nl/wiki/GenericProgramming/EMGM * Uniplate: http://community.haskell.org/~ndm/uniplate/ * SYB: http://www.cs.vu.nl/boilerplate/ See also Neil Mitchell's blog for some examples: http://neilmitchell.blogspot.com/2009/03/concise-generic-queries.html You're right, what I was asking for didn't make much sense... I was really looking for GP. If I interpret your question correctly, you want a fold for a set of mutually recursive datatypes without type parameters. This function is available in the generic programming library multirec: http://hackage.haskell.org/cgi-bin/hackage-scripts/package/multirec Kind reagrds, Johan Jeuring ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Supplying a default implementation for a typeclass based on another class
Now, that's fine enough, but for simplicity (and for wireshark), I'd like to be able to have Binary fall back on an instance based on Show/Read for any type that lacks any other Binary instance.. Well, I understand why this would be somewhere between extremely hard and impossible in haskell '98, but I'm not entirely up on all the extensions, so I thought I'd ask - given every extension implemented in ghc 6.10.1, is there any reasonable way to do this? I'm not sure what you mean by falling back on Show/Read instances, but this seems like a typical generic programming problem. Recent releases include the EMGM and SYB libraries for generic programming. -- Johan Jeuring ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] data declarations should provide fold functions
I know the short-term answer is use TH to derive folds if I want them, but I think such an important concept should probably be part of the language. The fold function is an example of a generic program, which can be defined using generic programming libraries. Since the fold has to know about the recursive structure of a datatype, not all (actually, very few) generic programming libraries can be used to define a fold. An example of a recent library that can define folds is multirec (developed by our own group, blatant self promotion): http://hackage.haskell.org/cgi-bin/hackage-scripts/package/multirec A description of the library can be found in http://www.cs.uu.nl/research/techreps/UU-CS-2008-019.html Older generic programming approaches such as PolyP could define the fold too, be it only for so-called regular (non mutually recursive) datatypes. The multirec library defines folds for mutually recursive datatypes. The released version of multirec doesn't include the TH files for generating the boilerplate code (for example, embedding-projection pairs for datatypes) necessary for using the library. However, the head has TH support for this. All the best, Johan Jeuring Tim Newsham http://www.thenewsh.com/~newsham/ ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Deriving
What happens when a type adds driving such as: newtype SupplyT s m a = SupplyT (StateT [s] m a) deriving (Functor, Monad, MonadTrans, MonadIO) Two questions: How does the deriving implement the instance? Is there a way for me to add my own classes in the deriving? for example newtype . deriving( xyz) In general you would have to resort to generic programming techniques to obtain your own deriving mechanism. See the generics category on Hackage for libraries: http://hackage.haskell.org/packages/archive/pkg-list.html To find out what you can do with the various generic programming techniques, you can read (shameless plugs): Alexey Rodriguez Yakushev, Johan Jeuring, Patrik Jansson, Alex Gerdes, Oleg Kiselyov, Bruno C. d. S. Oliviera. Comparing Libraries for Generic Programming in Haskell. In Andy Gill, editor, Proceedings of the ACM SIGPLAN Haskell Symposium. An extended version is available as Technical report Utrecht University UU-CS-2008-010, 2008. Ralf Hinze, Johan Jeuring, and Andres Löh. Comparing approaches to generic programming in Haskell. In Roland Backhouse, Jeremy Gibbons, Ralf Hinze, and Johan Jeuring, editors, Lecture notes of the Spring School on Datatype-Generic Programming 2006, LNCS 4719, pages 72 - 149, 2007, Springer-Verlag. -- Johan Jeuring ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Re: [Haskell] Compiler Construction course using Haskell?
Dear Johannes, Besides the IPT course, we also teach a course hat used to be called grammars and parsing. This course is taken before the compiler construction course. In this course we deal with parser combinators, datatypes, folds, first and follow, LL(1), and some more stuff, all in Haskell. The lecture notes are available from the webpage for the course: http://www.cs.uu.nl/docs/vakken/gont/literatuur.html The web page is in Dutch, but the lecture notes are in English. All the best, Johan On 20 Aug 2008, at 21:47, Johannes Waldmann wrote: Thanks for all the pointers. This is very useful. On parsers: yes, LL/LR theory and table-based parsers have been developed for a reason and it's no easy decision to throw them out. Still, even Parsec kind of computes the FIRST sets? And - I positively hate preprocessors. I really want my domain specific languages embedded because I want to use Haskell's types, functions, modules etc. for the domain specific objects (parsers, AST walkers, etc.) Best regards, J.W. ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell] Presentations at Dutch Functional Programming Day 2008
Most of the presentations at the Dutch Functional Programming Day 2008 are now available on-line: http://people.cs.uu.nl/johanj/FPDag2008/ All slides are in English. -- Johan ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] PhD student on Real-life datatype-generic programming
=== Vacancy PhD student on Real-life datatype-generic programming Software Technology, Utrecht University, The Netherlands. === 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 Real-life datatype-generic programming. The position is funded by NWO, the Netherlands Organisation for Scientific Research. - Project summary: Datatype-generic programming has been around for more than 10 years now. We think a lot of progress has been made in the last decade. As an example, there are more than 10 proposals for generic-programming libraries or language extensions just for the lazy functional- programming language Haskell. Although generic programming has been applied in several applications, it lacks users for real-life projects. This is understandable. Developing a large application takes a couple of years, and choosing a particular approach to generic programming for such a project involves a risk. Few approaches that have been developed over the last decade are still supported, and there is a high risk that the chosen approach will not be supported anymore, or that it will change in a backwards-incompatible way in a couple of years time. We propose to create an environment that supports developing real- life applications using generic-programming techniques. We will focus on developing: - a library or a mixture of a library with a language extension for which we will guarantee continuing support. - an example of a real-life application fundamentally using generic- programming techniques. This application will serve as a showcase for generic-programming support for software development and evolution. - generic-programming design patterns. The usage of the generic- programming techniques in real-life projects will exhibit recurrent patterns, and will give valuable advice for and help with developing other applications using generic-programming techniques. Thus we will show how generic programming can be used to develop powerful tools in little time, and that the resulting tools are easy to maintain, adapt, and reuse. - Requirements: Master degree in Computer Science, or equivalent. Good knowledge of functional programming, and several advanced computer science techniques. Knowledge of Haskell, parsing, rewriting, strategies, generic programming, etc. will be useful. Terms of employment: the PhD student should start as soon as possible, but no later than January 1, 2008. The position is for four years (after one year there will be an evaluation), full-time. Gross salary starts with € 1956,-- per month in the first year and increases to € 2502,-- in the fourth year of employment. The salary is supplemented with a holiday bonus of 8% and an end-of-year bonus of 3%. 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. More information about the project can be found on http:// www.cs.uu.nl/~johanj/publications/nwo-ew2006.pdf More information about the Software Technology group on http:// www.cs.uu.nl/wiki/Center More information about the Information and Computing Sciences department on http://www.cs.uu.nl/ More information about this vacancy can be obtained from Johan Jeuring ([EMAIL PROTECTED], http://www.cs.uu.nl/~johanj/, +31 6 40010053). Send your application in pdf (or another non-proprietary format) to [EMAIL PROTECTED] with a cc to [EMAIL PROTECTED] on or before July 31, 2007. We expect to arrange interviews in September. Mention vacancy nr 62712. ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell-cafe] PhD student on Real-life datatype-generic programming
=== Vacancy PhD student on Real-life datatype-generic programming Software Technology, Utrecht University, The Netherlands. === 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 Real-life datatype-generic programming. The position is funded by NWO, the Netherlands Organisation for Scientific Research. - Project summary: Datatype-generic programming has been around for more than 10 years now. We think a lot of progress has been made in the last decade. As an example, there are more than 10 proposals for generic-programming libraries or language extensions just for the lazy functional- programming language Haskell. Although generic programming has been applied in several applications, it lacks users for real-life projects. This is understandable. Developing a large application takes a couple of years, and choosing a particular approach to generic programming for such a project involves a risk. Few approaches that have been developed over the last decade are still supported, and there is a high risk that the chosen approach will not be supported anymore, or that it will change in a backwards-incompatible way in a couple of years time. We propose to create an environment that supports developing real- life applications using generic-programming techniques. We will focus on developing: - a library or a mixture of a library with a language extension for which we will guarantee continuing support. - an example of a real-life application fundamentally using generic- programming techniques. This application will serve as a showcase for generic-programming support for software development and evolution. - generic-programming design patterns. The usage of the generic- programming techniques in real-life projects will exhibit recurrent patterns, and will give valuable advice for and help with developing other applications using generic-programming techniques. Thus we will show how generic programming can be used to develop powerful tools in little time, and that the resulting tools are easy to maintain, adapt, and reuse. - Requirements: Master degree in Computer Science, or equivalent. Good knowledge of functional programming, and several advanced computer science techniques. Knowledge of Haskell, parsing, rewriting, strategies, generic programming, etc. will be useful. Terms of employment: the PhD student should start as soon as possible, but no later than January 1, 2008. The position is for four years (after one year there will be an evaluation), full-time. Gross salary starts with € 1956,-- per month in the first year and increases to € 2502,-- in the fourth year of employment. The salary is supplemented with a holiday bonus of 8% and an end-of-year bonus of 3%. 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. More information about the project can be found on http:// www.cs.uu.nl/~johanj/publications/nwo-ew2006.pdf More information about the Software Technology group on http:// www.cs.uu.nl/wiki/Center More information about the Information and Computing Sciences department on http://www.cs.uu.nl/ More information about this vacancy can be obtained from Johan Jeuring ([EMAIL PROTECTED], http://www.cs.uu.nl/~johanj/, +31 6 40010053). Send your application in pdf (or another non-proprietary format) to [EMAIL PROTECTED] with a cc to [EMAIL PROTECTED] on or before July 31, 2007. We expect to arrange interviews in September. Mention vacancy nr 62712. ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell] ICFP Programming Contest 2007
Want to show off your programming skills? Your favorite programming language? Your best programming tools? Join the ICFP Programming Contest 2007! The 10th ICFP Programming Contest celebrates a decade of contests. This is one of the world's most advanced and prestiguous programming contest you can enter. For free! Book July 20 - 23, 2007. Check out http://www.icfpcontest.org/. ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell-cafe] ICFP Programming Contest 2007
Want to show off your programming skills? Your favorite programming language? Your best programming tools? Join the ICFP Programming Contest 2007! The 10th ICFP Programming Contest celebrates a decade of contests. This is one of the world's most advanced and prestiguous programming contest you can enter. For free! Book July 20 - 23, 2007. Check out http://www.icfpcontest.org/. ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell] Vacancy for a PhD student
(Knowledge of Haskell is a big plus; implementation of most of the tools will be done in Haskell.) Vacancy: PhD student in the Strategy Feedback project 1+3 years, Open University the Netherlands, location: Heerlen (preference). The project: In many subjects students have to acquire procedural skills. Problems in mathematics are often solved using a standard procedure, such as for example solving a system of linear equations by subtracting equations from top to bottom, and then substituting variables from bottom to top. Problems in computer science, physics, chemistry, electrotechnics, and other subjects, often require procedural skills as well. Furthermore, procedural skills appear at any educational level. E-learning systems offer excellent possibilities for practicing procedural skills. The first explanations and motivation for a procedure that solves a particular kind of problems are probably best taught in a class room, or studied in a book, but the subsequent practice can often be done behind a computer. There exist many e-learning systems or intelligent tutoring systems that support practicing procedural skills. The tools vary widely in breadth, depth, user-interface, etc, but, unfortunately, almost all of them lack sophisticated techniques for providing immediate feedback. If feedback mechanisms are present, they are hard coded in the tools, often even with the exercises. This situation hampers the usage of e-learning systems for practicing procedural skills. This project aims to investigate techniques for providing flexible and immediate feedback in tools that support practicing procedural skills. We want to use advanced techniques from computer science, taken from fields such as term rewriting, strategies, error-correcting parsers, and generic programming to provide feedback at each intermediate step from the start towards the solution of an exercise. We want to further develop some of these techniques, and apply and experiment with them in the domain of e-learning systems. Our goal is to obtain e-learning systems that give immediate and useful feedback. We will cooperate on this project with the Software Technology group from Utrecht University. Requirements: University degree in Computer Science. Good knowledge of functional programming, and several advanced computer science techniques. Knowledge of parsing, rewriting, strategies, generic programming, etc. will be useful. More information about the project can be found on http://ideas.cs.uu.nl/wiki/index.php/IDEAS:StrategicFeedback or contact Johan Jeuring ([EMAIL PROTECTED], +31 6 40010053). To apply: send a letter and your curriculum vitae before May 5, 2007 to: Open Universiteit Nederland, afdeling Personele ondersteuning, Postbus 2960, 6401 DL Heerlen. U kunt ook or an e-mail to: [EMAIL PROTECTED] Mention vacancynr FAC/INF/07024 In both cases, please cc Johan Jeuring ([EMAIL PROTECTED]). ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell-cafe] Vacancy for a PhD student
(Knowledge of Haskell is a big plus; implementation of most of the tools will be done in Haskell.) Vacancy: PhD student in the Strategy Feedback project 1+3 years, Open University the Netherlands, location: Heerlen (preference). The project: In many subjects students have to acquire procedural skills. Problems in mathematics are often solved using a standard procedure, such as for example solving a system of linear equations by subtracting equations from top to bottom, and then substituting variables from bottom to top. Problems in computer science, physics, chemistry, electrotechnics, and other subjects, often require procedural skills as well. Furthermore, procedural skills appear at any educational level. E-learning systems offer excellent possibilities for practicing procedural skills. The first explanations and motivation for a procedure that solves a particular kind of problems are probably best taught in a class room, or studied in a book, but the subsequent practice can often be done behind a computer. There exist many e-learning systems or intelligent tutoring systems that support practicing procedural skills. The tools vary widely in breadth, depth, user-interface, etc, but, unfortunately, almost all of them lack sophisticated techniques for providing immediate feedback. If feedback mechanisms are present, they are hard coded in the tools, often even with the exercises. This situation hampers the usage of e-learning systems for practicing procedural skills. This project aims to investigate techniques for providing flexible and immediate feedback in tools that support practicing procedural skills. We want to use advanced techniques from computer science, taken from fields such as term rewriting, strategies, error-correcting parsers, and generic programming to provide feedback at each intermediate step from the start towards the solution of an exercise. We want to further develop some of these techniques, and apply and experiment with them in the domain of e-learning systems. Our goal is to obtain e-learning systems that give immediate and useful feedback. We will cooperate on this project with the Software Technology group from Utrecht University. Requirements: University degree in Computer Science. Good knowledge of functional programming, and several advanced computer science techniques. Knowledge of parsing, rewriting, strategies, generic programming, etc. will be useful. More information about the project can be found on http://ideas.cs.uu.nl/wiki/index.php/IDEAS:StrategicFeedback or contact Johan Jeuring ([EMAIL PROTECTED], +31 6 40010053). To apply: send a letter and your curriculum vitae before May 5, 2007 to: Open Universiteit Nederland, afdeling Personele ondersteuning, Postbus 2960, 6401 DL Heerlen. U kunt ook or an e-mail to: [EMAIL PROTECTED] Mention vacancynr FAC/INF/07024 In both cases, please cc Johan Jeuring ([EMAIL PROTECTED]). ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell] Dutch Functional Programming Day 2008
[Apologies for the following posting in Dutch. This message will only be sent once. In the email I ask interested people (presumably Dutch) to attend a (yearly) meeting about functional programming in the Netherlands, and to register to a Dutch mailing list about functional programming.] --- Eerste (en wat vroege) aankondiging: De functioneel programmeren dag 2008 vindt plaats op: 11 januari 2008 bij de Open Universiteit op het studiecentrum Utrecht: http://www.ou.nl/eCache/DEF/1/931.html Aanmelden, zowel voor deelname als voor het geven van een presentatie, is nu al mogelijk! Zie ook: http://www.cs.uu.nl/~johanj/FPDag2008/ Ik heb deze email gestuurd naar zowel de fp-nl lijst, als een redelijk groot aantal andere mogelijk geinteresseerden. Ik ben van plan om na deze email de aankondigingen alleen maar meer naar fp-nl te sturen, dus: meld je aan bij de fp-nl lijst op https://mail.cs.uu.nl/mailman/listinfo/fp-nl als je verdere aankondigingen van deze dag wilt ontvangen (fp-nl is een lijst met erg weinig verkeer, en wat dat betreft dus redelijk onschuldig). Programma: 10:00-10:30 Koffie 10:30-12:00 Presentaties 12:00-13:00 Lunch 13:00-14:30 Presentaties 14:30-15:00 Thee 15:00-16:00 Presentaties 16:00-? borrel Met vriendelijke groet, Johan Jeuring ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] Common library for generic programming
Dear haskellers, Generic programming has been around for more than 10 years now. We think a lot of progress has been made in the last decade. As an example, there are more than 10 proposals for libraries or language extensions only for Haskell. The success of generic programming has also caused a problem: although generic programming has been applied in several applications, it lacks actual users for real-life projects (HaRe using Strafunski is maybe an exception). This is understandable: choosing a particular approach to generic programming for a real-life project is rather risky: few approaches that have been developed over the last decade are still supported, and there is a high risk that the chosen approach will not be supported anymore, or that at least it will change in a backwards incompatible way in a couple of years time. We have recently started an initiative to design a common library for generic programming, which should work together with most of the Haskell compilers, and for which we hope to guarantee support for a longer period. If you want to get involved (or just want to see the discussion), you can subscribe to the mailing list [EMAIL PROTECTED], see http://www.haskell.org/mailman/listinfo/generics -- Johan Jeuring and Andres Loeh ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
Re: Re[2]: [Haskell-cafe] instance Binary Data
Hello Bulat, In the preliminary version of our paper about comparing different approaches to generic programming in Haskell, you can find a number of implementations of serialization of values of arbitrary datatypes to lists of bits. Implementations in Generic Haskell, DrIFT, SYB, and other approaches to generic programming. I'm not sure if this is what you are looking for, but it is at least related. See the paper Comparing approaches to generic programming in Haskell available via http://www.cs.uu.nl/~johanj/publications/publications.html Kind regards, Johan Jeuring On 12-jul-2006, at 8:15, Bulat Ziganshin wrote: Hello Joel, Tuesday, July 11, 2006, 1:44:31 PM, you wrote: thank you. i don't even thought how that can be done. i guess that Data values contains two parts - describing type (Constr?) and value itself. Serializing value is even easier than (already implemented) gshow/gread, and if it can use Binary instance instead of general algorithm whenever possible, it would be ideal Constr (or some type representation) is just value of some type, after all. So, for it's serialization we can use either gshow/gread, or general binary serialization algorithm, or make custom Binary instance that is the general thoughts, i hope that someone knowing better this infrastructure will explain this dark area to me I don't see how this can work for arbitrary types without auto- generating the serialization code. Once the code is generated you can just store the type dictionary at the beginning of the file and use it to deserialize. I'm not sure this can be done on top of Binary since the type tag will determine the Binary instance to use. On Jul 11, 2006, at 7:38 AM, Bulat Ziganshin wrote: Hello Haskell, one Streams library user asked me about support of serialization TOGETHER with type information which means implementation of instance Binary Data (any other variants?). can anyone describe me how i can implement this? Binary instance is very like Show/Read, just uses compact binary encoding of values -- http://wagerlabs.com/ -- Best regards, Bulatmailto:[EMAIL PROTECTED] ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] develop new Haskell shell?
Who wants to try devloping a new shell with me? Also: http://www.cse.unsw.edu.au/~dons/h4sh.html And (in Clean): Rinus Plasmeijer and Arjen van Weelden. A functional shell that operates on typed and compiled applications. In Varmo Vene and Tarmo Uustalu, editors, Advanced Functional Programming, 5th International Summer School, AFP 2004, University of Tartu, Revised Lectures, volume 3622 of Lecture Notes in Computer Science, pages 245-272, Tartu, Estonia, August 2004. Springer http://www.cs.ru.nl/A.vanWeelden/index.php?p=publications -- Johan ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Haskell XSLT interpreter?
Has anyone written a pure haskell xslt interpreter? If not, how difficult would it be to do so? A master student of mine implemented XSLT in Haskell a couple of years ago. I've uploaded his thesis on http://www.cs.uu.nl/~johanj/MSc/danny.pdf If you're interested in the code, mail me. His implementation is partially in Haskell, partially in attribute grammar code (which generates Haskell using the Utrecht AG system). The code hasn't been used since 2001, so it might contain some bitrot. -- Johan ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell] Re: Re[2]: [Template-haskell] new TH tutorial (request for comments)
JW I'd like to read some overview and comparison on second-level JW programming in Haskell (and if there is none, I'm willing to contribute): This won't be of much help right now, but Ralf Hinze, Andres Loh and I are preparing lecture notes on Comparing approaches to generic programming for the Spring School on Datatype-Generic Programming 2006, to be held in Nottingham, April 2006, see http://www.cs.nott.ac.uk/ssdgp2006/ We intend to write an overview that would hopefully address some of the questions you have. If you're interested I can probably send you a preliminary version earlier (by the end of March). -- Johan ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
Re: [Haskell] Compiling wxHaskell from source?
I cannot build it on Mac OSX either. I think it has to do with GCC 4.x. I managed to build wxHaskell on Mac OSX 10.4. Make sure to have the latest XCode, but also make sure you use gcc 3.3 instead of gcc 4.?. You can reset gcc by means of gcc_select. -- Johan ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] Haskell Workshop Steering Committee
At the Haskell workshop in Tallinn in September it was decided to set up a Haskell Workshop Steering Committee. The main purpose of the Haskell Workshop Steering Committee is to provide continuity of the workshop and to offer help and advice to the current organizer(s) of the workshop. I'm pleased to announce the Haskell Workshop Steering Committee, which has been approved by ACM SIGPLAN. You can find more information about the Haskell Workshop and its Steering Committee on http://www.haskell.org/haskell-workshop/ -- Johan Jeuring ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
Re: [Haskell-cafe] functional programming school
I am looking for a functional programming summer school in the next 12 months. I realise there was one August this year, does anyone know of any others coming up? We want to organize the next Advanced Functional Programming School in the summer of 2006 (two years after the last). A call for organizers will be posted in the next couple of months. -- Johan Jeuring ___ Haskell-Cafe mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell] Memo function help
Hi Tom, I want to use the memo function for implementing a dynamic programming algorithm in Haskell. This is needed to cache intermediate results. Can anyone tell me where I can find some examples that use the memo function or even a tutorial. Here are some refs Hughes, 1985. @inproceedings{hughes:lazy-memo, TITLE = {{Lazy Memo-functions}}, AUTHOR = {R. J. M. Hughes}, BOOKTITLE = {{Proceedings 1985 Conference on Functional Programming Languages and Computer Architecture}}, ADDRESS = {Nancy, France}, YEAR = {1985} } (I think this appeared in LNCS) or Ralf Hinze. Memo functions, polytypically!. In Johan Jeuring, editor, Proceedings of the Second Workshop on Generic Programming, WGP 2000, Ponte de Lima, Portugal, 6th July 2000, see http://www.cs.uu.nl/~johanj/wgp2000/wgp2000cfp.html#Programme Cheers, Johan ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Re: [Haskell-cafe] Passing types as arguments
We pass values as proxies for types extensively in the Scrap your boilerplate scheme. The paper is on my home page. The 'typeOf' function is a good example. Passing types as arguments to functions is the main idea behind generic programming, intentional programming, polytypic programming, etc. Information can be found in papers of Simon Peyton Jones, Ralf Hinze, Andres Loh, myself, Patrik Jansson, and many other people. I have links to many of these people on my homepage: http://www.cs.uu.nl/~johanj/ -- Johan | -Original Message- | From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of | [EMAIL PROTECTED] | Sent: 12 March 2004 03:50 | To: [EMAIL PROTECTED] | Subject: [Haskell-cafe] Passing types as arguments | | G'day everyone. | | Some time ago a suggestion came up about passing types as arguments | to functions: | | http://www.haskell.org/pipermail/haskell/2003-June/012184.html | | As a matter of curiosity, the topic has come up again on the wiki: | | http://haskell.org/hawiki/StudyGroup/GraphExamplesInHaskell/WhySum3 | | For this example, we don't just want to pass types, we also want to | pattern match on them. | | I'm curious if anyone else has put any thought to this idea. Is it just | a syntax issue, or are there bad interactions with other parts of the | type system? | | Cheers, | Andrew Bromage | ___ | Haskell-Cafe mailing list | [EMAIL PROTECTED] | http://www.haskell.org/mailman/listinfo/haskell-cafe ___ Haskell-Cafe mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell-cafe ___ Haskell-Cafe mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell] HaXml and XML Schema
I have started thinking about an extension of HaXml to better support XML Schema, i.e., to generate appropriate types (like DtdToHaskell) automatically (cf. Castor for Java). However, it is not obvious to me how to model mixed content (character data appears alongside subelements, i.e., it is not confined to the deepest subelement). We have worked on a XML Schema Haskell data binding, see Frank Atanassow, Dave Clarke, and Johan Jeuring. Scripting XML with Generic Haskell. In Proceedings of the 7th Brazilian Symposium on Programming Languages, SBLP 2003, 2003. and for just the data binding Frank Atanassow, Dave Clarke, and Johan Jeuring. UUXML: A Type-Preserving XML Schema Haskell Data Binding. Both are available from my homepage: http://www.cs.uu.nl/~johanj/publications/publications.html The modelling of ,ixed content is rather intricate, I'm afraid. -- Johan ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Re: sequencing data structures
I want to sequence data structures in an efficient manner, to store them to files and to send them over the network. Simply deriving Show and Read is not very good, because it's space inefficient and read cannot give any output until the whole data structure is parsed. So I thought I should store them in some space efficient format. First problem: how to make them derivable (so that I don't have to write boilerplate class instances for all my data structures). I read the derivable type classes paper, but it's not implemented in ghc (only Unit and :+: and :*: are, which is not enough). So how to go about it? Using DrIFT? Template Haskell? [Shameless plug]: This is typically the kind of thing Generic Haskell was designed for: http://www.generic-haskell.org/ For more information you can also consult your local Generic Programming expert Patrik Jansson. -- Johan Jeuring ___ Haskell-Cafe mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell-cafe
Call for organizers: The 5th Advanced Functional Programming School, 2004
Call for organizers: The Advanced Functional Programming School, 2004 http://www.cs.uu.nl/~johanj/afp/ We solicit plans for organizing the next Advanced Functional Programming School. Since 1995 there have been four Schools on Advanced Functional Programming in * 2002, LNCS 2638, Oxford, UK * 1998, LNCS 1608, Braga, Portugal * 1996, LNCS 1129, Olympia, WA, USA * 1995, LNCS 925, Baastad, Sweden The goals of this series of schools are: * Bring computer scientists, in particular young researchers and programmers, up to date with the latest afp techniques. * Bridge the gap between results presented at programming conferences and material from introductory textbooks on functional programming. * Use afp techniques in programming in the real world. The approach we take to achieve these goals in the schools is * In depth lectures about afp techniques, taught by experts in the field. * Lectures are accompanied by practical problems to be solved by the students at the school. The problems guide the students' learning to a great extent. This implies that there has to be a lab at the school site. * Group work is stimulated, especially because the practical problems will typically be too large for a single person. Functional programming is interpreted broadly, to encompass languages that are strict and lazy, pure and impure, typed and untyped, sequential and concurrent. The lecture notes of the Advanced Functional Programming schools are published after the school, see LNCS 925, 1129, 1608, and 2638. The organizers are responsible for publishing the lecture notes. Please submit a proposal for organizing the next advanced functional programming school. Your proposal should include: - the approximate dates - the name of the organizers (preferably more than one) - a programme: lecturers (a mix of young and bright, and old and wise lecturers is preferred) and topics (keep in mind that applications of functional programming are very important for the school). - a location (remember you need around 25 computers) - a budget, including an estimation of the registration and hotel costs per participant. The programme, location and budget don't have to be completely fixed when you submit your proposal, but there should be sufficient information to review your proposal. Your proposal will be reviewed by the steering committee of the Advanced Functional Programming Schools, consisting of Pedro Henriques Graham Hutton Johan Jeuring Erik Meijer Greg Morrisett Chris Okasaki Simon Peyton Jones Tim Sheard Doaitse Swierstra Phil Wadler Submit your proposal to [EMAIL PROTECTED] on or before September 1, 2003 Notification October 1, 2003 -- Johan Jeuring ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Re: Scrap your Boilerplate
Does the zipper fall into this category? http://haskell.org/wiki/wiki?TheZipper The zipper is a type-indexed data type, not just a type-indexed function. See: R. Hinze, J. Jeuring and A Löh. Type-indexed data types. In Eerke A. Boiten and Bernhard Möller, editors, Proceedings of the 6th International Conference on Mathematics of Program Construction, LNCS 2386, pages 148 - 174, 2002, © Springer-Verlag. -- Johan ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Haskell Workshop 2003
ACM SIGPLAN 2003 Haskell Workshop Uppsala, Sweden, End of August 2003 pending approval http://www.functional-programming.org/HaskellWorkshop/cfp03.html Call For Papers The Haskell Workshop forms part of the PLI 2003 colloquium on Principles, Logics, and Implementations of high-level programming languages, which comprises the ICFP and PPDP conferences as well as associated workshops. Previous Haskell Workshops have been held in La Jolla (1995), Amsterdam (1997), Paris (1999), Montreal (2000), Firenze (2001), and Pittsburgh (2002). * Deadlines * Deadline for submission:May 22, 2003 Notification of acceptance: June 23, 2003 Final submission due: July 3, 2003 Haskell Workshop: End of August 2003 * Topics* The purpose of the Haskell Workshop is to discuss experience with Haskell, and possible future developments for the language. The scope of the workshop includes all aspects of the design, semantics, theory, application, implementation, and teaching of Haskell. Topics of interest include, but are not limited to, the following: Language Design with a focus on possible extensions and modifications of Haskell as well as critical discussions of the status quo; Theory in the form of a formal treatment of the semantics of the present language or future extensions, type systems, and foundations for program analysis and transformation; Implementation Techniques including program analysis and transformation, static and dynamic compilation for sequential, parallel, and distributed architectures, memory management as well as foreign function and component interfaces; Tool Support in the form of profilers, tracers, debuggers, pre-processors, and so forth; Applications, Practice, and Experience with Haskell for scientific and symbolic computing, database, multimedia and Web applications, and so forth as well as general experience with Haskell in education and industry; Functional Pearls being elegant, instructive examples of using Haskell. Following the scheme adopted by ICFP 2003, papers in the latter two categories need not necessarily report original research results; they may instead, for example, report practical experience that will be useful to others, re-usable programming idioms, or elegant new ways of approaching a problem. The key criterion for such a paper is that it makes a contribution from which other practitioners can benefit. It is not enough simply to describe a program! * Submissions * Authors should submit papers in postscript format, formatted for A4 paper, to Johan Jeuring [EMAIL PROTECTED] by 22th May 2003. The length should be restricted to the equivalent of 5000 words (which is approximately 12 pages in ACM format). Accepted papers will be available in the form of a technical report of the Utrecht University or an equivalent format in time for the workshop. In addition, the papers will be published by the ACM and will appear in the ACM Digital Library. If there is sufficient demand, we will try to organise facilities for system demonstrations during lunch and coffee breaks. If you are interested in demonstrating an application or tool written in Haskell, please contact Johan Jeuring ([EMAIL PROTECTED]). * Programme Committee * Magnus Carlsson OGI Olaf Chitil University of York Ralf Hinze University of Bonn Johan Jeuring (chair)Utrecht University Jan-Willem Maessen MIT Henrik Nilsson Yale University Simon Peyton Jones Microsoft Research Claus Reinke University of Kent ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
The future of Haskell discussion at the Haskell workshop, Oct 3, 2002
This is a brief account of the discussion on the future of Haskell at the Haskell workshop, Oct 3, 2002, in Pittsburgh. After Simon Peyton Jones discussed the copy-right issue of publishing the report, we had a brief discussion about the future of Haskell. The first point raised was that the addition of unsafe extensions to Haskell, like unsafePerformIO and unsafeCoerce, goes against the original design requirements for Haskell. The presence of unsafe extensions makes quick but dirty solutions possible, for example for problems that need concurrency. This hampers the development of semantically clean theories, and makes building tools that reason about Haskell much harder. Reactions on this point differed: some people heartily agreed, some other people thought unsafePerformIO was often just a cosmetic thing, and that whenever a theory/abstraction/method for an application for which unsafe extensions are used now is in sight, people will try to develop it. Another suggestion was to develop methods for separation of threads so that you can reason locally about threads. -- Johan Jeuring ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Register before July 12: Advanced Functional Programming Summer School
Last registration date July 12. About 10 places left. -- Johan Jeuring Summer School and Workshop on Advanced Functional Programming St Anne's College, Oxford, UK 19th to 24th August 2002 http://www.functional-programming.org/afp/afp4 In conjunction with Summer School and Workshop on Generic Programming Call for participation This is the fourth school in a series on schools on Advanced Functional Programming. Previous schools were held in Baastad, Sweden (1995, LNCS 925), Olympia, Washington (LNCS 1129), and Braga, Portugal (LNCS 1608). We have recruited a group of excellent lecturers on advanced technologies in Functional Programming. Lecturers * Richard Bird (University of Oxford) and Jeremy Gibbons (University of Oxford): Arithmetic Coding with Folds and Unfolds * Manuel Chakravarty (University of New South Wales): Fast Arrays in Haskell * Matthias Felleisen (Northeastern University): Developing Interactive Web Programs in DrScheme * Cedric Fournet (Microsoft Research) and Fabrice Le Fessant (INRIA Rocquencourt): Jocaml3, a Language for Concurrent, Distributed and Mobile Programming * Paul Hudak (Yale University): Robots, Arrows and Functional Reactive Programming * Koen Claessen (Chalmers University of Tecnology) and Colin Runciman (University of York): Testing and Tracing Lazy Functional Programs * Philip Wadler (Avaya Labs): XQuery: A Typed Functional Language for Querying XML In addition, on the afternoon of Monday 19th August there will be a half-day Introduction to Functional Programming, presented by Graham Hutton (University of Nottingham). Deadlines For registration: 12th July 2002 Organizers Johan Jeuring (Utrecht University) Simon Peyton Jones (Microsoft Research) Further information Web:http://www.functional-programming.org/afp/afp4/info.html PDF poster: http://www.functional-programming.org/afp/afp4/afp-poster.pdf Email: [EMAIL PROTECTED] Post: AFP, c/o Jane Ellory, Oxford University Computing Laboratory, Wolfson Building, Parks Road, Oxford OX1 3QD, United Kingdom. Fax:+44 1865 273839; mark fao SSAFP (Jane Ellory) ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Re: Fixed point of n-mutually recursive functors
I can also define the fixed-point of 2 mutually recursive bifunctors as: data Fix21 f g = In21 (f (Fix21 f g) (Fix22 f g)) data Fix22 f g = In22 (g (Fix21 f g) (Fix22 f g)) where bifunctors can be captured in the type class class Functor2 f where map2 :: (a1 - b1) - (a2 - b2) - f a1 a2 - f b1 b2 Now, I would like to generalize those definitions to n-functors. Is it possible? I don't think this is possible in plain Haskell 98. It is possible in Generic Haskell, see: http://www.generic-haskell.org/ or Ralf Hinze. Polytypic values possess polykinded types. In Roland Backhouse, J.N. Oliveira, editors, Proceedings of the Fifth International Conference on Mathematics of Program Construction (MPC 2000), Ponte de Lima, Portugal, July 3-5, 2000, © Springer-Verlag. If it isn't, what kind of type system would I need? Generic Haskell's type system is sufficient. Is it possible using dependent types? I would expect so. A pointer to mutually recursive cata's (and functors): Swierstra, S.D. and Azero Alcocer, P.R. and Saraiava, J., Designing and Implementing Combinator Languages, In: Advanced Functional Programming, Third International School, AFP'98, Springer-Verlag, LNCS 1608, 150-206,1999. -- Johan Jeuring ___ Haskell-Cafe mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: a universal printer for Haskell?
My point is that there are some things that can't easily be expressed in current Haskell (like generic printing) that are useful and might be aided by meta-programming technology. The interesting question is can it be done in a way that preserves whatever we want from the type system: safety, security, efficiency, error detection ... You don't need meta-programming technology (reflection) to do things like generic prinitng. A generic programming extension of Haskell (like Generic Haskell, or derivable classes) can do the job for you. Have a look at: http://www.generic-haskell.org/ -- Johan ___ Haskell-Cafe mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: a universal printer for Haskell?
You don't need meta-programming technology (reflection) to do things like generic prinitng. A generic programming extension of Haskell (like Generic Haskell, or derivable classes) can do the job for you. Isn't generic programming usually based on a kind of compile-time reflection (if the argument is of this type, do this, else..)? Yes, you might view it as compile-time reflection. Programs are still typable. And don't you write generic functions with the intention that the implementation will figure out the approriate type-specific variants, i.e., you write your code at a level of abstraction that is not easily reached with the standard language tools -- a meta level, where functions at different types are the first-class objects of discourse? If you view that as a metalevel I agree. However, it is the intention you never see the generated functions at different types: the compiler can (in priciple) completely hide those from the programmer. In that sense there is just one level: Generic haskell offers you normal Haskell functions and generic functions. I find it helpful to think of generic programming support as one way of integrating well-behaved subsets of reflection and other meta-programming techniques into Haskell. It is partly a trade-off: you get some of the features and avoid some of the problems of a fully reflective architecture. It is also a specialisation: by avoiding the full generality, the specific subset of features can be designed in a structured fashion, with the application domain in mind, making them easier to use for that domain. Agreed. -- Johan ___ Haskell-Cafe mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell-cafe
Summer School on Generic Programming
Summer School and Workshop on Generic Programming St Anne's College, Oxford, UK 26th to 30th August 2002 In conjunction with Summer School and Workshop on Advanced Functional Programming This school is a successor to the Summer School and Workshop on Algebraic and Coalgebraic Methods in the Mathematics of Program Construction, held in Oxford in April 2000 and with lecture notes shortly to appear as LNCS 2297. For this school we have recruited an excellent group of lecturers on generic programming, that is, the construction of programs that work on different datatypes and yet may exploit the structure of that data. Lecturers * Roland Backhouse (University of Nottingham): A Generic Theory of Datatypes * Peter Buneman (University of Edinburgh): Semi-Structured Data * Roy Crole (University of Leicester): Categories and Types * Jose Luiz Fiadeiro (University of Lisbon and ATX Software): Theory and Practice of Software Architecture * Ralf Hinze (University of Bonn) and Johan Jeuring (University of Utrecht): Generic Haskell * Martin Odersky (Ecole Polytechnique Federale de Lausanne): Object-Oriented and Functional Approaches to Compositional Programming Deadlines For registration with an early-bird discount: 17th May 2002 For late registration: 12th July 2002 Organizers Roland Backhouse (University of Nottingham) Jeremy Gibbons (University of Oxford) Further information Web: http://www.comlab.ox.ac.uk/oucl/research/areas/ap/ssgp/info.html PDF poster: http://www.comlab.ox.ac.uk/oucl/research/areas/ap/ssgp/ssgp-poster.pdf Email: [EMAIL PROTECTED] Post: SSGP, c/o Jane Ellory, Oxford University Computing Laboratory, Wolfson Building, Parks Road, Oxford OX1 3QD, United Kingdom. Fax:+44 1865 273839; mark fao SSGP (Jane Ellory) ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Summer School on Advanced Functional Programming
Summer School and Workshop on Advanced Functional Programming St Anne's College, Oxford, UK 19th to 24th August 2002 http://www.functional-programming.org/afp/afp4 In conjunction with Summer School and Workshop on Generic Programming Call for participation This is the fourth school in a series on schools on Advanced Functional Programming. Previous schools were held in Baastad, Sweden (1995, LNCS 925), Olympia, Washington (LNCS 1129), and Braga, Portugal (LNCS 1608). We have recruited a group of excellent lecturers on advanced technologies in Functional Programming. Lecturers * Richard Bird (University of Oxford) and Jeremy Gibbons (University of Oxford): Arithmetic Coding with Folds and Unfolds * Manuel Chakravarty (University of New South Wales): Fast Arrays in Haskell * Matthias Felleisen (Northeastern University): Developing Interactive Web Programs in DrScheme * Cedric Fournet (Microsoft Research) and Fabrice Le Fessant (INRIA Rocquencourt): Jocaml3, a Language for Concurrent, Distributed and Mobile Programming * Paul Hudak (Yale University): Robots, Arrows and Functional Reactive Programming * Koen Claessen (Chalmers University of Tecnology) and Colin Runciman (University of York): Testing and Tracing Lazy Functional Programs * Philip Wadler (Avaya Labs): XQuery: A Typed Functional Language for Querying XML In addition, on the afternoon of Monday 19th August there will be a half-day Introduction to Functional Programming, presented by Graham Hutton (University of Nottingham). Deadlines For registration with an early-bird discount: 17th May 2002 For late registration: 12th July 2002 Organizers Johan Jeuring (Utrecht University) Simon Peyton Jones (Microsoft Research) Further information Web:http://www.functional-programming.org/afp/afp4/info.html PDF poster: http://www.functional-programming.org/afp/afp4/afp-poster.pdf Email: [EMAIL PROTECTED] Post: AFP, c/o Jane Ellory, Oxford University Computing Laboratory, Wolfson Building, Parks Road, Oxford OX1 3QD, United Kingdom. Fax:+44 1865 273839; mark fao SSAFP (Jane Ellory) ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Working Conference on Generic Programming, 2nd call for papers
WCGP '02 IFIP WG2.1 Working Conference on GENERIC PROGRAMMING http://www.generic-programming.nl/wcgp/cfp.html Organised in conjunction with MPC'02 July 8 - July 13, 2002 Dagstuhl, Germany CALL FOR PAPERS Generic programming is about making programs more adaptable by making them more general. Generic programs often embody non-traditional kinds of polymorphism; ordinary programs are obtained from them by suitably instantiating their parameters. In contrast with normal programs, the parameters of a generic programs are often quite rich in structure. For example they may be other programs, types or type constructors, class hierarchies, or even programming paradigms. Generic programming techniques have always been of interest, both to practitioners and to theoreticians, but only recently have generic programming techniques become a specific focus of research in the functional and object-oriented programming language communities. This working conference will bring together leading researchers in generic programming from around the world, and feature papers capturing the state of the art in this important emerging area. We welcome contributions on all aspects, theoretical as well as practical, of generic programming, aspect-oriented programming, polytypic programming, adaptive object-oriented programming, generic components, and so on. SUBMISSION Full papers should be submitted in Postscript or pdf format by e-mail to reach [EMAIL PROTECTED] by February 16, 2002. The details of the submission procedure can be found at http://www.generic-programming.nl/wcgp/submit.html Although there is no page limit, submissions should strive for brevity and clarity. IMPORTANT DATES Submission February 16, 2002 Notification April 12,2002 Final version dueMay 24, 2002 PROGRAMME COMMITTEE Matt Austern Eerke Boiten Ulrich Eisenecker Jeremy Gibbons (co-chair) Ralf Hinze Johan Jeuring (co-chair) Gary Leavens Karl Lieberherr Lambert Meertens Eugenio Moggi Bernhard Moeller Oege de Moor David Musser Martin Odersky Ross Paterson Simon Peyton Jones Colin Runciman Doaitse Swierstra Stephanie Weirich LOCAL ORGANISATION Jeremy Gibbons Johan Jeuring Bernhard Moeller CORRESPONDENCE Jeremy Gibbons ([EMAIL PROTECTED]) Johan Jeuring ([EMAIL PROTECTED]) ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Working Conference on Generic Programming: first call for papers
WCGP '02 IFIP TC2 Working Conference on GENERIC PROGRAMMING http://www.generic-programming.nl/wcgp/cfp.html Organised in conjunction with MPC'02 July 8 - July 13, 2002 Dagstuhl, Germany CALL FOR PAPERS Generic programming is about making programs more adaptable by making them more general. Generic programs often embody non-traditional kinds of polymorphism; ordinary programs are obtained from them by suitably instantiating their parameters. In contrast with normal programs, the parameters of a generic programs are often quite rich in structure. For example they may be other programs, types or type constructors, class hierarchies, or even programming paradigms. Generic programming techniques have always been of interest, both to practitioners and to theoreticians, but only recently have generic programming techniques become a specific focus of research in the functional and object-oriented programming language communities. This working conference will bring together leading researchers in generic programming from around the world, and feature papers capturing the state of the art in this important emerging area. We welcome contributions on all aspects, theoretical as well as practical, of generic programming, aspect-oriented programming, polytypic programming, adaptive object-oriented programming, generic components, and so on. SUBMISSION Full papers should be submitted in Postscript or pdf format by e-mail to reach [EMAIL PROTECTED] by February 16, 2002. The details of the submission procedure can be found at http://www.generic-programming.nl/wcgp/submit.html Although there is no page limit, submissions should strive for brevity and clarity. IMPORTANT DATES Submission February 16, 2002 Notification April 12,2002 Final version dueMay 24, 2002 PROGRAMME COMMITTEE Matt Austern Eerke Boiten Ulrich Eisenecker Jeremy Gibbons (co-chair) Ralf Hinze Johan Jeuring (co-chair) Gary Leavens Karl Lieberherr Lambert Meertens Eugenio Moggi Bernhard Moeller Oege de Moor David Musser Martin Odersky Ross Paterson Simon Peyton Jones Colin Runciman Doaitse Swierstra Stephanie Weirich LOCAL ORGANISATION Jeremy Gibbons Johan Jeuring Bernhard Moeller CORRESPONDENCE Jeremy Gibbons ([EMAIL PROTECTED]) Johan Jeuring ([EMAIL PROTECTED]) ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Re: Summer School on Functional Programming?
I was wondering if anyone knew if there was going to be a summer school on functional programming this year. Also, where would I find information about it? Thanks. I don't think a summer school on advanced functional programming will be organised this year. Maybe next year, but as far as I know nothing has been decided yet. I will try to start up something (which doesn't mean I will organise it!) soon. -- Johan Jeuring ___ Haskell-Cafe mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell-cafe
RE: Learning Haskell and FP
Who are the audience for the books on Advanced Functional Programming? Academics with a theoretical CS background or someone with just a bit of understanding of FP? Ideally, I would like a course suited for someone who has completed a basic FP course. It varies a bit per school (book) and per article. But certainly LNCS 925 contains a number of chapters that should be interesting for someone with a general CS background and a basic FP course. I know it has been used in a couple of undergraduate courses on advanced functional programming. Topics, Authors, LNCS nr: - Monads, Wadler, 925 - Parser Combinators, Fokker, 925 - Constructor Classes, Jones, 925 - (Monadic) folds (or catamorphisms), Meijer Jeuring, 925 - Space leaks and heap profiling, Runciman Rojemo, 1129 - Algorithms and data structures, Okasaki, 1129 - Graph algorithms, Launchbury, 925 - User Interfaces, Carlsson Hallgren, 925, Peyton Jones Finne 1129 etc. Johan Jeuring http://www.cs.uu.nl/~johanj/ ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Re: Learning Haskell and FP
Is there a good textbook on Functional Programming which starts from a base point similar to "The craft of Functional Programming" but more advanced in terms of introducing necessary topics like Category theory, catamorphisms, monads, etc? I would find such a book very useful, especially if it concentrated on lazy functional programming. You might want to have a look at the series of three books on Advanced Functional Programming, published in LNCS, as LNCS 925, 1129, and 1608. I would probably start with 925, which introduces monads, parser pretty-printing combinators, monadic catamorphisms, constructor classes, etc. -- Johan Jeuring ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Call for papers: Haskell Workshop 2001
CALL FOR PAPERS 2001 Haskell Workshop Firenze, Italy The Haskell Workshop forms part of the PLI 2001 colloquium on Principles, Logics, and Implementations of high-level programming languages, which comprises the ICFP/PPDP conferences and associated workshops. Previous Haskell Workshops have been held in La Jolla (1995), Amsterdam (1997), Paris (1999), and Montreal (2000). http://www.cs.uu.nl/people/ralf/hw2001.{html,pdf,ps,txt} Scope - The purpose of the Haskell Workshop is to discuss experience with Haskell, and possible future developments for the language. The scope of the workshop includes all aspects of the design, semantics, theory, application, implementation, and teaching of Haskell. Submissions that discuss limitations of Haskell at present and/or propose new ideas for future versions of Haskell are particularly encouraged. Adopting an idea from ICFP 2000, the workshop also solicits two special classes of submissions, application letters and functional pearls, described below. Application Letters --- An application letter describes experience using Haskell to solve real-world problems. Such a paper might typically be about six pages, and may be judged by interest of the application and novel use of Haskell. Functional Pearls - A functional pearl presents - using Haskell as a vehicle - an idea that is small, rounded, and glows with its own light. Such a paper might typically be about six pages, and may be judged by elegance of development and clarity of expression. Submission details -- Deadline for submission:1st June 2001 Notification of acceptance: 1st July 2001 Final submission due: 1st August 2001 Haskell Workshop: to be announced Authors should submit papers of at most 12 pages, in postscript format, formatted for A4 paper, to Ralf Hinze ([EMAIL PROTECTED]) by 1st June 2001. The use of the ENTCS style files is strongly recommended. Application letters and functional pearls should be labeled as such on the first page. They may be any length up to twelve pages, though shorter submissions are welcome. The accepted papers will be published as a University of Utrecht technical report. Programme committee --- Manuel Chakravarty University of New South Wales Jeremy Gibbons University of Oxford Ralf Hinze (chair) University of Utrecht Patrik Jansson Chalmers University Mark Jones Oregon Graduate Institute Ross Paterson City University, London Simon Peyton Jones Microsoft Research Stephanie Weirich Cornell University ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Job opening at Utrecht: Generic Haskell
Postdoc Software Technology Department of Computer Science Utrecht University Utrecht, The Netherlands You will work on the "Generic Haskell: a language for generic programming" project. See http://www.cs.uu.nl/research/projects/generic-haskell/ The abstract of the project is given below. Together with a team consisting of several senior researchers and Ph.D. students, you will develop: - a generic programming language extension of Haskell; - practical examples of generic programming such as a database connection; - programming methods for the language extension. Requirements: PhD in Computer Science. Knowledge of some of the following topics: functional programming, compiler technology, type theory, and/or generic programming. This is a position for 3 years. Application: Send your application on or before October 6, 2000 either by email or on paper to: Johan Jeuring, Department of Computer Science, Utrecht University, P.O.Box 80.089, NL-3508 TB Utrecht, The Netherlands, email: [EMAIL PROTECTED] Contact: For information, please contact Johan Jeuring ([EMAIL PROTECTED], http://www.cs.uu.nl/~johanj/) or Doaitse Swierstra ([EMAIL PROTECTED], http://www.cs.uu.nl/~doaitse/). Generic Haskell: a language for generic programming Software development often consists of designing a datatype, to which functionality is added. Some functionality is datatype specific, other functionality is defined on almost all datatypes, and only depends on the type structure of the datatype. Examples of generic (or polytypic) functionality defined on almost all datatypes are storing a value in a database, editing a value, comparing two values for equality, pretty-printing a value, etc. A function that works on many datatypes is called a polytypic function. Since datatypes often change and new datatypes are introduced, we have developed Polyp, an extension of the functional programming language Haskell that supports defining polytypic functions. However, Polyp allows the definition of polytypic functions on a limited set of datatypes, which hinders the wide application of polytypic programming. Recent work by Hinze shows how to overcome many of the current limitations of Polyp by extending Haskell with a construct for defining type-indexed functions with kind-indexed types. The goal of this project is to develop: - a language extension of Haskell based on these ideas; - practical examples such as a database connection; - programming methods for the language extension. Thus we will obtain a truly generic, type-safe, and practically applicable extension of Haskell!
Re: The type of zip
At 06:33 PM 7/24/00 +1000, Fergus Henderson wrote: On 24-Jul-2000, Chris Angus [EMAIL PROTECTED] wrote: Has anyone ever thought of trying to use reflection in these cases. Yes, I've thought of it. That is how we implement the generic `read' and `print' in Mercury. Using reflection like this seems to be a quite powerful technique; I think that using reflection you can do quite a lot in the language that in Haskell currently seems to instead be done with external preprocessors (e.g. "Deriv", or whatever it is called now). Yes, reflection is a powerful technique, with which you can define zip, show, read, etc. However, I think for this kind of applications it is better to apply generic programming techniques, which give you type-safety (and hence no run-time problems), and compile-time code generation (or partial evaluation). See for how to define these functions in PolyP or Generic Haskell: Ralf Hinze. A Generic Programming Extension for Haskell. In Erik Meijer, editor, Proceedings of theThird Haskell Workshop, Paris, France, September 1999. The proceedings appear as a technical report of Universiteit Utrecht, UU-CS-1999-28. http://www.informatik.uni-bonn.de/~ralf/publications.html P. Jansson and J. Jeuring. Polytypic data conversion programs. Submitted for publication, 2000. http://www.cs.uu.nl/~johanj/publications/publications.html And for generic programming in general: R. Backhouse, P. Jansson, J. Jeuring, and L. Meertens. Generic Programming - An Introduction -. In S.Doaitse Swierstra, Pedro R. Henriques and Jose N. Oliveira, editors, Advanced Functional Programming, LNCS 1608, pages 28--115, Springer-Verlag, 1999. also available via my publications page. -- Johan Jeuring
RE: deriving Functor
Is anyone else working on Generic Haskell. Yes, I have an MSc student (Jan de Wit) who will work on Generic Haskell, and I expect more people will start working on it in Utrecht later this year. Johan
Call for 10 minute slots: Workshop on Generic Programming 2000
Workshop on Generic Programming http://www.cs.uu.nl/~johanj/wgp2000/wgp2000cfp.html 6th July 2000 Ponte de Lima , Portugal Call for proposals for 10 minutes slots The one day Workshop on Generic Programming (see the web page above for a description of the field) will follow on the Mathematics of Program Construction conference, http://seide.di.uminho.pt/~mpc2000/. Besides longer talks on contributed papers, there will be some 10 minutes slots available for new, controversial, interesting or provocative ideas. Submit your proposal for such a 10 minute slot on at most half a page to [EMAIL PROTECTED], on or before May 31, 2000. Johan Jeuring Department of Computer Science Utrecht University P.O.Box 80.089 NL-3508 TB Utrecht The Netherlands email: [EMAIL PROTECTED] url: http://www.cs.uu.nl/~johanj/
RE: Haskell Wish list: library documentation
I don't want to give the impression that I think the advocates of polytypism or arrows (...etc...) have done a poor job of describing them. Far from it -- there are lots of papers about polytypism for example, and it is fine work. But as a not-very-bright implementor I'm just not going to get around to implementing a general idea; I need a precise design. I agree: and I think Haskell's polytypic programming extension PolyP (developed by Patrik Jansson and me) is not mature enough to be included in a Haskell compiler: until recently we had design problems (with multiple argument and/or mutual recursive datatypes). Recent work by Hinze gives a nice solution to our problems, and Hinze and I agreed to implement the ideas. So hopefully we will have a precise design + implementation of polytypic/generic programming in a not too distant future. -- Johan Jeuring
Call for papers: Workshop on Generic Programming 2000
Workshop on Generic Programming http://www.cs.uu.nl/~johanj/wgp2000/wgp2000cfp.html 6th July 2000 Ponte de Lima, Portugal Call for papers Generic programming is about making programs more adaptable by making them more general. Generic programs often embody non-traditional kinds of polymorphism; ordinary programs are obtained from them by suitably instantiating their parameters. In contrast with normal programs, the parameters of a generic programs are often quite rich in structure. For example they may be other programs, types or type constructors, kinds, or even programming paradigms. This workshop follows on the 5th Mathematics of Program Construction conference. This is the second workshop on generic programming, the first workshop on generic programming (proceedings) was held on Marstrand, Sweden, in 1998. Submission Papers (preferably short, no more than 15 pages) should be submitted in Postscript format by e-mail to reach Johan Jeuring by March 20, 2000. Accepted papers will be published in the proceedings of the workshop, which will appear as a technical report at Utrecht University. Submission deadline: 20 March Notification:30 April Final version due:20 May Workshop: 6 July Topics Generic programming techniques have always been of interest, both to practitioners and theoreticians, but have rarely been a specific focus of research, until recently. In the last couple of years we have seen: * several language extensions for generic programming (PolyP,DrIFT,FML,AOOP,FiSH); * lots of examples of generic programming (generalized tries, unification, data compression, XML applications) ; * programming calculi for generic programming. We solicit papers on these topics. The list of topics is not exclusive: papers on other topics related to generic programming are also welcome. Programme Committee Gianna Belle (Genova, Italy) Patrik Jansson (Chalmers, Sweden) Ralf Hinze (Bonn, Germany) Graham Hutton (Nottingham, Great Britain) Johan Jeuring (Utrecht, The Netherlands, chair) Colin Runciman (York, Great Britain) Fritz Ruehr(Willamette, USA) Tim Sheard (OGI, USA) Doaitse Swierstra (Utrecht, The Netherlands) Address Johan Jeuring Department of Computer Science Utrecht University P.O.Box 80.089 NL-3508 TB Utrecht The Netherlands email: [EMAIL PROTECTED] url: http://www.cs.uu.nl/~johanj/
2nd cfp: Workshop on Generic Programming 98
Call for Papers Workshop on Generic Programming June 18th 1998, Marstrand, Sweden (In Conjunction with Mathematics of Program Construction Conference) http://www.cse.ogi.edu/PacSoft/conf/wgp/ Generic programming is about making programs more adaptable by making them more general. A generic program embodies some sort of polymorphism; ordinary programs are obtained from it by suitably instantiating its parameters. The parameters may be other programs, types or type constructors, or even programming paradigms. Generic programming techniques have always been of interest, both to practitioners and theoreticians, but to date have rarely been a specific focus of research. Recent developments in functional and object-oriented programming lead the organizers of this workshop to believe that there is sufficient interest to warrant the organisation of a one-day workshop on the theme of generic programming. The workshop will be on June 18th, 1998, following on from the Mathematics of Program Construction conference. The goal of the workshop is to inventorise the full diversity of research activities in the area of generic programming, both theoretical and applied, by attracting as wide a spectrum of participants as possible to the workshop. The results of the workshop will be published in the form of a detailed summary of all presentations, prepared by the organizers and made available on internet. We cordially invite all those with an active interest in this important new area to submit a short position paper on their work to Roland Backhouse ([EMAIL PROTECTED]). The position paper should outline your current research activities in this area and include references to published papers and/or web links to technical reports where more information can be found. The recommended length is approximately three pages. The deadline for submission is 16th February, 1998. Notification of acceptance will be on or before 15th March, 1998. The organizers are as follows: Roland Backhouse (Cochair), Netherlands Tim Sheard (Cochair), USA Robin Cockett, Canada Barry Jay, Australia Johan Jeuring, Sweden Karl Lieberherr, USA Oege de Moor, UK Bernhard Moeller, Germany Jose Oliveira, Portugal Fritz Ruehr, USA For further details on the Mathematics of Program Construction and this workshop please consult: http://www.md.chalmers.se/Conf/MPC98/
cfp: Workshop on generic programming, WGP'98
Workshop on Generic Programming June 18th 1998 Marstrand, Sweden http://www.cse.ogi.edu/PacSoft/conf/wgp/ Call for papers Generic programming is about making programs more adaptable by making them more general. Generic programs often embody non-traditional kinds of polymorphism; ordinary programs are obtained from them by suitably instantiating their parameters. In contrast with normal programs, the parameters of a generic programs are often quite rich in structure. For example they may be other programs, types or type constructors, or even programming paradigms. Generic programming techniques have always been of interest, both to practitioners and theoreticians, but to date have rarely been a specific focus of research. Recent developments in functional and object-oriented programming lead the organizers of this workshop to believe that there is sufficient interest to warrant the organisation of a one-day workshop on the theme of generic programming. The workshop will be on June 18th, 1998, directly following the Mathematics of Program Construction conference to be held in Marstrand Sweden. We cordially invite all those with an active interest in this important new area to submit a short position paper on their work to one of the organizers. Deadline for submission to the workshop is Feb. 16, 1997. Notification of acceptance will be March 7, 1997 The organizers are as follows: Roland Backhouse (Cochair) Netherlands Tim Sheard (Cochair) USA Johan Jeuring Oege de Moor Bernhard Moeller Jose Oliveira Barry Jay Robin Cocket who is director of the Charity Project Karl Lieberherr Fritz Ruehr
last cfp MPC'98: Mathematics of Program Construction
MPC '98 Fourth International Conference on MATHEMATICS OF PROGRAM CONSTRUCTION --- http://www.md.chalmers.se/Conf/MPC98/ June 15 - 17, 1998 Marstrand, Sweden Post-conference workshops: * Workshop on Generic Programming, WGP'98 http://www.cse.ogi.edu/PacSoft/conf/wgp/ * International Workshop on Constructive Methods for Parallel Programming, CMPP'98 http://brahms.fmi.uni-passau.de/cl/cmpp98/index.html * Formal Techniques for Hardware and Hardware-like Systems, FTH'98 http://www.cs.chalmers.se/~ms/FTH98/ CALL FOR PAPERS The general theme of this series of conferences is the use of crisp, clear mathematics in the discovery and design of algorithms and in the development of corresponding software or hardware. The conference theme reflects the growing interest in formal, mathematically based methods for the construction of software and hardware. The goal of the MPC conferences is to report on and significantly advance the state of the art in this area. Previous conferences were held in 1989 at Twente, The Netherlands, organised by the Rijksuniversiteit Groningen, in 1992 at Oxford, United Kingdom, and in 1995 at Kloster Irsee, Germany, organised by Augsburg University. SUBMISSION Full papers should be submitted in Postscript format by e-mail to reach Johan Jeuring by December 15, 1997. The details of the submission procedure can be found at http://www.md.chalmers.se/Conf/MPC98/how_to_submit.html Although there is no page limit, submissions should strive for brevity. Simultaneous submission to the conference and a post-conference workshop is allowed. TOPICS The emphasis is on the combination of c o n c i s e n e s s and p r e c i s i o n in c a l c u l a t i o n a l t e c h n i q u e s for program construction. We solicit high quality papers on original research, typically in one of the following areas: - formal specification of sequential and concurrent programs; - constructing implementations to meet specifications; in particular, - program transformation; - program analysis; - program verification; - convincing case studies. While this list is not exclusive it is intended to show the focus of the conference. We expect to publish the proceedings as a Springer LNCS, ready at the conference. VENUE Marstrand is a small island on the beautiful westcoast of Sweden, 40 km from Goteborg. The charming old houses, the fortress, the walking paths, and the absence of cars make this island a very pleasant resort. There are direct flights to Goteborg Landvetter from most European main cities, and busses from Goteborg to Marstrand. PROGRAMME COMMITTEE Ralph-Johan Back Finland Roland Backhouse The Netherlands Richard Bird UK Eerke Boiten UK Dave Carrington Australia Robin CockettCanada David Gries USA Lindsay Groves New Zealand Wim Hesselink The Netherlands Zhenjiang Hu Japan Barry JayAustralia Johan JeuringSweden (Chair) Dick Kieburtz USA Christian Lengauer Germany Lambert Meertens The Netherlands Sigurd Meldal Norway Bernhard Moller Germany Chris OkasakiUSA Jose Oliveira Portugal Ross Paterson UK Mary SheeranSweden Doug Smith USA LOCAL ORGANISATION MPC '98 is organised by the Computing Science department of Chalmers University of Technology and University of Goteborg. The organisation committee consists of the following people: Patrik Jansson Johan Jeuring Marie Larsson Mary Sheeran IMPORTANT DATES Submission December 15, 1997 Notification February 9, 1998 Final version dueMarch 30,1998 POST-CONFERENCE WORKSHOPS The following one-day workshops are being organised in conjunction with MPC '98 and will take place after the main conference. * International Workshop on Generic Programming. http://www.cse.ogi.edu/PacSoft/conf/wgp/ * International Workshop on Constructive Methods for Parallel Programming, CMPP'98: http
cfp: Mathematics of Program Construction '98
MPC '98 Fourth International Conference on MATHEMATICS OF PROGRAM CONSTRUCTION --- http://www.md.chalmers.se/Conf/MPC98/ June 15 - 17, 1998 Marstrand, Sweden CALL FOR PAPERS The general theme of this series of conferences is the use of crisp, clear mathematics in the discovery and design of algorithms and in the development of corresponding software or hardware. The conference theme reflects the growing interest in formal, mathematically based methods for the construction of software and hardware. The goal of the MPC conferences is to report on and significantly advance the state of the art in this area. Previous conferences were held in 1989 at Twente, The Netherlands, organised by the Rijksuniversiteit Groningen, in 1992 at Oxford, United Kingdom, and in 1995 at Kloster Irsee, Germany, organised by Augsburg University. TOPICS The emphasis is on the combination of c o n c i s e n e s s and p r e c i s i o n in c a l c u l a t i o n a l t e c h n i q u e s for program construction. We solicit high quality papers on original research, typically in one of the following areas: - formal specification of sequential and concurrent programs; - constructing implementations to meet specifications; in particular, - program transformation; - program analysis; - program verification; - convincing case studies. While this list is not exclusive it is intended to show the focus of the conference. We expect to publish the proceedings as a Springer LNCS, ready at the conference. VENUE Marstrand is a small island on the beautiful westcoast of Sweden, 40 km from Goteborg. The charming old houses, the fortress, the walking paths, and the absence of cars make this island a very pleasant resort. There are direct flights to Goteborg Landvetter from most European main cities, and busses from Goteborg to Marstrand. SUBMISSION Full papers should be submitted in Postscript format by e-mail to reach Johan Jeuring by December 15, 1997. The details of the submission procedure can be found at http://www.md.chalmers.se/Conf/MPC98/how_to_submit.html Although there is no page limit, submissions should strive for brevity. PROGRAMME COMMITTEE Ralph-Johan Back Finland Roland Backhouse The Netherlands Richard Bird UK Eerke Boiten UK Dave Carrington Australia Robin CockettCanada David Gries USA Lindsay Groves New Zealand Wim Hesselink The Netherlands Zhenjiang Hu Japan Barry JayAustralia Johan JeuringSweden (Chair) Dick Kieburtz USA Christian Lengauer Germany Lambert Meertens The Netherlands Sigurd Meldal Norway Bernhard Moller Germany Chris OkasakiUSA Jose Oliveira Portugal Ross Paterson UK Mary SheeranSweden Doug Smith USA LOCAL ORGANISATION MPC '98 is organised by the Computing Science department of Chalmers University of Technology and University of Goteborg. The organisation committee consists of the following people: Patrik Jansson Johan Jeuring Marie Larsson Mary Sheeran IMPORTANT DATES Submission December 15, 1997 Notification February 9, 1998 Final version dueMarch 30,1998 POST-CONFERENCE WORKSHOPS The following one-day workshops are being organised in conjunction with MPC '98 and will take place immediately after the main conference. * International Workshop on Generic Programming. * International Workshop on Constructive Methods for Parallel Programming, CMPP'98. CORRESPONDENCE Johan Jeuring (MPC '98) Department of Computing Science Chalmers University of Technology S-412 96 Goteborg Sweden E-mail: [EMAIL PROTECTED] Fax: +46 31 165655
PhD-student positions
The Department of Computing Science at the Chalmers University of Technology and Goteborgs University announces free PhD positions. The major research topics at the department are programming logic and type theory, functional programming, cognition technology, and algorithms and discrete optimisation, but research is also carried out in a number of other topics. More information about the research at the department can be found on the WWW on page: http://www.cs.chalmers.se/ComputingScience/Research Most PhD positions are five year scholarships. The PhD student will spend about 80 percent of his or her time on graduate studies, and about 20 percent on teaching. Applicants must have an undergraduate degree in Computer Science with excellent results. The department tries to increase the number of female employees, and especially welcomes female applicants. At the moment the scholarships consist of 14500 (19000) SEK per month in the first (last) year. Usually a foreign PhD student does not teach in his or her first year in Sweden, and as a consequence the scholarship is of a slightly smaller size. More information about the graduate programmes can be found on the WWW on page: http://www.cs.chalmers.se/ComputingScience/Graduate To apply, send us a letter in English, covering 1 data about yourself; 2 a copy of an official paper giving grades from your undergraduate degree(s); 3 a statement about your main interests; 4 some letters of recommendation from people that know you as a student or as an employee; 5 any scientific papers you have written. Send your application to Section for Mathematics and Computer Science Chalmers University of Technology 412 96 Goteborg Sweden Furthermore, send an email containing the data about yourself to [EMAIL PROTECTED] The last date for your application to arrive is March 3, 1997. A decision about to whom we will offer the PhD positions will be taken before June 1, 1997.
Postdoctoral fellowships
The Department of Computing Science at the Chalmers University of Technology and G=F6teborgs University announces two postdoctoral fellow positions. The Department of Computing Science has about 30 staff members and about 25 PhD students. The department receives funding from Esprit, and from the Swedish Government agencies TFR and NUTEK. The major topics of research are programming logic and type theory, functional programming and concurrency, but research is also carried out in a number of other topics. The postdoctoral positions are four year fellowships. The postdoctoral fellow will take part in research, supervision of research students and teaching. The position is intended for a younger researcher with a good research record, and the intention is that the fellowship holder obtains the experience necessary for becoming an associate professor during the four years. The postdoctoral fellow will spend about 75 per cent of his or her time on research and about 25 per cent on teaching. Applicants must have a PhD and a good research record. The department tries to increase the number of female employees, and welcomes female applicants. Further details can be obtained from Christer Carlsson, Head of the Department. (Tel: +46-31-772 1038. Email: [EMAIL PROTECTED]). To apply, send us a CV in English, covering your research and your teaching experience, and any other relevant experience, and giving the names of referees. Send three packets, each containing a copy of your CV, and of the research papers and other documents you wish to include. The last date for the application to arrive is 16 October 1995. The application should be marked with "Ref. No. E333 2836/95" and be sent to The Registrar, G=F6teborgs University, Vasaparken, 411 24 Gothenburg, Sweden.