Vraag 1
Een simpel (niet programmeerbaar en geen geheugenplaatsen) rekenmachientje kent ook zijn eigen ``taal''. Welke van de volgende uitspraken is waar?
Vraag 2
In de regelgeving van het Ministerie van Onderwijs wordt vaak de term ``De Student'' gebezigd als de verzameling van alle Nederlandse studenten wordt bedoeld. Welk taalmechanisme wordt hierbij toegepast (kies het beste antwoord)?
Vraag 3
Bij programmeren wordt met twee soorten objecten gewerkt: data objecten en procedure objecten. Wat zorgt ervoor dat een object door Scheme als procedure object wordt behandeld?
Vraag 4
Gegeven de volgende combinatie (combination).
( 1+ ( lambda (x) x ) square ) -- ------ - - ------ a b c d eAlle objecten (data en procedure) zijn voorzien van een letter. Welke object(en) wordt/worden door Scheme tijdens de evaluatie van deze combinatie als procedure object behandeld?
Vraag 5
Gegeven de volgende expressie uit een Scheme programma.
( + 1 1 )Welke van de volgende uitspraken is het meest nauwkeurig?
Vraag 6
Scheme maakt gebruik van prefix notaties. Wat zijn de, in het boek genoemde, voordelen hiervan ten opzichte van de gewoonlijk wiskundige gebruiken (infix notatie)?
Vraag 7
Gegeven de volgende regel uit een Scheme programma.
( define size 2 )Welke van de volgende uitspraken is het meest nauwkeurig?
Vraag 8
Welke van de volgende uitspraken over ``else'' is waar?
Vraag 9
Gegeven het volgende stukje Scheme code A
A: ( if comb1 comb2 comb3 )en het stukje Scheme code B
B: ( let (( c1 comb1 ) ( c2 comb2 ) ( c3 comb3 )) ( cond ( c1 c2 ) ( else c3 )))Welke van de volgende uitspraken is waar?
Vraag 10
Gegeven de volgende Scheme procedure.
( define proc ( lambda (x) ( cond (( = x 0 ) 0 ) (( < x 0 ) ( proc ( - ( + x 1 )))) (( > x 0 ) ( proc ( - ( - x 1 )))))))Welke van de volgende uitspraken is waar?
Vraag 11
Gegeven de volgende Scheme procedure.
( define proc ( lambda (x) ( cond (( = x 0 ) 0 ) (( < x 0 ) ( proc ( - ( + x 1 )))) (( > x 0 ) ( proc ( - ( - x 1 )))))))Geef aan wat het resultaat is van ( proc n ), en de bijbehorende ruimte en tijd complexiteiten (n is een geheel getal).
ruimte | tijd | ||
resultaat | complexiteit | complexiteit | |
a. | 0 | 0(n) | 0(1) |
b. | 0 | 0(1) | 0(n) |
c. | n | 0(n) | 0(n) |
d. | n | 0(1) | 0(1) |
Vraag 12
Wat is de meest accurate beschrijving van een hogere-order procedure (higher-order procedure)?
Vraag 13
Gegeven de volgende procedure.
( define ( a b c d ) ( if ( = c 0 ) d ( a b ( - c 1 ) ( + d ( b c ))) ) )
Wat zal het resultaat zijn van de volgende combinatie?
( a ( lambda (n) ( * n 2 )) 5 0 )
Vraag 14
In een environment waarin x is gekoppeld (bound) aan 10, wat is dan het resultaat van de volgende Scheme expressie?
( let (( x 5 ) ( y ( * x 2 ))) ( + x y ))
Vraag 15
Gegeven de volgende Scheme procedure.
( define ( f n ) ( lambda (x) ( + x n )))Wat is nu een correcte manier om de som van 5 en 10 te berekenen?
Vraag 16
In de context van het manipuleren van lists, welke procedures kunnen dan als constructor en selector worden aangeduid.
Vraag 17
Welke expressie geeft hetzelfde resultaat als
( list 1 ( list 2 3 ))
Vraag 18
Gegeven de volgende procedure om het n-de element uit een list te halen.
( define ( nth n x ) ( if ( = n 0 ) ????? ( nth ( - n 1 ) ( cdr x ))))Wat moet er in plaats van de vraagtekens komen?
Vraag 19
Gegeven de volgende Scheme procedure ``proc''.
( define ( proc a b ) ( if ( null? a ) b ( cons ( car a ) ( proc ( cdr a ) b ))))Wat zou een betere naam voor ``proc'' zijn?
Vraag 20
Gegeven de volgende Scheme procedure ``proc''.
( define ( proc a ) ( cond (( null? a ) 0 ) (( atom? a ) 1 ) ( else ( + ( proc ( car a )) ( proc ( cdr a ))))))Wat zal de volgende expressie als resultaat geven?
( proc '(( 1 2 ) 3 ( 4 ( 5 6 )) 7 ( 8 9 )))
Vraag 21
Wat beschrijft het best de werking van de primitieve operatie ``atom?'', bijvoorbeeld
( atom? n )
Vraag 22
Gegeven een omgeving waarbinnen de volgende definities bestaan.
( define r ( list 'cons '+ ))Wat is het resultaat van
(( car r ) 3 4 )
Vraag 23
Wat is het resultaat van de volgende expressie?
( cadr '(( x1 x2 ) ( y1 y2 )))
Vraag 24
Het ``principle of least commitment'' heeft met name te maken met (kies het beste antwoord):
Vraag 25
Welke term hoort niet in het onderstaande rijtje thuis.
Vraag 26
Het introduceren van ``assignment'' in een taal als Scheme introduceert problemen. Welke van de onderstaande problemen is echter niet het gevolg van de introductie van ``assignment''?
Vraag 27
Gegeven het volgende stukje Scheme code.
( define l1 '( 1 ( 2 3 ) 4 )) ( define l2 '( 5 6 ( 7 8 ))) ( set-car! ( cdr ( cdr l2 )) ( cdr l1 ))Wat zal na uitvoer van deze code de waarde van l2 zijn?
Vraag 28
Welke van onderstaande termen heeft niet direkt te maken met het environment model?
Vraag 29
( define ( new-obj ) ( define x 0 ) ( define ( get? ) x ) ( define ( put! val ) ( set! x val )) ( define ( dispatch cond ) ( cond (( eq? cmd 'get? ) get? ) (( eq? cmd 'set! ) set! ))) dispatch ) ( define obj ( new-obj ))
Na evaluatie van de bovengenoemde Scheme code is de omgeving geschetst in bovenstaand figuur. Welke van de pointers a, b, c of d wijst naar de body van de ``dispatch'' procedure.
Vraag 30
( define ( new-obj ) ( define x 0 ) ( define ( get? ) x ) ( define ( put! val ) ( set! x val )) ( define ( dispatch cond ) ( cond (( eq? cmd 'get? ) get? ) (( eq? cmd 'set! ) set! ))) dispatch ) ( define obj ( new-obj ))
Pointers I en II wijzen naar environments. Naar welke environments wijzen zij?