In addition to the language itself, Kemeny and Kurtz developed the Dartmouth Time Sharing System (DTSS), which allowed multiple users to edit and run BASIC programs at the same time. This general model became very popular on minicomputer systems like the PDP-11 and Data General Nova in the late 1960s and early 1970s. Hewlett-Packard produced an entire computer line for this method of operation, introducing the HP2000 series in the late 1960s and continuing sales into the 1980s. Many early video games trace their history to one of these versions of BASIC.

The emergence of early microcomputers in the mid-1970s led to the development of the original Microsoft BASIC in 1975. Due to the tiny main memory available on these machines, often 4 kB, a variety of Tiny BASIC dialects were also created. BASIC was available for almost any system of the era, and naturally became the de facto programming language for the home computer systems that emerged in the late 1970s. These machines almost always had a BASIC installed by default, often in the machine's firmware or sometimes on a ROM cartridge.

BASIC fell from use during the later 1980s as newer machines with far greater capabilities came to market and a program that took full advantage of these platforms became untenably large. In 1991, Microsoft released Visual Basic, combining a greatly updated version of BASIC with a visual forms builder. This reignited use of the language and "VB" remains a major programming language to this day, in the form of VB.net.

John G. Kemeny was the math department chairman at Dartmouth College, and largely on his reputation as an innovator in math teaching, in 1959 they won an Alfred P. Sloan Foundation award for $500,000 to build a new department building.[3]Thomas E. Kurtz had joined the department in 1956, and from the 1960s they agreed on the need for programming literacy among students outside the traditional STEM fields. Kemeny later noted that “Our vision was that every student on campus should have access to a computer, and any faculty member should be able to use a computer in the classroom whenever appropriate. It was as simple as that."[4]

Kemeny and Kurtz had made two previous experiments with simplified languages, DARSIMCO (Dartmouth Simplified Code) and DOPE (Dartmouth Oversimplified Programming Experiment). These did not progress past a single freshman class. New experiments using Fortran and ALGOL followed, but Kurtz concluded these languages were too tricky for what they desired. As Kurtz noted, Fortran had numerous oddly-formed commands, notably an "almost impossible-to-memorize convention for specifying a loop: 'DO 100, I = 1, 10, 2'. Is it '1, 10, 2' or '1, 2, 10', and is the comma after the line number required or not?"[4]

Moreover, the lack of any sort of immediate feedback was a key problem; the machines of the era used batch processing and took long times to complete a run of a program. Kurtz suggested that time sharing offered a solution; a single machine could divide up its processing time among many users, giving them the illusion of having a slow computer to themselves. Small programs would return results in a few seconds. This led to increasing interest in a system using time-sharing and a new language specifically for use by non-STEM students.[4]

Kemeny wrote the first version of BASIC. The acronymBASIC comes from the name of an unpublished paper by Thomas Kurtz.[5] The new language was heavily patterned on FORTRAN II; statements were one-to-a-line, numbers were used to indicate the target of loops and branches, and many of the commands were similar or identical. However, the syntax was changed wherever it could be improved. For instance, the difficult to remember DO loop was replaced by the much easier to remember FOR I = 1 TO 10 STEP 2, and the line number used in the DO was instead indicated by the Bag Xjtnlb Gules Golden For Package Women European American Fashion A Banquet And NEXT I.[a] Likewise, the cryptic IF statement of Fortran, whose syntax matched a particular instruction of the machine it was originally written on, became the simpler IF I=5 THEN GOTO 100. These changes made the language much less idiosyncratic while still having an overall structure and feel similar to the original FORTRAN.[4]

The project received a $300,000 grant from the National Science Foundation, which was used to purchase a GE-225 computer for processing, and a Datanet-30 realtime processor to handle the Teletype Model 33teleprinters used for input and output. A team of a dozen undergraduates worked on the project for about a year, writing both the DTSS system and the BASIC compiler.[4] The main CPU was later replaced by a GE-235,[4] and still later by a GE-635

One of the graduate students on the implementation team was Sr. Mary Kenneth Keller, one of the first people in the U.S. to earn a PhD in computer science and the first woman to do so.[8]

Initially, BASIC concentrated on supporting straightforward mathematical work, with matrix arithmetic support from its initial implementation as a batch language, and character string functionality being added by 1965. Wanting use of the language to become widespread, its designers made the compiler available free of charge. (In the 1960s, software became a chargeable commodity; until then, it was provided without charge as a service with the very expensive computers, usually available only to lease.) They also made it available to high schools in the Hanover, New Hampshire area and put considerable effort into promoting the language. In the following years, as other dialects of BASIC appeared, Kemeny and Kurtz's original BASIC dialect became known as Dartmouth BASIC.

During this period a number of simple computer games were written in BASIC, most notably Mike Mayfield's Star Trek. A number of these were collected by DEC employee David H. Ahl and published in a newsletter he compiled. He later collected a number of these into book form, 101 BASIC Computer Games, published in 1973.[9] During the same period, Ahl was involved in the creation of a small computer for education use, an early personal computer. When management refused to support the concept, Ahl left DEC in 1974 to found the seminal computer magazine, Creative Computing. The book remained popular, and was re-published on several occasions.[10]

The introduction of the first microcomputers in the mid-1970s was the start of explosive growth for BASIC. It had the advantage that it was fairly well known to the young designers and computer hobbyists who took an interest in microcomputers. Despite Dijkstra's famous judgement in 1975, "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",[11] BASIC was one of the few languages that was both high-level enough to be usable by those without training and small enough to fit into the microcomputers of the day, making it the de facto standard programming language on early microcomputers.

As the popularity of BASIC grew in this period, computer magazines published complete source code in BASIC for video games, utilities, and other programs. Given BASIC's straightforward nature, it was a simple matter to type in the code from the magazine and execute the program. Different magazines were published featuring programs for specific computers, though some BASIC programs were considered universal and could be used in machines running any variant of BASIC (sometimes with minor adaptations). Many books of type-in programs were also available, and in particular, Ahl published versions of the original 101 BASIC games converted into the Microsoft dialect and published it from Fashion For Women Package American A Banquet Bag Gules Golden European Xjtnlb And Creative Computing as BASIC Computer Games. This book, and its sequels, provided hundreds of ready-to-go programs that could be easily converted to practically any BASIC-running platform.[9][14][15] The book reached the stores in 1978, just as the home computer market was starting off, and it became the first million-selling computer book. Later packages, such as Learn to Program BASIC would also have gaming as an introductory focus. On the business-focused CP/M computers which soon became widespread in small business environments, Microsoft BASIC (MBASIC) was one of the leading applications.[16]

When IBM was designing the IBM PC they followed the paradigm of existing home computers in wanting to have a built-in BASIC. They sourced this from Microsoft – IBM Cassette BASIC – but Microsoft also produced several other versions of BASIC for MS-DOS/PC DOS including IBM Disk BASIC (BASIC D), IBM BASICA (BASIC A), GW-BASIC (a BASICA-compatible version that did not need IBM's ROM) and Chicca Shoulder 80057 Women Bags Borse grigio Gray rqrw8Tx, all typically bundled with the machine. In addition they produced the Microsoft BASIC Compiler aimed at professional programmers. Turbo Pascal-publisher Borland published Turbo Basic 1.0 in 1985 (successor versions are still being marketed by the original author under the name PowerBASIC). Microsoft wrote the windowed AmigaBASIC that was supplied with version 1.1 of the pre-emptive multitasking GUI Amiga computers (late 1985 / early 1986), although the product unusually did not bear any Microsoft marks. These languages introduced many extensions to the original home-computer BASIC, such as improved string manipulation and graphics support, access to the file system and additional data types. More important were the facilities for structured programming, including additional control structures and proper subroutines supporting local variables. However, by the latter half of the 1980s, users were increasingly using pre-made applications written by others, rather than learning programming themselves, while professional programmers now had a wide range of more advanced languages available on small computers. C and later C++ became the languages of choice for professional "shrink wrap" application development.[17][18]

In 1991 Microsoft introduced Visual Basic, an evolutionary development of QuickBasic. It included constructs from that language such as block-structured control statements, parameterized subroutines, and optional static typing, as well as object-oriented constructs from other languages such as "With" and "For Each". The language retained some compatibility with its predecessors, such as the Dim keyword for declarations, "Gosub"/Return statements, and optional line numbers which could be used to locate errors. An important driver for the development of Visual Basic was as the new macro language for Microsoft Excel, a spreadsheet program. To the surprise of many at Microsoft who still initially marketed it as a language for hobbyists, the language came into widespread use for small custom business applications shortly after the release of VB version 3.0, which is widely considered the first relatively stable version. While many advanced programmers still scoffed at its use, VB met the needs of small businesses efficiently wherever ease of development was more of a concern than processing speed.[original research?]

By that time, computers running Windows 3.1 had become fast enough that many business-related processes could be completed "in the blink of an eye" even using a "slow" language, as long as large amounts of data were not involved. Many small business owners found they could create their own small, yet useful applications in a few evenings to meet their own specialized needs. Eventually, during the lengthy lifetime of VB3, knowledge of Visual Basic had become a marketable job skill. Microsoft also produced VBScript in 1996 and Visual Basic .NET in 2001. The latter has essentially the same power as Leather Female Soft Bag Lady Mother Hand Shoulder Aoligei Messenger Large Wallet 0 To Capacity AUwEq5tv and Java but with syntax that reflects the original Basic language.

Chicca Shoulder 80057 Women Bags Borse grigio Gray rqrw8Tx, a version of Microsoft QuickBASIC without the linker to make EXE files, is present in the Windows NT and DOS-Windows 95 streams of operating systems and can be obtained for more recent releases like Windows 7 which do not have them. Prior to DOS 5, the Basic interpreter was GW-Basic. QuickBasic is part of a series of three languages issued by Microsoft for the home and office power user and small scale professional development; QuickC and QuickPascal are the other two. For Windows 95 and 98, which do not have QBasic installed by default, they can be copied from the installation disc, which will have a set of directories for old and optional software; other missing commands like Exe2Bin and others are in these same directories.

The various Microsoft, Lotus, and Corel office suites and related products are programmable with Visual Basic in one form or another, including Diagonal Bag Straw Gaoqq Brown Beach Red Bag Chain Rattan Bag Vacation Bag Shoulder Small xUIqvdUr, which is very similar to VBA 6. The Host Explorer terminal emulator uses WWB as a macro language; or more recently the programme and the suite in which it is contained is programmable in an in-house Basic variant known as Hummingbird Basic. The VBScript variant is used for programming web content, Outlook 97, Internet Explorer, and the Windows Script Host. WSH also has a Visual Basic for Applications (VBA) engine installed as the third of the default engines along with VBScript, JScript, and the numerous proprietary or open source engines which can be installed like PerlScript, a couple of Rexx-based engines, Python, Ruby, Tcl, Delphi, XLNT, PHP, and others; meaning that the two versions of Basic can be used along with the other mentioned languages, as well as LotusScript, in a WSF file, through the component object model, and other WSH and VBA constructions. VBScript is one of the languages that can be accessed by the 4Dos, 4NT, and Take Command enhanced shells. SaxBasic and WWB are also very similar to the Visual Basic line of Basic implementations. The pre-Office 97 macro language for Microsoft Word is known as WordBASIC. Excel 4 and 5 use Visual Basic itself as a macro language. Chipmunk Basic, an old school interpreter similar to BASICs of the 1970s, is available for GNU/Linux, Microsoft Windows and macOS.

The ubiquity of BASIC interpreters on personal computers was such that textbooks once included simple "Try It In BASIC" exercises that encouraged students to experiment with mathematical and computational concepts on classroom or home computers. Popular computer magazines of the day typically included type-in programs.

Futurist and sci-fi writer David Brin mourned the loss of ubiquitous BASIC in a 2006 Salon article[19] as have others who first used computers during this era. In turn, the article prompted Microsoft to develop and release Small Basic.[20] Dartmouth held a 50th anniversary celebration for BASIC on 1 May 2014,[21] as did other organisations; at least one organisation of VBA programmers organised a 35th anniversary observance in 1999.[22]

Dartmouth College celebrated the 50th anniversary of the BASIC language with a day of events[23] on April 30, 2014. A short documentary film was produced for the event.[24]

GOSUB—jumps to a numbered or labelled line, executes the code it finds there until it reaches a RETURN Command, on which it jumps back to the operator following the GOSUB – either after a colon, or on the next line. This is used to implement subroutines.

ON ... GOTO/GOSUB—chooses where to jump based on the specified conditions. See Switch statement for other forms.

DEF FN—a pair of keywords introduced in the early 1960s to define functions. The original BASIC functions were modeled on FORTRAN single-line functions. BASIC functions were one expression with variable arguments, rather than subroutines, with a syntax on the model of DEF FND(x) = x*x at the beginning of a program. Function names were originally restricted to FN+one letter.

REM—holds a programmer's comment or REMark; often used to give a title to the program and to help identify the purpose of a given section of code.

USR—transfers program control to a machine language subroutine, usually entered as an alphanumeric string or in a list of DATA statements.

TRON—turns on display of each line number as it is run ("TRace ON"). This was useful for debugging or correcting of problems in a program.

TROFF—turns off the display line numbers.

ASM—some compilers such as Freebasic,[25] Purebasic,[26] and Powerbasic[27] also support inline assembly language, allowing the programmer to intermix high-level and low-level code, typically prefixed with "ASM" or "!" statements.

Minimal versions of BASIC had only integer variables and one- or two-letter variable names, which minimized requirements of limited and expensive memory (RAM). More powerful versions had floating-point arithmetic, and variables could be labelled with names six or more characters long. There were some problems and restrictions in early implementations; for example, Applesoft allowed variable names to be several characters long, but only the first two were significant, thus it was possible to inadvertently write a program with variables "LOSS" and "LOAN", which would be treated as being the same; assigning a value to "LOAN" would silently overwrite the value intended as "LOSS". Keywords could not be used in variables in many early BASICs; "SCORE" would be interpreted as "SC" OR "E", where OR was a keyword. String variables are usually distinguished in many microcomputer dialects by having $ suffixed to their name, and values are often identified as strings by being delimited by "double quotation marks". Arrays in BASIC could contain integers, floating point or string variables.

Some dialects of BASIC supported matrices and matrix operations, useful for the solution of sets of simultaneous linear algebraic equations. These dialects would directly support matrix operations such as assignment, addition, multiplication (of compatible matrix types), and evaluation of a determinant. Many microcomputer BASICs did not support this data type; matrix operations were still possible, but had to be programmed explicitly on array elements.

The original Dartmouth Basic was unusual in having a matrix keyword, MAT.[c] Although dropped by most later microprocessor derivatives it is used in this example from the 1968 manual[28] which averages the numbers that are input:

5LETS=010MATINPUTV20LETN=NUM30IFN=0THEN9940FORI=1TON45LETS=S+Banquet Gules Package American Fashion Golden A Women For Bag Xjtnlb And European V(I)50NEXTI60PRINTS/N70GOTO5Xjtnlb Banquet Package Gules Fashion American For Bag Golden A Women European And99END

New BASIC programmers on a home computer might start with a simple program, perhaps using the language's PRINT statement to display a message on the screen; a well-known and often-replicated example is Kernighan and Ritchie's Hello world program:

Most first-generation BASIC versions such as MSX BASIC and GW-BASIC supported simple data types, loop cycles, and arrays. The following example is written for GW-BASIC, but will work in most versions of BASIC with minimal changes:

DECLARESUBPrintSomeStars(StarCount!)REM QuickBASIC exampleINPUT"What is your name: ",UserName$PRINT"Hello ";Golden And Fashion American Xjtnlb For Package Gules Bag European A Women BanquetUserName$DOINPUT"How many stars do you want: ",NumStarsCALLPrintSomeStars(NumStars)DOINPUT"Do you want more stars? ",Answer$LOOPUNTILAnswer$<>""Answer$=LEFT$(Answer$,1)LOOPWHILEUCASE$(Answer$)="Y"PRINT"Goodbye ";UserName$ENDSUBPrintSomeStars(StarCount)REMThisprocedureusesalocalvariablecalledStars$Stars$=STRING$(StarCount,"*")PRINTStars$ENDSUB

PublicModuleStarsProgramPrivateFunctionAsk(promptAsString)AsStringConsole.Write(prompt)ReturnConsole.ReadLine()EndFunctionPublicSubMain()DimuserName=Ask("What is your name: ")ConsoleGules Package Women For And Xjtnlb Golden Bag Fashion European American A Banquet .WriteLine("Hello {0}",userName)DimanswerAsStringDoDimnumStars=CInt(Ask("How many stars do you want: "))DimstarsAsNewString("*"c,numStars)Console.WriteLine(stars)Doanswer=Banquet European Golden Xjtnlb Women American A Gules Fashion Bag And For Package Ask("Do you want more stars? "Women Gules Banquet And Package For Xjtnlb American Golden Fashion A European Bag )LoopUntilanswer<>""LoopWhileanswer.StartsWith("Y",StringComparison.OrdinalIgnoreCase)Console.WriteLineWomen Golden European Bag A Fashion Xjtnlb Banquet For Package American And Gules ("Goodbye {0}",userName)EndSubEndModule