Preferences

> There shouldn't be a lot of people that knows the Basic Dijkstra was talking about in an undergrad course in 2016.

please clarify.

few know basic in 2016?

few know Dijkstra said it in 2016?

in 2016 few knew that Dijkstra made the claim at some earlier point in time?

I don't understand what you want to say.


"In 2016, there should not be many undergraduates that are familiar with the version of Basic that Dijkstra was referring to when he made this quote in 1975"

see https://www.cs.utexas.edu/~EWD/transcriptions/EWD04xx/EWD498... for the original quote

thank you!
Dijkstra was talking about Dartmouth Basic in 1975:

  - Variables: Single letter, optional digit.
  - Control flow: FOR loops, GOTO for others.
  - Subroutines: GOSUB line, RETURN.
  - Parameters: Passed via global variables.
  - Functions: 26 (FNA–FNZ), one line each.
  - IF statements: One line only.
In terms of control flow, that's basically assembly, just with a friendlier syntax.
It's much worse than assembly. On all but the shittiest machines, you can store code pointers in RAM and registers, and in a subroutine call, the return address is stored somewhere you can read and change it (whether on a stack, in a register, or before the first instruction of the called subroutine). This allows you to implement object-oriented programming, switch/case, backtracking, and multithreading in assembly. You can't do that in BASIC.

Also, since the early 01960s, all but the most primitive assemblers have macros and named labels. One result is that they have an unlimited number of named functions with line number independence, as marcosdumay said. Many of them have a sufficiently powerful macro system to implement nested control structures like while loops and multiline if. Since the 01970s they've also had local labels. BASIC doesn't have any of that.

Modern assembly you give you named functions, line number independence, unlimited functions, places for carrying a value over RET... Basic had none of those.

This item has no comments currently.

Keyboard Shortcuts

Story Lists

j
Next story
k
Previous story
Shift+j
Last story
Shift+k
First story
o Enter
Go to story URL
c
Go to comments
u
Go to author

Navigation

Shift+t
Go to top stories
Shift+n
Go to new stories
Shift+b
Go to best stories
Shift+a
Go to Ask HN
Shift+s
Go to Show HN

Miscellaneous

?
Show this modal