Transcript Haskell

Declaratieve Talen G0Q45

2012 – 2013 Prof. Gerda Janssens DT 2012-2013 1

14-15 KULAK

S(DT) 2012-2013 2

 Breng je laptop mee: installeer swi-prolog vooraf  http://www.swi-prolog.org/Download.html

S(DT) 2012-2013 3

Doelstelling

De studenten grondig laten kennis maken met declaratieve talen met de nadruk op het praktische gebruik van drie representanten van declaratieve talen. Idee: WAT (specificatie van kennis) en niet HOE (berekeningsproces) Inzichten meegeven over het uitvoeringsmechanisme van declaratieve talen op hoog niveau.

DT 2012-2013 4

Leervormen: lessen

 Doel : aanbrengen van belangrijkste aspecten van de taal, voorbeelden van programma’s en programmeertechnieken  Aan de hand van slides  Geven een overzicht van de behandelde stof  Zijn

niet

volledig   Links naar extra materiaal (in de slides en tijdens les) Bevatten vragen/opgaven: discussie !!!

DT 2012-2013 5

Leervormen: oefeningen

 Wekelijks oefenzittingen tijdens de les  Zorg dat je bij bent met de stof.

 Per zitting: reeks opgaven ( eenvoudig -> moeilijker) 

Zelfstandig

oplossen: zelf actief verwerken van de leerstof, zelf programma’s schrijven  Oplossingen op bord DT 2012-2013 6

Leervorm: gequoteerde oefening

 Wekelijks een kleine individuele opdracht  Wordt gegeven op het einde van de oefenzitting en wordt ingediend ten laatste 48 uur voor de volgende les.

 Ligt typisch in de lijn van de oefenzitting  2 gekwoteerde oefeningen DT 2012-2013 7

Evaluatie bestaat uit 2 delen

 Gekwoteerde oefeningen Dit deel telt mee voor 6 van de 20 punten.

 Schriftelijk examen van 4 uur tijdens de zittijd.

Dit deel telt mee voor 14 van de 20 punten.

 Niet tolereerbare tekorten: het schriftelijk examen tijdens de zittijd.

Voor de tweede zit telt het eerste deel van de evaluatie enkel mee als het voordelig is voor de student.

DT 2012-2013 8

Examen: schriftelijk (14/20)

 schriftelijk examen tijdens de zittijd schrijven van een Prolog en een Haskell programma.

 alleen  schriftelijk   tijdens een examensessie van 4 uur in een CW pc labo: linux met SWI Prolog en GHC Online manuals van de systemen  Meebrengen: enkel slides van de cursus (eventueel met handgeschreven nota’s erop).

 kom ik erdoor als ik enkel Prolog ken?

DT 2012-2013 9

Declaratief paradigma

   Andere manier van programmeren met eigen/alternatieve concepten Leren “leren” van een ander paradigma Vreemd gaan …  Wat is wanneer zinvol?

 Integratie  Continue evolutie in programmeer paradigma’s.

DT 2012-2013 10

Prolog

Logisch programmeren Pro grammation en Log ique, 1972 DT 2012-2013 11

Prolog systeem

Voor examen en labozittingen: SWI Prolog http://www.swi-prolog.org

/ Voor persoonlijke oefening: idem, of YAP Prolog ...

!!!

niet

Turbo Prolog (of derivaten zoals Visual Prolog) in geval van twijfel, vraag het Online manual DT 2012-2013 12

 Bij het studeren van deze cursus kan je als

aanvulling

op de slides het volgende studiemateriaal raadplegen:  In de didactische cluster van de CBA vind je het volgende boek dat naast een introductie op Prolog (deel 1) ook een aantal Prolog programma's voor typische AI problemen bevat (deel 2).

PROLOG Programming for Artificial Intelligence, Ivan Bratko Addison Wesley, fourth edition 2012.

(ook de eerdere edities kan je raadplegen).

DT 2012-2013 13

 Bij het studeren van deze cursus kan je als aanvulling op de slides het volgende studiemateriaal raadplegen:  de online tutorial van P. Blackburn et al. (sinds kort ook als boek beschikbaar): http://www.learnprolognow.org

 de tutorial van Bartak : http://kti.ms.mff.cuni.cz/~bartak/prolog/index.html

 de tutorial van Fisher: http://www.csupomona.edu/~jrfisher/www/prolog_tu torial/ DT 2012-2013 14

Nog enkele nuttige links

 FAQ van Prolog: http://www.logic.at/prolog/faq/faq.pdf

 Met o.m. links naar nog meer boeken over Prolog  The World Wide Web Virtual Library: Logic Programming bron van "Prolog" gerelateerde informatie.

 Association of Logic Programming (ALP):

http://www.cs.nmsu.edu/ALP/

DT 2012-2013 15

Prolog Applications

Jeopardy: kennisquiz in USA PALINDROMIC WORDS A simpler way of saying "more lobster colored“ 200$ DT 2012-2013 16

Prolog Applications

 subtiele verwijzingen, ironie, raadsels, dubbelzinnigheden en andere complexe aanwijzigingen kunnen herkennen en analyseren.  Iets waar mensen in excelleren en computersystemen niet. DT 2012-2013 17

Prolog Applications

 IBM Watson: wint in 2011 Jeopardy tegen de superkampioenen!!

 http://www 03.ibm.com/innovation/us/watson/watson-for-a smarter-planet/building-a-jeopardy champion/how-watson-works.html

 NLP Parsers + patronen herkennen + zoeken in documenten + inschatten van juistheid DT 2012-2013 18