6/24/2026 at 4:10:58 PM
Dijkstra passed away in 2002, sometimes I wonder what he would write nowadays given that the world took the opposite direction of everything he deemed as correct in software development.by lp4v4n
6/24/2026 at 5:15:55 PM
I honestly never got why in college his opinions were just taken as mandates. I never bough into the "goto considered harmful" argument, for example.by JCattheATM
6/24/2026 at 6:35:09 PM
He was a proponent of a style of programming that was reasonable... you could reason about it and prove / demonstrate that it is doing what it should within that block of code as being correct.Imagine teaching someone BASIC or FORTRAN...
IF (IA .GT. 0 .AND. IB .GT. 0 .AND. IC .GT. 0) GOTO 10
WRITE (6, 602)
602 FORMAT (42H IA, IB, AND IC MUST BE GREATER THAN ZERO.)
STOP 1
10 CONTINUE
Or for something more complicated... https://github.com/ArthurFerreira2/STARTREK/blob/master/star... ... and arguably, that's well structured (its not doing a GOTO into the middle of a subroutine... I think). Tangent to that source code https://meatfighter.com/startrek1971/ for a port to C# (with line numbered goto).Dijkstra's approach to programming help take software development from a craft where each woodworker did things their own way and going from one shop to another meant relearning everything to something were one could more easily reason about how an application worked by removing some of the ability to write unstructured code. You can still write it... and I'm sure you can find some code that is convoluted ("... the determined Real Programmer can write FORTRAN programs in any language." https://www.ee.torontomu.ca/~elf/hack/real-programmers.html ).
Structured programming is also easier to teach. Yes, you can teach people how to write line numbered BASIC but the challenge is also teaching them discipline to not cut off their fingers when doing it. The structured programming approach it becomes easier to enforce that discipline as part of teaching ... and if they go and do dangerous things after they graduate from college, that's up to them.
by shagie
6/24/2026 at 5:30:01 PM
idk how old you are, but there there was a style in the 70s where goto was the only control flow operator used in a lot of codebases, and it was absolutely horrible.by convolvatron
6/24/2026 at 6:16:49 PM
I'm in my 40s, wasn't coding in the 70s. Horrible use of code is a different thing from removing something entirely, though. Just that almost every language removed goto as a response is kind of amazing to me.by JCattheATM