100% satisfaction guarantee Immediately available after payment Both online and in PDF No strings attached 4.2 TrustPilot
logo-home
Summary

Samenvatting hoofdstuk 4: Query Evaluator

Rating
-
Sold
-
Pages
26
Uploaded on
27-07-2022
Written in
2019/2020

Dit is de samenvatting van het vierde hoofdstuk van het vak Interpretatie van Computerprogramma's I. In deze samenvatting werd zowel alle informatie uit de slides als bijkomende informatie uit eigen notities opgenomen. Aan het einde van de samenvatting werden ook de herhalingsvragen opgelost EINDRESULTAAT: 16/20

Show more Read less
Institution
Module










Whoops! We can’t load your doc right now. Try again or contact support.

Connected book

Written for

Institution
Study
Module

Document information

Summarized whole book?
No
Which chapters are summarized?
Hoofdstuk 4.4
Uploaded on
July 27, 2022
Number of pages
26
Written in
2019/2020
Type
Summary

Subjects

Content preview

Hoofdstuk 4: De query evaluator
1 Opvragingen ten opzichte van beweringen




Beweringen

• elke bewering is een lijst van constanten
o een lijst van constanten wordt ook
als een constante beschouwd!
• het eerste element van de lijst kwalificeert
meestal de bewering

2 Toevoegen van beweringen

3 Enkelvoudige opvragingen
• Elke enkelvoudige opvraging bestaat uit een
zogenaamd patroon: een lijst van constanten
en logische variabelen
• Een logische variabele is een symbool dat
met ? begint
• Elk resultaat voor een enkelvoudige
opvraging komt overeen

1

, met een frame van bindingen voor logische variabelen dat het patroon, na vervanging van
elke logische variabele in het patroon door de corresponderende waarde in het frame,
gelijkmaakt aan een bewering

3.1 Stream van frames als resultaat voor opvraging




4 Voorstelling van invoer voor de evaluator
(define (query-syntax-process exp)
(map-over-symbols expand-question-mark exp))

(define (map-over-symbols proc exp)
(cond ((pair? exp)
(cons (map-over-symbols proc (car exp))
(map-over-symbols proc (cdr exp))))
Als we met een pair te maken krijgen, consen we de map op de car aan
de map op de cdr.
((symbol? exp) (proc exp))
Symbool → procedure toepassen op symbool
(else exp)))

(define (expand-question-mark symbol)
(let ((chars (symbol->string symbol)))
(if (string=? (substring chars 0 1) "?")
(list '? Als het gekregen symbool met een ? begint maken we
(string->symbol een lijst met car = ? en cadr = rest
(substring chars 1 (string-length chars))))
symbol)))

2

, • Dure operaties op symbolen en strings. Maar anders moesten die door de evaluator
herhaaldelijk uitgevoerd worden om logische variabelen in een patroon te herkennen!
• Omvorming naar lijst met als car ? en als cdr de rest van het initiële symbool om later tagged-
list? te kunnen gebruiken.




(define (tagged-list? exp tag)
(if (pair? exp) (eq? (car exp) tag) false))
Een expressie is een tagged-list als het een paar is en de car
overeenkomt met de meegegeven tag
(define (var? exp) (tagged-list? exp '?))
Expressie = variable als het begint met ?
(define (constant-symbol? exp) (symbol? exp))
Expressie is een constante als ze een symbool is

(define (type exp)
(if (pair? exp)
(car exp)
Type van exp zit in de car van de exp
(error "Unknown expression TYPE" exp)))

(define (contents exp)
(if (pair? exp)
(cdr exp)
Contents van exp zitten in de cdr van de exp
(error "Unknown expression CONTENTS" exp)))

(define (assertion-to-be-added? exp)
(eq? (type exp) 'assert!))
Als het type van de exp ‘assert! is, is het een assertion die moet
worden toegevoegd.

(define (add-assertion-body exp)
(car (contents exp)))
De car van de contents van een assertion expressie bevat zijn body


3
£3.13
Get access to the full document:

100% satisfaction guarantee
Immediately available after payment
Both online and in PDF
No strings attached


Also available in package deal

Get to know the seller

Seller avatar
Reputation scores are based on the amount of documents a seller has sold for a fee and the reviews they have received for those documents. There are three levels: Bronze, Silver and Gold. The better the reputation, the more your can rely on the quality of the sellers work.
lennyS Vrije Universiteit Brussel
Follow You need to be logged in order to follow users or courses
Sold
163
Member since
5 year
Number of followers
62
Documents
34
Last sold
2 weeks ago

4.5

6 reviews

5
4
4
1
3
1
2
0
1
0

Recently viewed by you

Why students choose Stuvia

Created by fellow students, verified by reviews

Quality you can trust: written by students who passed their exams and reviewed by others who've used these revision notes.

Didn't get what you expected? Choose another document

No problem! You can straightaway pick a different document that better suits what you're after.

Pay as you like, start learning straight away

No subscription, no commitments. Pay the way you're used to via credit card and download your PDF document instantly.

Student with book image

“Bought, downloaded, and smashed it. It really can be that simple.”

Alisha Student

Frequently asked questions