Talk:Dartmouth BASIC

"Basic" was not intended to be an acronym
Back in the 70's (and thereabouts) most programming language names were acronyms - FORTRAN was an acronym for "Formula Translation" and COBOL was "Common Business Oriented Language"

The original developers at Dartmouth named their language "Basic" because it was supposed to be a "basic" language, lacking the complexity and quirkiness of other languages of the day. An article in Byte Magazine sometime in the 80's printed an interview with the originators of the Basic programming language expressing that "Basic" was not originally intended to be an acronym, but the then convention that computer programming languages names be acronyms, they "invented" an acronym for it in the mid 60's.

Note that though I remember reading about it in several places, and the seminal reference book about the Basic program language was titled Basic Basic, (no acronym), I have not been able to find any of these older sources to cite. Jharris1993 (talk)

Untitled
I don't know anything about BASIC, but this sounds like an error:

> Greater Than

> Greater Than or Equal To

Recent contribution needs review
All of the following material is too informal, uncited, and lacking in NPOV. Haven't removed it yet. Maybe some of it can possibly be saved, moved elsewhere in the article, etc.


 * The early versions of BASIC were used and tested by other Dartmouth students working in the College Psychology labs in early 1964.[citation needed] The departments shared several IBM card punch machines that were used to run batch statistical analysis programs.


 * Students working on NSF grants in both departments lived in the same rural New Hampshire farmhouse during the summer of 1964.[citation needed] They often met to share ideas. A notable contribution of these late night sessions was the GOTO statement - as in "it's time to GOTO bed". The earliest printed versions of the users' manual were mimeographed with purple type and a pink cover!


 * Dr. Kemeny, an immigrant from Hungary and chairman of the Mathematics department at the time, eventually went on to serve with great distinction as president of the college. Mr. McGeachie, an undergraduate at the time, was called "Geach" by his friends and colleagues.


 * Dartmouth BASIC is best known for giving computer programming a human face and making it accessible to everyone.

Impact in Industry
DTSS had a big impact on industrial practice. Control Data Corporation's Kronos and NOS, Univac's RTB (real time basic) and Hewlett Packard (and most likely other companies) based their commercial timesharing systems on the BASIC language and interface. In the case of CDC, the sytsem was extended to multiple programming languages (BASIC, SNOBOL, FORTRAN and others) but with the same command and line-numbering system. DonPMitchell (talk) 05:27, 13 January 2008 (UTC)


 * True enough. You might want to add something about that to our article on the Dartmouth Time Sharing System. -- Derek Ross | Talk 07:18, 13 January 2008 (UTC)

Darthmouth?
I saw elsewhere this language called Darthmouth BASIC instead of Dartmouth BASIC. Was it a typing error, or a kind of joke reference to Darth Vader? Albmont (talk) 16:56, 10 September 2008 (UTC)


 * Typing error. -- Derek Ross | Talk 18:53, 10 September 2008 (UTC)

Repaired link to ANSI BASIC
The page ANSI BASIC has been redirected by the deletionists to BASIC, which says nothing whatsoever about ANSI BASIC or its peculiar interpretation of structured programming. Fortunately, a page that actually covers ANSI BASIC exists at User:PauliKL/ANSI_BASIC, otherwise the correct action would be to remove the link. My "repair" was to link to the user's page. 75.186.5.185 (talk) 21:44, 2 January 2011 (UTC)


 * It's been deleted? That's not right. ANSI BASIC was extremely influential on QBASIC and most of the modern implentations of BASIC. In essence it was implemented as Dartmouth BASIC 7 and its TrueBASIC successor. So why on earth did they decide to delete it ? -- Derek Ross | Talk 22:01, 2 January 2011 (UTC)

MAT?
The original Dartmouth Basic was unusual in having a matrix operator, MAT yet these are for some reason unmentioned in this article.

As shown in this example from the 1968 manual (http://www.bitsavers.org/pdf/dartmouth/BASIC_4th_Edition_Jan68.pdf BASIC, 4th Edition, 1968 page 53) which averages the numbers input:


 * COMMENT! It is not clear how the dimension of V is known! see more my comment about MAT with the same indentation.

I believe they persisted in most micro implementations, but were of course dropped by the later micro/ROM derivatives. Snori (talk) 01:31, 14 November 2011 (UTC)


 * Well they are mentioned, but only just. The MAT statements weren't in the original 1964 version which is the focus of this article. That's why they haven't been discussed in any detail. Nothing wrong with adding more about them to the article, though. Especially if you discuss version 3 of Dartmouth BASIC which first introduced them. And most micro implementations didn't have the MAT statements because when you implement BASIC in an 8K ROM something's got to give. The exceptions were TrueBASIC (which is basically Dartmouth BASIC for micros) and later the Full ANSI-compatible BASICs. -- Derek Ross &#124; Talk 07:33, 15 November 2011 (UTC)
 * I used BASIC in an HP-3000 computer, it had MAT and the available memory for a BASIC-3000 was either 8Kb or 16Kb, I don't remember.
 * The power of the MAT operations is that one can do operations like matrix products as far as I remember one could write code like this:




 * There is no need to write loops to do this product. In my experience it was rarely used because the books on numerical methods used FORTRAN and those programmers using BASIC instead, tended to transliterate the FORTRAN code to BASIC.
 * That was a very important feature of BASIC that could be very didactic for structuring the programmers mind thinking more abstractly instead of digging in the detail of the computation. Programmers should think in an abstract language to then implement in a computer language. But that is history and to much saliva was wasted discussing about the use or not of GOTOs, not in how to structure the programs, even using GOTOs.
 * The above example of MAT that was inserted in the article, is not clear, I just indented it to show the structure, but I don't remember things like the MAT INPUT instruction. If I clould, I don't know how BASIC-3000 is close to the Dartmouth BASIC. Because BASIC-3000 also had structured DO-END blocks, and functions could be recursive, but I don't remember the syntax.
 * Those who remember BASIC could write a clearer example of a program with MAT operations, for example reading the coefficients of linear equations solving it by computing the inverse, BASIC-3000 had a MAT operator for that purpose, and doing the MAT product to solve the system. Also make annotations about array re-dimensioning, because I remember that both FORTRAN IV and BASIC could. I also remember that MAT INPUT used a FOR LOOP, but that makes no sense, maybe my memory is confusing two different ways to enter arrays, one with MAT INPUT and other with inline FOR-NEXT loops. But that could be an extension of BASIC-3000.
 * Well that is all my suggestion on how to improve this article.

goto
The remark that one night discussion session produced the GOTO statement smells like a prank contribution. GOTO had been a staple of assembly language and essentially every higher level language throughout the previous history of computing. Conceivably GOTO is a mis-recollection of GOSUB, a curious feature of BASIC that (thankfully) never was adopted anywhere else. It would indeed be interesting to know how GOSUB got started. The sidelight about "Geach" seems eminently plausible, perhaps even more so when one realizes that McGeachie is actually pronounced m'gyew. I hesitate to fix anything in the article because I have never paid enough attention to BASIC to justify pontificating about it. Mdmi (talk) 14:04, 30 April 2014 (UTC)
 * GOSUB just works the way that CALL works in most assemblers. I doubt that there's more to it than that. The biggest difference between it and the procedure calls of other high-level languages is that GOSUB doesn't create a local environment for parameters or variables. -- Derek Ross &#124; Talk 19:03, 30 April 2014 (UTC)

Broken Links
There is probably a standard way to report them, but the first and third External Link are broken.

Wmdgus73 (talk) 03:55, 20 August 2015 (UTC)

External links modified
Hello fellow Wikipedians,

I have just modified one external link on Dartmouth BASIC. Please take a moment to review my edit. If you have any questions, or need the bot to ignore the links, or the page altogether, please visit this simple FaQ for additional information. I made the following changes:
 * Added archive https://web.archive.org/web/20120702192626/http://www.retrowiki.es/e107_plugins/content/content.php?content.186 to http://www.retrowiki.es/e107_plugins/content/content.php?content.186

When you have finished reviewing my changes, you may follow the instructions on the template below to fix any issues with the URLs.

Cheers.— InternetArchiveBot  (Report bug) 20:13, 4 September 2017 (UTC)

GE 225 + Datanet 30 = GE-265?
The system would work by having the DN-30 run the terminals and save the work to the disk. When the user typed RUN, the GE-225 would read that file, compile it, run it, and pass back the results to be printed on the terminal.[13] This combination of machines was later known as the GE-265, adding their model numbers. GE built about fifty additional examples of the GE-265, many for their service bureau business. GE referred to these as their Mark I time-sharing systems.[14]

Either there is some system with a '10' in the name missing (the hard drive??) in this or this statement about adding the model numbers is just wrong — Preceding unsigned comment added by Sejtam (talk • contribs) 07:05, 30 March 2021 (UTC)
 * Well spotted! The 225 was replaced by a 235, and it was that combo that gave its name to the 265. Fully reffed. Maury Markowitz (talk) 19:38, 17 June 2022 (UTC)