View
220
Download
0
Category
Preview:
Citation preview
8/8/2019 Hea Dublin Shanshan Final in Warwick
1/13
Approaches for Teaching
Prolog to Beginners
By Shanshan Yang & Mike Joy
8/8/2019 Hea Dublin Shanshan Final in Warwick
2/13
Outline of the Presentation
Background
Methods
Findings Further work
8/8/2019 Hea Dublin Shanshan Final in Warwick
3/13
Teaching and Learning Prolog
Prolog: A typical declarative language
Challenges: Novices develop a Prolog
mindset Motivation: Aids novices to develop a Prolog
mindset
8/8/2019 Hea Dublin Shanshan Final in Warwick
4/13
Teaching Approaches
The first phase of this Project - study what
teaching approaches have been used
To aid learners to build a Prolog mindset
To deliver the first impression ofProlog
To link novices from different backgrounds into
the Prolog community
8/8/2019 Hea Dublin Shanshan Final in Warwick
5/13
8/8/2019 Hea Dublin Shanshan Final in Warwick
6/13
Findings
Classification of teaching approaches
Logic based approaches
Declarative features approaches
Program based approaches
8/8/2019 Hea Dublin Shanshan Final in Warwick
7/13
Classification 1
Logic based approaches
covers mathematic logic and/or logic
programming first.
Theoretical foundation - first-orderpredicate logic
For example: The art of Prolog: advanced programming
techniques by Sterling I. 1994
Mastering Prologby Lucas B. 1996
8/8/2019 Hea Dublin Shanshan Final in Warwick
8/13
Classification 2
Declarative features approaches Specification tool based
Database based
Problem solving based System Based
Known facts and relations based
For example: Prolog programming for artificial intelligence
by Bratko I. 2001
Programming in Prologby Clocksin W.F. &Mellish C.S. 2003
8/8/2019 Hea Dublin Shanshan Final in Warwick
9/13
Classification 3
Program based approaches Viewing the program constructs
contained
Viewing the interactions
between the programmer, programand interpreter
For example: Logic programming with Prologby Bramer
M. 2005
8/8/2019 Hea Dublin Shanshan Final in Warwick
10/13
Teaching Content
Approaches are used to introduce the basic ideas
ofProlog at the beginning of the learning process
Human as:
Programmer or User
Prolog Programs:
Store data, relations
Prolog System:
Search Answers
Design, Code Query
Answer
Based
8/8/2019 Hea Dublin Shanshan Final in Warwick
11/13
Prerequisites
Background Knowledge
Abstract theory:
first order predicate logic
Related academic knowledge:
Database
Program specification
Related computer knowledge:
Using computer systems
Entities
Categories
Prolog
Program
Prolog
SystemHuman
Logic BasedLogic
statements
Performing
logic
deduction
None
Declarative
Feature
Based
Database,
specification
Problem
solving
machine
Describe
problem,
query
Program
Based
Source files
with data
and relations
Prolog
interpreter
Develop,
handle
program
8/8/2019 Hea Dublin Shanshan Final in Warwick
12/13
Trend of changes over time
Because more practical and concrete
Years
Approaches
1
9
8
1
1
9
8
2
1
9
8
3
1
9
8
4
1
9
8
5
1
9
8
6
1
9
8
7
1
9
8
8
1
9
8
9
1
9
9
0
1
9
9
1
1
9
9
2
1
9
9
3
1
9
9
4
1
9
9
5
1
9
9
6
1
9
9
7
1
9
9
8
1
9
9
9
2
0
0
0
2
0
0
1
2
0
0
2
2
0
0
3
2
0
0
4
2
0
0
5
Logic Based
Declarative
features
SpecificationTool Based
DatabaseBased
Problem
Solving Based
System Based
Known Factsand Relations
Based
Programs Based
8/8/2019 Hea Dublin Shanshan Final in Warwick
13/13
Conclusions
Categorised teaching approaches currently
in use
Identified prerequisites are required forthese approaches
Identified trend of choice of approaches
changes in the past 25 years
Further work
Recommended