publications: - title: "Using strategies for assessment of programming exercises" author: - name: "Alex Gerdes" link: "https://researchr.org/alias/alex-gerdes" - name: "Johan Jeuring" link: "http://people.cs.uu.nl/johanj/" - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" year: "2010" doi: "http://doi.acm.org/10.1145/1734263.1734412" links: doi: "http://doi.acm.org/10.1145/1734263.1734412" tags: - "programming" researchr: "https://researchr.org/publication/GerdesJH10" cites: 0 citedby: 0 pages: "441-445" booktitle: "sigcse" kind: "inproceedings" key: "GerdesJH10" - title: "Generic Programming for Domain Reasoners" author: - name: "Johan Jeuring" link: "http://people.cs.uu.nl/johanj/" - name: "José Pedro Magalhães" link: "https://researchr.org/alias/jos%C3%A9-pedro-magalh%C3%A3es" - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" year: "2009" links: dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sfp/JeuringMH09" researchr: "https://researchr.org/publication/JeuringMH09" cites: 0 citedby: 0 pages: "113-128" booktitle: "sfp" kind: "inproceedings" key: "JeuringMH09" - title: "Generalizing Hindley-Milner Type Inference Algorithms" author: - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" - name: "Jurriaan Hage" link: "http://www.cs.uu.nl/wiki/Hage/WebHome" - name: "S. Doaitse Swierstra" link: "http://www.cs.uu.nl/staff/doaitse.html" year: "2002" abstract: "Type inferencing according to the standard algorithms W and M often yields unin- formative error messages. Many times, this is a consequence of a bias inherent in the algorithms. The method developed here is to first collect constraints from the program, and to solve these afterwards, possibly under the influence of a heuristic. We show the soundness and completeness of our algorithm. The algorithms W and M turn out to be deterministic instances of our method, giving the correctness for W and M with respect to the Hindley-Milner typing rules for free. We also show that our algorithm is more flexible, because it naturally allows the generation of multiple messages." links: "url": "http://www.cs.uu.nl/research/techreps/repo/CS-2002/2002-031.pdf" researchr: "https://researchr.org/publication/HeerenHS02" cites: 0 citedby: 0 institution: "Department of Information and Computing Sciences, Utrecht University" number: "UU-CS-2002-031" kind: "techreport" key: "HeerenHS02" - title: "Constructing Strategies for Programming" author: - name: "Alex Gerdes" link: "https://researchr.org/alias/alex-gerdes" - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" - name: "Johan Jeuring" link: "http://people.cs.uu.nl/johanj/" year: "2009" tags: - "programming" researchr: "https://researchr.org/publication/GerdesHJ09" cites: 0 citedby: 0 pages: "65-72" booktitle: "csedu" kind: "inproceedings" key: "GerdesHJ09" - title: "Specifying Strategies for Exercises" author: - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" - name: "Johan Jeuring" link: "http://people.cs.uu.nl/johanj/" - name: "Arthur van Leeuwen" link: "https://researchr.org/alias/arthur-van-leeuwen" - name: "Alex Gerdes" link: "https://researchr.org/alias/alex-gerdes" year: "2008" doi: "http://dx.doi.org/10.1007/978-3-540-85110-3_36" links: doi: "http://dx.doi.org/10.1007/978-3-540-85110-3_36" researchr: "https://researchr.org/publication/HeerenJLG08" cites: 0 citedby: 0 pages: "430-445" booktitle: "AISC" kind: "inproceedings" key: "HeerenJLG08" - title: "Type Class Directives" author: - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" - name: "Jurriaan Hage" link: "http://www.cs.uu.nl/wiki/Hage/WebHome" year: "2005" doi: "http://springerlink.metapress.com/openurl.asp?genre=article&issn=0302-9743&volume=3350&spage=253" links: doi: "http://springerlink.metapress.com/openurl.asp?genre=article&issn=0302-9743&volume=3350&spage=253" researchr: "https://researchr.org/publication/HeerenH05" cites: 0 citedby: 0 pages: "253-267" booktitle: "PADL" kind: "inproceedings" key: "HeerenH05" - title: "Model solutions and properties for diagnosing student programs in Ask-Elle" author: - name: "Johan Jeuring" link: "https://researchr.org/alias/johan-jeuring" - name: "L. Thomas van Binsbergen" link: "https://researchr.org/alias/l.-thomas-van-binsbergen" - name: "Alex Gerdes" link: "https://researchr.org/alias/alex-gerdes" - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" year: "2014" doi: "http://doi.acm.org/10.1145/2691352.2691355" links: doi: "http://doi.acm.org/10.1145/2691352.2691355" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/cserc/JeuringBGH14" researchr: "https://researchr.org/publication/JeuringBGH14" cites: 0 citedby: 0 pages: "31-40" booktitle: "cserc" kind: "inproceedings" key: "JeuringBGH14" - title: "Adapting Mathematical Domain Reasoners" author: - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" - name: "Johan Jeuring" link: "http://people.cs.uu.nl/johanj/" year: "2010" doi: "http://dx.doi.org/10.1007/978-3-642-14128-7_27" links: doi: "http://dx.doi.org/10.1007/978-3-642-14128-7_27" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/aisc/HeerenJ10" researchr: "https://researchr.org/publication/HeerenJ10" cites: 0 citedby: 0 pages: "315-330" booktitle: "AISC" kind: "inproceedings" key: "HeerenJ10" - title: "Strategy-based feedback in a programming tutor" author: - name: "Hieke Keuning" link: "https://researchr.org/alias/hieke-keuning" - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" - name: "Johan Jeuring" link: "https://researchr.org/alias/johan-jeuring" year: "2014" doi: "http://doi.acm.org/10.1145/2691352.2691356" links: doi: "http://doi.acm.org/10.1145/2691352.2691356" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/cserc/KeuningHJ14" researchr: "https://researchr.org/publication/KeuningHJ14" cites: 0 citedby: 0 pages: "43-54" booktitle: "cserc" kind: "inproceedings" key: "KeuningHJ14" - title: "A new method for sustainable development of open educational resources" author: - name: "Sylvia Stuurman" link: "https://researchr.org/alias/sylvia-stuurman" - name: "Marko van Eekelen" link: "https://researchr.org/alias/marko-van-eekelen" - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" year: "2012" doi: "http://doi.acm.org/10.1145/2421277.2421284" links: doi: "http://doi.acm.org/10.1145/2421277.2421284" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/cserc/StuurmanEH12" researchr: "https://researchr.org/publication/StuurmanEH12" cites: 0 citedby: 0 pages: "57-66" booktitle: "cserc" kind: "inproceedings" key: "StuurmanEH12" - title: "A lightweight approach to datatype-generic rewriting" author: - name: "Thomas van Noort" link: "https://researchr.org/alias/thomas-van-noort" - name: "Alexey Rodriguez" link: "https://researchr.org/alias/alexey-rodriguez" - name: "Stefan Holdermans" link: "https://researchr.org/alias/stefan-holdermans" - name: "Johan Jeuring" link: "http://people.cs.uu.nl/johanj/" - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" year: "2008" doi: "http://doi.acm.org/10.1145/1411318.1411321" links: doi: "http://doi.acm.org/10.1145/1411318.1411321" tags: - "graph-rewriting" - "rewriting" - "systematic-approach" researchr: "https://researchr.org/publication/NoortRHJH08" cites: 0 citedby: 0 pages: "13-24" booktitle: "ICFP" kind: "inproceedings" key: "NoortRHJH08" - title: "Report on the tenth ICFP programming contest" author: - name: "Eelco Dolstra" link: "https://researchr.org/profile/eelcodolstra/publications" - name: "Jurriaan Hage" link: "http://www.cs.uu.nl/wiki/Hage/WebHome" - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" - name: "Stefan Holdermans" link: "https://researchr.org/alias/stefan-holdermans" - name: "Johan Jeuring" link: "http://people.cs.uu.nl/johanj/" - name: "Andres Löh" link: "http://people.cs.uu.nl/andres/" - name: "Clara Löh" link: "https://researchr.org/alias/clara-l%C3%B6h" - name: "Arie Middelkoop" link: "https://researchr.org/alias/arie-middelkoop" - name: "Alexey Rodriguez" link: "https://researchr.org/alias/alexey-rodriguez" - name: "John van Schie" link: "https://researchr.org/alias/john-van-schie" year: "2008" doi: "http://doi.acm.org/10.1145/1411204.1411259" abstract: "The ICFP programming contest is a 72-hour contest, which attracts thousands of contestants from all over the world. In this report we describe what it takes to organise this contest, the main ideas behind the contest we organised, the task, how to solve it, how we created it, and how well the contestants did. This year's task was to reverse engineer the DNA of a stranded alien life form to enable it to survive on our planet. The alien's DNA had to be modified by means of a prefix that modified its meaning so that the alien's phenotype would approximate a given \"ideal\" outcome, increasing its probability of survival. About 357 teams from 39 countries solved at least part of the contest. The language of choice for discriminating hackers turned out to be C++. " links: doi: "http://doi.acm.org/10.1145/1411204.1411259" tags: - "programming languages" - "C++" - "programming" researchr: "https://researchr.org/publication/DolstraHHHJLLMRS08" cites: 0 citedby: 0 pages: "397-408" booktitle: "ICFP" kind: "inproceedings" key: "DolstraHHHJLLMRS08" - title: "Teachers and Students in Charge - Using Annotated Model Solutions in a Functional Programming Tutor" author: - name: "Alex Gerdes" link: "https://researchr.org/alias/alex-gerdes" - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" - name: "Johan Jeuring" link: "http://people.cs.uu.nl/johanj/" year: "2012" doi: "http://dx.doi.org/10.1007/978-3-642-33263-0_31" links: doi: "http://dx.doi.org/10.1007/978-3-642-33263-0_31" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/ectel/GerdesHJ12" researchr: "https://researchr.org/publication/GerdesHJ12" cites: 0 citedby: 0 pages: "383-388" booktitle: "ectel" kind: "inproceedings" key: "GerdesHJ12" - title: "An interactive functional programming tutor" author: - name: "Alex Gerdes" link: "https://researchr.org/alias/alex-gerdes" - name: "Johan Jeuring" link: "http://people.cs.uu.nl/johanj/" - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" year: "2012" doi: "http://doi.acm.org/10.1145/2325296.2325356" links: doi: "http://doi.acm.org/10.1145/2325296.2325356" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/iticse/GerdesJH12" researchr: "https://researchr.org/publication/GerdesJH12" cites: 0 citedby: 0 pages: "250-255" booktitle: "iticse" kind: "inproceedings" key: "GerdesJH12" - title: "Helium, for learning Haskell" author: - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" - name: "Daan Leijen" link: "https://researchr.org/alias/daan-leijen" - name: "Arjan van IJzendoorn" link: "https://researchr.org/alias/arjan-van-ijzendoorn" year: "2003" doi: "http://doi.acm.org/10.1145/871895.871902" links: doi: "http://doi.acm.org/10.1145/871895.871902" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/haskell/HeerenLI03" tags: - "error-reporting" researchr: "https://researchr.org/publication/HeerenLI03" cites: 0 citedby: 0 pages: "62-71" booktitle: "haskell" kind: "inproceedings" key: "HeerenLI03" - title: "A Teaching Tool for Proving Equivalences between Logical Formulae" author: - name: "Josje Lodder" link: "https://researchr.org/alias/josje-lodder" - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" year: "2011" doi: "http://dx.doi.org/10.1007/978-3-642-21350-2_18" links: doi: "http://dx.doi.org/10.1007/978-3-642-21350-2_18" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/ticttl/LodderH11" tags: - "teaching" researchr: "https://researchr.org/publication/LodderH11" cites: 0 citedby: 0 pages: "154-161" booktitle: "ticttl" kind: "inproceedings" key: "LodderH11" - title: "Ask-Elle: A Haskell Tutor - Demonstration" author: - name: "Johan Jeuring" link: "http://people.cs.uu.nl/johanj/" - name: "Alex Gerdes" link: "https://researchr.org/alias/alex-gerdes" - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" year: "2012" doi: "http://dx.doi.org/10.1007/978-3-642-33263-0_42" links: doi: "http://dx.doi.org/10.1007/978-3-642-33263-0_42" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/ectel/JeuringGH12" researchr: "https://researchr.org/publication/JeuringGH12" cites: 0 citedby: 0 pages: "453-458" booktitle: "ectel" kind: "inproceedings" key: "JeuringGH12" - title: "Feedback services for stepwise exercises" author: - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" - name: "Johan Jeuring" link: "http://people.cs.uu.nl/johanj/" year: "2014" doi: "http://dx.doi.org/10.1016/j.scico.2014.02.021" links: doi: "http://dx.doi.org/10.1016/j.scico.2014.02.021" dblp: "http://dblp.uni-trier.de/rec/bibtex/journals/scp/HeerenJ14" researchr: "https://researchr.org/publication/HeerenJ14" cites: 0 citedby: 0 journal: "SCP" volume: "88" pages: "110-129" kind: "article" key: "HeerenJ14" - title: "Scripting the type inference process" author: - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" - name: "Jurriaan Hage" link: "http://www.cs.uu.nl/wiki/Hage/WebHome" - name: "S. Doaitse Swierstra" link: "http://www.cs.uu.nl/staff/doaitse.html" year: "2003" doi: "http://doi.acm.org/10.1145/944746.944707" links: doi: "http://doi.acm.org/10.1145/944746.944707" tags: - "type inference" researchr: "https://researchr.org/publication/HeerenHS03-0" cites: 0 citedby: 0 journal: "SIGPLAN" volume: "38" number: "9" pages: "3-13" kind: "article" key: "HeerenHS03-0" - title: "A lightweight approach to datatype-generic rewriting" author: - name: "Thomas van Noort" link: "https://researchr.org/alias/thomas-van-noort" - name: "Alexey Rodriguez Yakushev" link: "https://researchr.org/alias/alexey-rodriguez-yakushev" - name: "Stefan Holdermans" link: "https://researchr.org/alias/stefan-holdermans" - name: "Johan Jeuring" link: "http://people.cs.uu.nl/johanj/" - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" - name: "José Pedro Magalhães" link: "https://researchr.org/alias/jos%C3%A9-pedro-magalh%C3%A3es" year: "2010" doi: "http://dx.doi.org/10.1017/S0956796810000183" links: doi: "http://dx.doi.org/10.1017/S0956796810000183" dblp: "http://dblp.uni-trier.de/rec/bibtex/journals/jfp/NoortYHJHM10" tags: - "graph-rewriting" - "rewriting" - "systematic-approach" researchr: "https://researchr.org/publication/NoortYHJHM10" cites: 0 citedby: 0 journal: "JFP" volume: "20" number: "3-4" pages: "375-413" kind: "article" key: "NoortYHJHM10" - title: "Heuristics for Type Error Discovery and Recovery" author: - name: "Jurriaan Hage" link: "http://www.cs.uu.nl/wiki/Hage/WebHome" - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" year: "2006" doi: "http://dx.doi.org/10.1007/978-3-540-74130-5_12" abstract: "Type error messages that are reported for incorrect functional programs can be difficult to understand. The reason for this is that most type inference algorithms proceed in a mechanical, syntax-directed way, and are unaware of inference techniques used by experts to explain type inconsistencies. We formulate type inference as a constraint problem, and analyze the collected constraints to improve the error messages (and, as a result, programming efficiency). A special data structure, the type graph, is used to detect global properties of a program, and furthermore enables us to uniformly describe a large collection of heuristics which embed expert knowledge in explaining type errors. Some of these also suggest corrections to the programmer. Our work has been fully implemented and is used in practical situations, showing that it scales up well." links: doi: "http://dx.doi.org/10.1007/978-3-540-74130-5_12" tags: - "discovery" researchr: "https://researchr.org/publication/HageH06" cites: 0 citedby: 0 pages: "199-216" booktitle: "IFL" kind: "inproceedings" key: "HageH06" - title: "Recognizing Strategies" author: - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" - name: "Johan Jeuring" link: "http://people.cs.uu.nl/johanj/" year: "2009" doi: "http://dx.doi.org/10.1016/j.entcs.2009.03.037" links: doi: "http://dx.doi.org/10.1016/j.entcs.2009.03.037" researchr: "https://researchr.org/publication/HeerenJ09" cites: 0 citedby: 0 journal: "ENTCS" volume: "237" pages: "91-106" kind: "article" key: "HeerenJ09" - title: "Communicate! - A Serious Game for Communication Skills -" author: - name: "Johan Jeuring" link: "https://researchr.org/alias/johan-jeuring" - name: "Frans Grosfeld" link: "https://researchr.org/alias/frans-grosfeld" - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" - name: "Michiel Hulsbergen" link: "https://researchr.org/alias/michiel-hulsbergen" - name: "Richta IJntema" link: "https://researchr.org/alias/richta-ijntema" - name: "Vincent Jonker" link: "https://researchr.org/alias/vincent-jonker" - name: "Nicole Mastenbroek" link: "https://researchr.org/alias/nicole-mastenbroek" - name: "Maarten van der Smagt" link: "https://researchr.org/alias/maarten-van-der-smagt" - name: "Frank Wijmans" link: "https://researchr.org/alias/frank-wijmans" - name: "Majanne Wolters" link: "https://researchr.org/alias/majanne-wolters" - name: "Henk van Zeijts" link: "https://researchr.org/alias/henk-van-zeijts" year: "2015" doi: "http://dx.doi.org/10.1007/978-3-319-24258-3_49" links: doi: "http://dx.doi.org/10.1007/978-3-319-24258-3_49" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/ectel/JeuringGHHIJMSW15" researchr: "https://researchr.org/publication/JeuringGHHIJMSW15" cites: 0 citedby: 0 pages: "513-517" booktitle: "ectel" kind: "inproceedings" key: "JeuringGHHIJMSW15" - title: "Interleaving Strategies" author: - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" - name: "Johan Jeuring" link: "http://people.cs.uu.nl/johanj/" year: "2011" doi: "http://dx.doi.org/10.1007/978-3-642-22673-1_14" links: doi: "http://dx.doi.org/10.1007/978-3-642-22673-1_14" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/mkm/HeerenJ11" researchr: "https://researchr.org/publication/HeerenJ11" cites: 0 citedby: 0 pages: "196-211" booktitle: "mkm" kind: "inproceedings" key: "HeerenJ11" - title: "Canonical Forms in Interactive Exercise Assistants" author: - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" - name: "Johan Jeuring" link: "http://people.cs.uu.nl/johanj/" year: "2009" doi: "http://dx.doi.org/10.1007/978-3-642-02614-0_27" links: doi: "http://dx.doi.org/10.1007/978-3-642-02614-0_27" researchr: "https://researchr.org/publication/HeerenJ09-0" cites: 0 citedby: 0 pages: "325-340" booktitle: "mkm" kind: "inproceedings" key: "HeerenJ09-0" - title: "Specifying Rewrite Strategies for Interactive Exercises" author: - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" - name: "Johan Jeuring" link: "http://people.cs.uu.nl/johanj/" - name: "Alex Gerdes" link: "https://researchr.org/alias/alex-gerdes" year: "2010" doi: "http://springerlink.metapress.com/content/c204312110034814/" links: doi: "http://springerlink.metapress.com/content/c204312110034814/" dblp: "http://dblp.uni-trier.de/rec/bibtex/journals/mics/HeerenJG10" tags: - "graph-rewriting" - "rewriting" - "rewriting strategies" researchr: "https://researchr.org/publication/HeerenJG10" cites: 0 citedby: 0 journal: "mics" volume: "3" number: "3" pages: "349-370" kind: "article" key: "HeerenJG10" - title: "Scripting the type inference process" author: - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" - name: "Jurriaan Hage" link: "http://www.cs.uu.nl/wiki/Hage/WebHome" - name: "S. Doaitse Swierstra" link: "http://www.cs.uu.nl/staff/doaitse.html" year: "2003" doi: "http://doi.acm.org/10.1145/944705.944707" links: doi: "http://doi.acm.org/10.1145/944705.944707" tags: - "type inference" researchr: "https://researchr.org/publication/HeerenHS03" cites: 0 citedby: 0 pages: "3-13" booktitle: "ICFP" kind: "inproceedings" key: "HeerenHS03" - title: "A Programming Tutor for Haskell" author: - name: "Johan Jeuring" link: "http://people.cs.uu.nl/johanj/" - name: "Alex Gerdes" link: "https://researchr.org/alias/alex-gerdes" - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" year: "2011" doi: "http://dx.doi.org/10.1007/978-3-642-32096-5_1" links: doi: "http://dx.doi.org/10.1007/978-3-642-32096-5_1" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/cefp/JeuringGH11" researchr: "https://researchr.org/publication/JeuringGH11" cites: 0 citedby: 0 pages: "1-45" booktitle: "cefp" kind: "inproceedings" key: "JeuringGH11" - title: "Strategies for Solving Constraints in Type and Effect Systems" author: - name: "Jurriaan Hage" link: "http://www.cs.uu.nl/wiki/Hage/WebHome" - name: "Bastiaan Heeren" link: "http://www.open.ou.nl/bhr/" year: "2009" doi: "http://dx.doi.org/10.1016/j.entcs.2009.03.021" links: doi: "http://dx.doi.org/10.1016/j.entcs.2009.03.021" tags: - "constraints" - "type system" researchr: "https://researchr.org/publication/HageH09" cites: 0 citedby: 0 journal: "ENTCS" volume: "236" pages: "163-183" kind: "article" key: "HageH09"