Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 39 reacties

Programmeur Alex Gerdes heeft voor zijn promotieonderzoek aan de Open Universiteit een programmeerleeromgeving ontwikkeld. De software moet studenten automatisch feedback geven tijdens het maken van opdrachten en het eenvoudiger maken om te leren programmeren.

Bij de ontwikkeling van de programmeerleeromgeving voor de functionele programmeertaal Haskell, Ask-Elle geheten, werkte Gerdes samen met studenten van de Universiteit Utrecht. Ask-Elle zou in staat zijn om een student die met een programmeeropdracht bezig is feedback te geven of hij een juiste stap heeft gezet met zijn geschreven Haskell-code. Ook moet Ask-Elle, dat is gericht op eerstejaars studenten, hints geven als een student vastloopt.

De feedback die Ask-Elle geeft, wordt automatisch gegenereerd op basis van modeloplossingen voor een bepaalde programmeeropgave. Bij modeloplossingen is de code geschreven alsof een expert deze geproduceerd heeft en bevat de code methoden die een student zichzelf moet aanleren.

Volgens Gerdes is Ask-Elle ook nuttig voor docenten, omdat studenten zelfstandiger aan opdrachten kunnen werken. Bovendien is het voor docenten mogelijk om zelf modeloplossingen toe te voegen aan de programmeerleeromgeving waarbij tevens de geboden feedback veranderd kan worden. Gerdes zal op 23 november aan de Open Universiteit in Heerlen promoveren op basis van zijn proefschrift 'Ask-Elle: a Haskell Tutor'.

Reacties (39)

Reactiefilter:-139037+118+22+30
Moderatie-faq Wijzig weergave
Deze omgeving is voor de taal Haskell, niet voor Pascal/Delphi :9
Ik had moeite met de definitie van compress, omdat de online omgeving een aantal redelijk standaardfuncties mist. :+

Mijn eerste poging:
compress = map head . group

Mijn tweede poging:
compress [] = []
compress (x:xs) = x : compress (dropWhile (==x) xs)

Success _/-\o_
Jouw code ziet er ook niet echt uit als Haskell.
Het lijkt mij juist wel logisch dat je tentamens op papier krijgt - achter een computer kan je honderd keer met je hoofd op je toetsenbord rammen in de hoop dat er een correct programma uitrolt en dat uiteindelijk inleveren, terwijl je een papieren tentamen alleen kan maken als je de fundamentele concepten van de programmeertaal goed begrijpt. Je mag van iemand die een vak over Haskell volgt toch wel verwachten dat hij goed weet hoe het type-systeem werkt. Andere fundamentele zaken, zoals het met behulp van inductie bewijzen dat twee expressies gelijk zijn, kun je niet eens makkelijk toetsen in een omgeving als dit.

Overigens wordt er bij het vak ook gewoon op praktische vaardigheden getoetst - je moet dus ook opdrachten inleveren, waarbij je eventueel dit soort tools gewoon mag gebruiken. Maar zeker aan de Universiteit mag je wel verwachten dat je ook op een wat abstracter niveau inzicht hebt in de programmeertaal.
Klinkt ook erg naar DeduceIt dat gebruikt wordt op Stanford. Alleen is dat systeem niet specifiek gericht op 1 programmeertaal, maar veel breder inzetbaar. Zo wordt DeduceIt naast programmeren ook gebruikt voor wiskunde, kunstmatige intelligentie, linguistische studies en nog vele andere zaken.

Helaas is DeduceIt niet publiekelijk beschikbaar (alleen via Stanford of Coursera, waar de Compilers course ook met DeduceIt werkt). In de Compilers course wordt DeduceIt bijvoorbeeld gebruikt voor het leren van ASM op MIPS, maar ook voor het leren werken met CFGs, ASTs en dergelijke.
Doet me erg denken aan codeschool.com. Ontzettend goed concept.
Ik vind het een zeer mooi initiatief, maar Haskell als taal om te leren programmeren?
Is een feedback IDE voor Java of C# dan niet logischer?
ik, als student aan de UU waar 'Ask-Elle' naar mijn weten ontwikkeld is heb de gelegenheid gehad om hier mee te werken.
echter was ik zelf niet erg enthousiast over deze tool, de tool zou zeker gebruikt kunnen worden om de syntax in meer of mindere maten onder de knie te kunnen krijgen maar erg fijn werkte de verzie waar ik mee gewerkt heb nog niet. je kunt controleren of je types goed zijn en of je je gards goed plaatst, maar erg veel verder gaat de tool niet.
er is zeker vraag naar een tool als 'Ask-Elle' een functionele taal als Haskell is maar voor weinig mensen weg gelegd. en ik hoop dus ook dat de ontwikkelaars nog verder gaan met 'Ask-Elle', het zal veel mensen helpen!.

overigens staat de tool naar mijn idee gewoon online, voor de mensen die hem willen proberen hij staat naar mijn idee ergens op deze wiki: http://www.cs.uu.nl/wiki/FP/WebHome
Hier is de Universiteit Utrecht voor zover ik weet al jaren mee bezig, en wordt ook al beperkt ingezet. Verder is er nog Helium (dacht ik) die probeert betere foutmeldingen te geven dan de standaard GHC compiler doet, dus zie niet echt wat er hier nieuw aan is?

Daarbij vind ik Haskell echt een vervelende taal en onbegrijpelijk waarom het op de UU verplicht is.

Op dit item kan niet meer gereageerd worden.



LG G4 Battlefield Hardline Samsung Galaxy S6 Edge Microsoft Windows 10 Samsung Galaxy S6 HTC One (M9) Grand Theft Auto V Apple iPad Air 2

© 1998 - 2015 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True