28.03.2014 Views

isbn9789526046266

isbn9789526046266

isbn9789526046266

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Not so that I first look and start thinking right away about why it’s done. ... It is a bit. . . a<br />

bit tricky, but luckily you can do them many times in UUhistle. So it isn’t, like, after you<br />

turn it in once and get full points after you’ve struggled with it for an hour 7 , you don’t get<br />

to do. . . So that you get to do it again so many times that you can then. . . like. . . basically,<br />

you redo it a couple of times after you’ve done it once. So, after that it starts getting easier<br />

when you. . . when you know what to do, so you can start thinking about why you’re doing<br />

it, but in the beginning it’s more like. . . it easily becomes, like. . . you don’t necessarily, like,<br />

think why this goes there, because you have no clue.<br />

Interviewer 1 : Mmm.<br />

Sue: About what you’re trying to do. But then when you get something to go<br />

somewhere. . . then you get. . . it gives you this clarity, things start rolling, so to speak.<br />

The author of the thesis noted in Section 14.2 that a program animation is, in a way, a worked-out<br />

example solution for a VPS problem. Seen from this perspective, we could describe Sue’s strategy as<br />

mechanically turning problems into worked-out examples, which she then studies in order to understand<br />

how to really solve the problem.<br />

An unusual conclusion: UUhistle ‘lied’<br />

At the beginning of Section 18.2.2, Pair 6 saw that two references pointed to the same list and used this<br />

to draw valid conclusions about program semantics. Pair 14 saw the same evidence but came to a very<br />

different conclusion.<br />

second = [3, 1, 3, value]<br />

third = second<br />

second[3] = 100<br />

print second<br />

print third<br />

second = third<br />

Pair 14 have successfully simulated the program’s execution until the last line quoted above.<br />

They are just noticing that there is only a single, modified list in the heap which both variables<br />

refer to:<br />

John 14 : How can it first, over there. . . that this “third” equals “second”? It goes all wrong<br />

now! Now that it’s been defined there, this “third”. Points at the code third = second.<br />

Kate 14 : Yeah.<br />

John 14 : So it’s not supposed to. . . when we changed that “second” afterward. . . [not supposed<br />

to] make it so. Points at the modified list in the heap. But it didn’t yet. . .<br />

Kate 14 : It’s not?<br />

John 14 : But it didn’t complain yet?<br />

Kate 14 : But. . . doesn’t it precisely because we define it first ... and then we change “second”.<br />

John 14 : It’s not supposed to, because. . .<br />

Kate 14 : Interrupts: Right, [we changed] the original “second”, right. . .<br />

John 14 : Like, if you define that “my name” is “your name”, and then we change your name<br />

afterwards, it shouldn’t change my name.<br />

Kate 14 : Right, yeah, right.<br />

John 14 : But it didn’t whine about it in any way so I suppose this (Moves the mouse cursor<br />

around the references stored in the variables.) is a feature in this [software].<br />

Kate 14 : But now we have again: “second” equals “third”.<br />

They carry out the assignment correctly.<br />

John 14 : Doesn’t seem to be going right.<br />

7 According to our logs, students extremely rarely spent an hour or longer on a VPS exercise. It is very likely that Sue is<br />

exaggerating here.<br />

313

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!