|
|
|
|
|
by analog31
1300 days ago
|
|
That's a good question. What I'm thinking of (revealing my age) is something more like: 10 LET I = 1
20 PRINT I
30 LET I = I + 1
40 IF I <= 10 THEN 20
50 PRINT "DONE"
And because BASIC really is that primitive, you can talk about what each line of code is doing, without too much fiction. The mental virtual machine is not radically different from the real machine.The teacher would draw the variables as boxes with numbers in them, and update the numbers in the boxes with the eraser and chalk (further revealing my age). In contrast, Python starts with everything is an object, with properties and methods... But I agree about the fancy generator stuff. I think you can teach Python in the same fashion by limiting yourself to a few basic (sic) features, and adopt the same virtual machine fiction while remembering that it's a few more layers of abstraction away from reality. |
|
You don't have to start with "everything is an object", but you will get there quickly. Teaching procedural programming centered on numbers and strings and basic control flow in Python is not a challenge for a competent teacher. And then the language can grow with the learner as they gain understanding of computing and programming.