Live data from Hacker News

BASIC was not just a programming language

gcher.com

71–80 of 121 posts

Re: BASIC was not just a programming language

#71
post #4

I agree that dropping into the basic interpreter was amazing on the old 8 bit computers. Things have really changed recently with the popularity of Retro computing as I wrote about the exact same thing around 10-15 years ago (I can't find the post unfortunately) and I was downvoted a lot as almost all the commenters seemed to think that accessing DevTools in Google Chrome and entering Javascript commands was that sam…

“It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration.“ I genuinely feel that Dijkstra’s famous rant about BASIC had a big hand in killing it off. I don’t think it was the intention but it created so much bias against BASIC. If you created something in basic, or even suggested using…

I’m not sure Dijkstras quote had that much of an effect. Visual Basic was one of the most popular languages until Microsoft killed it.

Basic evolved to have blocks, scopes, procedures, and functions. Visual Basic is probably closer to Algol or Pascal than to the original GOTO-only BASIC which Dijkstra was complainig about. VB.Net has the same semantics as C# which means it is one of the most powerful languages available. But it is not really a good beginner language anymore.

Re: BASIC was not just a programming language

#72

"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration." --Edsger Dijkstra (1975)

As I commented in another thread, the idea of being permanently damaged by being taught the Wrong Thing is a misconception about learning. Yet most of us are where we're at by having survived many such things. I hope Dijkstra was being humorous. I used to wear his quote as a badge of honor.

I believe he was being humorous. Either way, I don't take it too seriously. After all, I also started programming with Basic.

Re: BASIC was not just a programming language

#73

Earlier quoted context omitted.

“It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration.“ I genuinely feel that Dijkstra’s famous rant about BASIC had a big hand in killing it off. I don’t think it was the intention but it created so much bias against BASIC. If you created something in basic, or even suggested using…

>impossible to teach good programming to students that have had a prior exposure to BASIC As someone whose first exposure to computer programming was BASIC on an Apple II in the early 1980s when I was around 8-9 years old and who later went on to learn multiple other programming languages, I always wondered what about BASIC inspired that particular sentiment. Was it the line numbers? The GOTO statement? The use of "G…

It was probably the lack of structure like blocks and scopes. Everything is flat and global and GOTO means control can enter and exit at any point.

Re: BASIC was not just a programming language

#74
post #63

"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration." --Edsger Dijkstra (1975)

And yet, I learned first on GW Basic and turned out to be a halfway decent programmer.

Compared to Dijkstra I'm quite certain that I'm a miserable programmer.

Re: BASIC was not just a programming language

#75
post #4

I agree that dropping into the basic interpreter was amazing on the old 8 bit computers. Things have really changed recently with the popularity of Retro computing as I wrote about the exact same thing around 10-15 years ago (I can't find the post unfortunately) and I was downvoted a lot as almost all the commenters seemed to think that accessing DevTools in Google Chrome and entering Javascript commands was that sam…

“It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration.“ I genuinely feel that Dijkstra’s famous rant about BASIC had a big hand in killing it off. I don’t think it was the intention but it created so much bias against BASIC. If you created something in basic, or even suggested using…

"Teamonkey's law" sounds good to me. Whenever BASIC is mentioned, someone will invoke Dijkstra's rant.

>If there’s one language guilty of causing brain damage it’s surely JavaScript.

I'm not sure about that. The only language that I felt led to bad things from developers was perl, mainly because it was so difficult to read later.

Re: BASIC was not just a programming language

#76
I remember when I finally figured out the point of GOSUB (I was maybe 13, so 1986), and why it was more powerful than GOTO. Still no stack, and the only calling convention was that RETURN would take you back to the line after where you called GOSUB.

Writing this words now, I don't know that I ever looked into what happened if you called GOSUB from a GOSUB routine, or how deep you could call. That would imply some sort of stack!

[edited to correct a typo]

Re: BASIC was not just a programming language

#77
post #76

I remember when I finally figured out the point of GOSUB (I was maybe 13, so 1986), and why it was more powerful than GOTO. Still no stack, and the only calling convention was that RETURN would take you back to the line after where you called GOSUB. Writing this words now, I don't know that I ever looked into what happened if you called GOSUB from a GOSUB routine, or how deep you could call. That would imply some sor…

Understanding the point of DATA was also a big breakthrough for me, but that happened earlier.

Re: BASIC was not just a programming language

#78
post #76

I remember when I finally figured out the point of GOSUB (I was maybe 13, so 1986), and why it was more powerful than GOTO. Still no stack, and the only calling convention was that RETURN would take you back to the line after where you called GOSUB. Writing this words now, I don't know that I ever looked into what happened if you called GOSUB from a GOSUB routine, or how deep you could call. That would imply some sor…

Coverting GOSUB X:RETURN to GOTO X was my first tail-call optimization.

> I don't know that I ever looked into what happened if you called GOSUB from a GOSUB routine

I want to say all BASICs had a stack (not sure about Apple Integer BASIC), or used the CPU stack. Expression evaluation also used it, and if you overflowed it you would get a ?FORMULA TOO COMPLEX error.

Re: BASIC was not just a programming language

#79
post #36

Always thought the raspberry pi was missing a trick by not just dropping straight into basic. It is supposed to be a learning tool, Linux is a brick wall of a learning curve (imo!) Anyway it's been a very long time since I used my raspberry pi, maybe this is now a feature.

[deleted]

Re: BASIC was not just a programming language

#80
post #76

I remember when I finally figured out the point of GOSUB (I was maybe 13, so 1986), and why it was more powerful than GOTO. Still no stack, and the only calling convention was that RETURN would take you back to the line after where you called GOSUB. Writing this words now, I don't know that I ever looked into what happened if you called GOSUB from a GOSUB routine, or how deep you could call. That would imply some sor…

Applesoft BASIC allowed nested GOSUBs. I think you could get about 10 deep, if memory serves. You could absolutely do recursive calls. You would have to implement subroutine-local variable scope yourself. (I would have use arrays with an index that incremented at the beginning of each call and decremented before the RETURN.)
Post reply on HN