Knowledge (XXG)

Full BASIC

Source 📝

345:
X3 in 1983 for ratification that year. This proved rather optimistic. The first draft was not released until January 1985 and the final draft in 1986 for ratification in January 1987. During this time, the standard grew so large that it was ultimately split into a core module and five optional add-ons, which included complex file handling, real-time computing support, fixed decimal math, optional editing commands and even a platform-independent graphics module.
2901: 5459: 349:
attempted". It goes on to describe, for instance, how there are no less than five different ways to describe a subroutine, three to define a string's maximum length and two ways to define an array. Referring to the issue of array bounds, it is noted that the committee agreed the adopted solution was "intolerable" and made plans to fix it "later".
647:, which holds its value separate from other variables with the same name in other locations in the composite program. As BASIC did not have the concept of scope, many programs relied on the global behaviour and used variables to pass information in and out of subroutines. To allow both concepts in the new language, Full BASIC added the 401:. True BASIC combined many of the features of the core standard but also made a number of changes of its own. Among the most notable was that line numbering was now optional. The language was not well received, with many reviews expressing the same concerns about feature bloat that had been raised about the Full BASIC standard. 430:
to indicate individual or ranges of lines to be edited or removed. Line numbers could range from 1 to 50,000, in contrast to Minimal which was 0 through 9999. This meant that valid Minimal programs using line 0 were invalid in Full. Logical lines were at least 132 characters long. Logical lines could
1535:
The ISO working group had initially planned to use ECMA's standard. Faced with the problem of two different candidate standards, in September 1987 it was directed to develop a single international standard unifying the two. This was accomplished by specifying that compliance to either standard could
344:
Initially, the X3.60 group was targeting a summer 1982 date for the first technical review copy, which would be sent to the ANSI X3 committee in the fall. During this period the proposed standard would be sent out, and comments from the public would be accepted. The final draft would be sent back to
332:
was added in later versions of the Dartmouth code so the same definition would have four slots, 0 to 3. During Minimal, there was continual debate about what the default base should be, and 0 was finally selected. Five years later, during the Full efforts, it was decided that arrays could define any
667:
Full BASIC introduced long variable names, finally breaking free of the single letter or letter-digit names of the past. It set the new limit at 31 characters. One minor downside to this change was that keywords had to have spaces between them, whereas most earlier versions allowed the spaces to be
1061:
Many dialects of BASIC had added their own methods of performing more useful string manipulation to avoid such complication. For Full BASIC, the committee selected a variation on the concept introduced by HP, "string slicing". This concept treats the string as an array of characters and can access
514:
On top of the relatively small set of 23 keywords and 11 functions from Minimal, Full added dozens of its own, for a total of 176 keywords (defining 161 separate concepts), 38 mathematical functions and 14 string functions if all extensions were included. A simple list of the keywords, laid out in
204:
In January 1974 a new group formed under the ANSI umbrella to define a single standard BASIC. The Dartmouth team formed a core part of the group. Dartmouth was working on a greatly expanded version of BASIC known as Structured BASIC (SBASIC) which became the basis for ANSI. At the time, few other
1467:
The system also allowed these blocks and objects to be connected to external code that would create these messages. One could, for instance, have code that waited on a device that periodically created text output, and then the appropriate handler would automatically be called when new text was
1527:
Independently of ANSI, the ECMA committee responsible for the BASIC standard split it in two: ECMA BASIC-1 and ECMA BASIC-2. BASIC-1 included some of the file manipulation system but lacked the exception handling, while BASIC-2 added the full suite of file commands, fixed decimal math and the
352:
There is no evidence that any of the participants actually built a conforming version after the release of the standard and any mention of ongoing effort promptly disappears. From 1987, the only mentions of the standard are that it exists and that True BASIC encompassed some of its features.
348:
The result was criticized during the public comment period. One reviewer noted it had grown so large that "the resulting language rivals any current programming language in complexity" and that "conforming to the entire standard would compare with the most substantial compiler projects ever
676:
because "FORS" is a valid variable name. As was the case in earlier BASICs, data types in Full were denoted by suffixes on the variable name. Minimal had avoided this issue by only having numeric variables, but Full included strings as well, denoted using the dollar-sign, for instance
293:
as every member began to add their own list of "must have" features. Some wanted the language to continue the tradition of being aimed at educational uses running on small machines and desired a simple language with only rudimentary file support and similar features. Others were
532:
loop, where all of the lines from the FOR to NEXT were logically considered to be a single block of code. Branching into or out of a FOR block would result in odd behaviour, typically implementation dependant but generally some form of error like "NEXT WITHOUT FOR".
310:. A third group was primarily interested in business applications, especially European users where BASIC had become a primary business language, and they demanded the system include extensive file handling and decimal math that did not suffer from rounding problems. 611:
and did not declare a return type as that was part of the name - string function names ended with the dollar sign. The return value was provided by setting a variable to the same name as the function, for instance, a function named "DOIT" would contain a line like
523:
The major difference between Full and Minimal was the addition of block-oriented structured programming constructs. In Minimal, and most BASIC interpreters, the program logically consisted of independent lines of code and one could start execution at any point by
1523:
The ECMA and ANSI standards were not developed jointly but in parallel, though with overlapping committee membership. Conversely, the ISO working group for BASIC did not develop a standard of their own, instead planning to adopt either the ECMA or ANSI standard.
482:
for instance. There were numerous minor changes to these commands. For instance, at edit time keywords can be typed in upper or lower case, or any mixture. As was the case in the past, they were normally displayed in uppercase, while a new convention was to use
707:
would set all numeric variables to have 8 digits of accuracy and two decimal places. Such a declaration must be placed before any mathematics code in the rest of the program. Furthermore, any single variable could be individually defined using something like
1180:, which will continue execution after 30 seconds even if the user enters nothing, and will put the time it took, possibly the 30 seconds, into the variable T. For systems lacking a clock (which was not uncommon at the time), T would always return -1. 544:
ed into a loop. Checking for such code is difficult in an interpreter which normally examines the program line-by-line; checking for branches into a block from other code in the program would normally require whole-program parsing like a compiler.
396:
It became clear to the Dartmouth participants in the ANSI group that the effort had no hope of being completed in any reasonable time period. They left the effort and started a new company to bring their version of the language to market as
1078:
to produce "HELLO". One significant difference between Full's approach and previous ones like HP is that it used a different syntax for the slicing, whereas the earlier systems used array syntax. For instance, in HP, the equivalent line is
1313:
statement, the latter of which would cause an exception if debugging had previously turned on. Debugging status was limited to a particular program, so it could be turned on in one program and off in a subprogram, for instance.
320:, the original designers of BASIC and members of the ANSI group, were critical of the process. In a 1982 article, Kurtz wrote about how even seemingly small issues had turned into major controversies. He used the example of the 6128: 4785: 921:
would produce an array of values in A, where A(0) was 72, the decimal ASCII value for "H". This made string manipulation fairly difficult, for instance, to extract the "HELLO" from "HELLO, WORLD!", one would have to:
502:
for this role, although there appears to be no reason not to use the single quote as it is not otherwise used - strings do not allow single-quote delimiters for instance. A more controversial change was that the
73:
language so it could be correctly implemented on different platforms. After its release in late 1977, attention turned to Full BASIC which would be based on the more powerful Structured BASIC being developed at
723:
defines two arrays, the single-dimension A and two-dimension (matrix) B. In Full BASIC, the lower bound of any array was normally 1, so in this case, the variable A has five "slots", numbered 1 though 5. Using
431:
be extended across several physical lines using the "continuation character", the ampersand. Unfortunately, the ampersand was also selected as the string concatenation operator, which complicated the parser.
78:. The complexity of the system and the many additions promoted by members of the standards committee led to the effort bogging down and the first draft standard was not ready until 1986, four years late. 205:
dialects supported its many new features. The group decided that a complete standard based on SBASIC would take some time to agree on, so the ANSI BASIC effort was split into two milestones. The first,
1495:
Although many real-time programs can be modelled as a system simply responding to external events, it is also common for the program itself to periodically post these events. For this, Full added the
185:, which offered the same features of the earlier mainframe systems in a rack-mount system that could be configured in a complete form for around $ 100,000 (equivalent to $ 876,172 in 2023). Their 225:"X3J2's first few years were spent (in hindsight, some might say 'wasted') on standardizing what amounts to the original 1964 Dartmouth Basic... Minimal Basic was more a toy than an actual language." 357:
by this point, the new ANSI standard was seen as the non-standard solution. Much of the original success of BASIC on the micro platforms was that it allowed programs to be typed in from printed
2587: 1198:
using number signs, asterisks and percent signs to mark decimal places. The format string could be placed in a string variable and then referred to, or an optional separate line containing a
1452:
keyword. These looked like subroutines (and pictures) but had a number of additional keywords that controlled their invocation. For instance, one could define code that would respond to an
651:
keyword that could be added to a function or subroutine and made any variables within in local. As BASIC programs generally placed subroutines at the end of the program's source code, the
643:
and might change the value of that variable. As the variable is global, it retains the modified value when it returns to the original code. A key concept of structured programming is the
6378: 591:
On top of these changes to the block structures, Full also added keywords for defining procedures, functions and program blocks. Programs as a whole were now opened with the optional
2846: 1468:
available. Because the actual data from such devices tends to be multi-part, not something simple like a string or number, the real-time library also added the ability to define
446:, which copied a range of lines into a new file and deleted them from the original program, allowing them to be extracted to a subprogram. These could then be invoked using the 5998: 4297: 365:
applications and the need for BASIC as a distribution system had faded. On the large-systems side, the original use as a teaching language was being increasingly replaced by
1261:, and all of these commands had numerous options and modes. Much of this stemmed from the different types of physical devices that were still common in the late 1970s, 5993: 4292: 1389:
command turned on clipping to the current viewport such that items drawn outside its boundaries would not be visible; this took a string value instead of a boolean,
209:, would produce a standard that included only the most basic features that would be required of any implementation. Even long-supported features from Dartmouth like 5495: 692:
which indicates that math should be carried out using the system's default floating point implementation, whatever that may be. It can be returned to BCD mode with
242:
or a similar BASIC were entering the market. In spite of this, none of the participants were microcomputer vendors or suppliers. Instead, the participants remained
201:
was different from either the HP or Dartmouth dialects. By the early 1970s where were three major dialects and dozens of minor variations being used in the market.
3797: 3175: 1532:
were reserved words which simplified the parser, while in BASIC-2 they followed the ANSI pattern and could be used within user-created subroutines and functions.
494:
statement for in-line comments and this was universally supported in other dialects. Many dialects also added a short-form, most commonly using the single-quote,
393:
did not have a full implementation of Pascal. Luehrmann, was critical of the effort, suggesting a more general course that would be applicable to more students.
2875: 1301:
command which would print out line numbers as the program executed. It could also redirect the printing of the line numbers to another device or file using
458:
followed by a list of parameters, in which case it was expected to return a value in a variable with the same name as the program (see "Structure", below).
4019: 2839: 858:
or multiply the contents of an array by a scalar if the B parameter is not an array. The system also adds several array-only functions, which includes
213:
would be left out. The draft standard for Minimal BASIC was released in January 1976, the final draft in July 1977, and it was ratified that December.
6352: 5094: 5014: 4805: 4800: 4646: 2596: 377:
The standards process was so slow that even the author of Structured BASIC eventually gave up on it. Stephen Garland was asked to prepare a series of
639:. This is not adequate for the construction of large modular programs, as one section of code may have been written using common variable names like 4812: 3166: 728:
above this declaration would add another slot at index 0. Full also added a new system to directly specify the lower and upper bounds using the
5802: 5345: 696:. This is in addition to the fixed-point math option, if installed. Numeric and string variables otherwise worked like those in other BASICs. 3707: 2832: 39: 699:
A new addition was the fixed-point math extension, which allowed variables to have specified accuracy. This was turned on using the command
6103: 5414: 5215: 4738: 4121: 3712: 3682: 1083:. As this is the same syntax as array accesses, HP (and similar) generally did not allow string arrays, whereas this was allowed in Full. 6373: 5488: 5059: 4389: 4186: 548:
In Full, several existing keywords were extended, and others added, to provide additional block structures. Notable was the multi-line
3510: 2084: 905:
Early versions of Dartmouth BASIC did not include string variables or manipulation, the only strings in a program were constants like
1273:, etc. The list of options and their interactions and limitations covers many pages in the standard. For instance, it is possible to 672:
can be parsed as "FORS", which can not possibly be a variable in a two-letter variety of BASIC. In Full, this would have to be typed
4586: 3610: 2802: 2677: 540:
statement. Implementations were supposed to check for such statements and disallow them, for instance, finding cases where to code
5150: 4322: 4166: 298:
users that wanted to support loadable modular programs and other expansive programming features to compete with languages like
369:, as the external problems BASIC aimed to address, like interactivity and online editing, were now available in most systems. 6248: 5481: 5245: 5240: 4947: 3047: 2880: 2730: 2607: 6008: 5538: 5039: 4369: 4302: 3882: 3530: 3052: 382: 263: 194: 2890: 850:
Dartmouth BASIC had introduced matrix operations relatively early in its evolution, and these were part of Full. These
839:
function returned the angle between the origin and a given X,Y point. BASIC normally calculated angles in radians, but
5384: 4862: 3159: 3071: 803:
The list of primary built-in functions remained similar to previous versions of BASIC, including common examples like
366: 1086:
This approach should be contrasted with the solution selected by DEC, the use of functions that return new strings,
5923: 5918: 5620: 5548: 5044: 4952: 4902: 4661: 3994: 3989: 3010: 1164:
and using the existing print separator semicolon instead of colon, for instance in MS BASIC the same line would be
507:
keyword was now required for all assignments in order to make the parsing simpler, whereas in every other dialect
35: 5310: 5255: 5034: 5019: 4999: 4277: 3697: 3193: 2915: 307: 1889:"PASCAL Rules O.K.?: A Comparison of PASCAL and BASIC as Languages for Teaching Computer Programming to Novices" 6273: 5358: 5265: 5054: 5029: 4241: 4236: 3097: 632: 1377:, or GKS. This was offered as one of the optional modules in Full. This added dozens of special keywords like 788:
had been removed from Minimal and now re-added, and the alternative forms of comparison operators were added,
688:
system. As this was not universally supported in hardware, especially on minis and micros, it also added the
6383: 5913: 4912: 4454: 4444: 4439: 4014: 3999: 3939: 3373: 3368: 3328: 2688: 159: 5462: 5230: 5220: 4349: 3767: 3348: 3152: 3134: 1374: 511:
was optional. This included Minimal, so any Minimal code using this short-cut was incompatible with Full.
170:
notable among them, quickly introduced hosted BASIC services of their own, following the Dartmouth model.
110: 47: 31: 1682: 870:
erminate, among others. The addition of matrix math also requires modification of existing keywords like
6053: 5943: 5504: 4651: 4514: 4161: 3535: 3383: 3353: 3246: 3236: 3197: 3189: 3000: 2995: 2968: 1873: 214: 6321: 6288: 6153: 5722: 5409: 5315: 5049: 5024: 4867: 4708: 4146: 3949: 3822: 3605: 3005: 2920: 1325:
the following code was executed as a block and any exception within it would cause it to jump to the
1074:, but this method produces results that are themselves strings, not numeric values, and thus one can 851: 290: 210: 186: 51: 101:
had already come and gone. Watching the process drag on, the Dartmouth participants left to produce
6253: 5250: 4989: 2930: 2925: 2704: 1472:
s that could then be read or written as an atomic unit. These were then read and written using the
1428:. The difference is that the output of a picture block can be modified with the modification using 1195: 776:
function returns the remainder of an integer division. The list of logical operators was expanded,
740:
could also be used to create arrays; the same dimensions as the last example could be created with
656: 2763:
Kurtz, Thomas E. (1994). "The programming language standards scene, ten years on Paper 8: Basic".
1436:
which produced a circle of radius one, a smaller circle could be drawn and moved to the side with
536:
In Full, branching into a FOR...NEXT block is not allowed, nor is branching out without using the
189:
had a number of differences from Dartmouth, and these were soon copied by other mini vendors like
6228: 6208: 5195: 5130: 3470: 3061: 2856: 2654: 1916: 1908: 43: 1373:
Around the same time that Full was being designed, a parallel effort was underway to define the
616:. Functions could call other functions and themselves, meaning that the language was naturally 4024: 2798: 2673: 271: 218: 109:
standards like Microsoft's dominated the market and formed the basis for newer languages like
93:
revolution had occurred while the specification was being argued over, and by the early-1980s
75: 2751: 2717: 2621: 1854: 1645: 1385:
with syntax that did not match that of the other modules in the standard. For instance, the
889:. The new dimensions must have a total number of elements equal or smaller than the original 624:
keyword, but removed the requirement for the function name to start with "FN". For instance,
5878: 4758: 4499: 3827: 2935: 2870: 2772: 2646: 1900: 1265:, for instance, could only be accessed sequentially so the new standard offered options for 1202:
could be referred to by line number. Full also added new commands to set the printing area,
279: 255: 141: 6108: 5368: 5089: 4994: 4748: 4676: 4671: 4666: 4151: 4114: 4109: 4104: 4099: 4094: 4089: 4084: 2885: 636: 402: 328:
made an array with three slots, 1, 2 and 3. In some cases, an index 0 is more natural, so
317: 239: 174: 133: 94: 70: 385:
instead. This was somewhat controversial given that many computers in wide use, like the
140:
and direct interaction with the user, known at the time as a "conversational interface".
2900: 2577: 4656: 4404: 4216: 4079: 4069: 4064: 4059: 4054: 4049: 4044: 4039: 4034: 3403: 3393: 3102: 685: 644: 556:
was added to make decision trees, which formerly would have been implemented using the
313: 152: 6367: 6331: 6326: 6316: 6311: 6306: 6298: 6293: 6283: 6268: 6263: 6218: 6203: 6198: 6193: 6183: 6173: 6163: 6158: 6138: 6133: 6123: 6098: 6088: 6078: 6043: 6038: 6028: 6023: 6013: 5988: 5983: 5444: 5419: 5404: 5340: 5335: 5330: 5325: 5320: 5165: 5110: 5079: 5069: 4932: 4922: 4892: 4887: 4837: 4817: 4795: 4780: 4733: 4698: 4641: 4636: 4626: 4504: 4449: 4424: 4419: 4399: 4272: 3812: 3388: 3251: 3221: 3076: 2776: 1262: 1146:
to create a "channel" that was then used to refer to that particular file or device.
1063: 909:. Version 4, of 1968, added string variables and a single method to manipulate them, 378: 324:
statement. When arrays were first added to BASIC, they started at index 1, such that
235: 206: 145: 127: 98: 90: 66: 59: 2658: 1920: 1210:. The current values of these various settings (and others) could be returned using 442:, which by this time were common on newer microcomputer dialects. A new concept was 6278: 6258: 5978: 5953: 5938: 5933: 5928: 5908: 5903: 5898: 5893: 5888: 5883: 5873: 5868: 5863: 5563: 5305: 5275: 5135: 4479: 4474: 4337: 4332: 4327: 4246: 4191: 4141: 4074: 4029: 4004: 3934: 3929: 3924: 3919: 3914: 3872: 3837: 3747: 3742: 3570: 3378: 3144: 3118: 3026: 2634: 1565:
keywords does not appear in the examples in the standards document but is required.
1119: 386: 267: 259: 251: 197:(DEC), who did not introduce a BASIC of their own design until 1972. This version, 190: 182: 55: 2824: 1528:
exception handling system. Additionally, in BASIC-1 all fundamental keywords like
1098:. This was the solution picked up by Microsoft when they wrote their BASIC on the 620:. Full also retained the earlier style of one-line function definitions using the 552:, which allowed multiple lines of code to run if the condition was met or failed. 2792: 2666:
Kemeny, John; Kurtz, Thomas (1984). "Bringing Up BASIC". In Ditlea, Steve (ed.).
878:, which output or input multiple elements as needed to fill the array parameter. 5853: 5645: 5615: 5608: 5603: 5280: 4977: 4972: 4967: 4551: 4468: 3440: 2990: 1552:
In an article in 1984, Luehrmann estimated there to be 10 million such machines.
843:
would convert all parameters and outputs to degrees, and the system exposed the
466:
Many of the commonly used keywords found in Minimal or other dialects remained;
427: 423: 406: 358: 137: 136:
in 1964 combined a number of emerging concepts in the computer field, including
65:
ANSI's BASIC standardization was a two-stage process. The first, carried out as
2667: 69:
starting in 1974, was an effort to clearly define and standardize the original
6223: 6148: 6063: 5270: 5175: 4882: 4857: 4621: 4576: 3969: 3782: 3675: 3670: 3665: 3625: 3600: 3475: 3231: 3065: 3057: 1448:
Full's real-time module added the concept of "parallel sections", through the
1102:. Converting between the two can be error prone, to perform the equivalent of 484: 398: 362: 198: 167: 102: 2821:- a relatively complete implementation of Full BASIC and its graphics modules 1628:"Fifty Years of BASIC, the Programming Language That Made Computers Personal" 1460:
elsewhere in the code. The messages could invoke multiple handlers using the
1160:. By this time almost all BASICs included a similar feature without the word 151:
computer it ran on, used a modified version of Dartmouth's system to start a
6336: 6113: 6048: 5837: 5832: 5827: 5822: 5817: 5807: 5797: 5792: 5782: 5777: 5772: 5767: 5757: 5752: 5747: 5732: 5727: 5717: 5712: 5707: 5697: 5692: 5687: 5682: 5677: 5672: 5667: 5662: 5640: 5635: 5625: 5598: 5593: 5583: 5578: 5573: 5568: 5558: 5553: 5543: 5528: 5523: 5518: 5439: 5434: 5429: 5424: 5399: 5389: 5350: 5300: 5295: 5290: 5285: 5190: 5185: 5180: 5170: 5160: 5145: 5125: 5120: 5115: 5064: 5009: 5004: 4984: 4962: 4942: 4897: 4877: 4832: 4827: 4822: 4790: 4753: 4743: 4728: 4723: 4718: 4703: 4688: 4683: 4611: 4606: 4601: 4581: 4571: 4566: 4561: 4546: 4541: 4489: 4484: 4464: 4434: 4409: 4394: 4364: 4317: 4307: 4287: 4282: 4267: 4262: 4176: 3897: 3892: 3787: 3433: 3428: 3423: 3418: 3413: 3321: 3316: 3311: 3306: 3042: 2818: 1341:. The code could test which exception had occurred using the meta-variables 617: 498:, as seen in Microsoft BASIC. For Full, they selected the exclamation mark, 295: 243: 148: 1156:, followed by a string, a colon and then the input variables, for instance 2650: 1664: 1190:
statement, which had already appeared on a number of implementations. The
736:
which makes a one-dimensional 101-slot array. To further confuse matters,
6188: 5762: 5742: 5702: 5657: 5588: 5533: 5074: 4852: 4556: 4384: 4221: 4211: 4196: 4171: 4156: 4131: 4126: 4009: 3984: 3979: 3964: 3959: 3954: 3944: 3909: 3904: 3887: 3867: 3862: 3857: 3852: 3847: 3842: 3832: 3817: 3807: 3802: 3792: 3777: 3772: 3762: 3757: 3752: 3737: 3732: 3727: 3722: 3717: 3702: 3687: 3660: 3655: 3650: 3645: 3640: 3635: 3630: 3620: 3615: 3595: 3590: 3580: 3575: 3565: 3560: 3550: 3545: 3540: 3515: 3505: 3398: 3301: 3296: 3291: 3286: 3281: 3276: 3271: 3266: 3261: 2962: 1333:. It can also be used by defining a separate subroutine-like block using 752:
The list of supported math operators included all of those from Minimal,
163: 46:. It describes an advanced version of BASIC with many features including 6213: 6178: 6168: 5737: 5650: 5363: 5155: 5140: 4937: 4927: 4917: 4693: 4509: 4459: 4354: 4342: 3500: 3495: 3490: 3485: 3480: 3465: 3460: 3455: 3450: 3445: 3408: 3363: 3358: 3343: 3338: 3333: 1912: 1888: 1321:
block. There were two ways to use this, if the code block started with
684:
Full BASIC required decimal math for the default implementation of the
303: 178: 1412:
As images are often built up from common elements, Full added the new
1357:
exited the error handler and returned to the line of the error, while
422:
Like previous versions of BASIC, Full BASIC was designed to work in a
234:
The group then turned their attention to Full BASIC. By this time the
221:
who was a proponent of BASIC and part of the ANSI group later stated:
6243: 6238: 6233: 6143: 6083: 6073: 6068: 6058: 6018: 5968: 5225: 5210: 5205: 5200: 4872: 4847: 4775: 4631: 4616: 4596: 4591: 4536: 4529: 4524: 4519: 4414: 4379: 4226: 3877: 3692: 3256: 2983: 2957: 1178:
INPUT TIMEOUT 30, ELAPSED T, PROMPT "What is your age? ": A
1099: 390: 353:
Additionally, with millions of micros running some variation of MS's
1904: 1361:
could be used within the mainline code to ignore errors even within
715:
Most BASICs supported the construction of array variables using the
6093: 4713: 5973: 5963: 5958: 5948: 5858: 5787: 5260: 5235: 4957: 4842: 4494: 4359: 4231: 4206: 4201: 4181: 3555: 3525: 3520: 3241: 3226: 3216: 3211: 2978: 2973: 914: 854:
the existing math functions, so one can multiply two arrays using
299: 283: 156: 6118: 6033: 5630: 5473: 4907: 4770: 4763: 4429: 4374: 3974: 3585: 3123: 1627: 1233:
and a channel number prefixed with a number sign, for instance,
1066:. To extract "HELLO" from "HELLO, WORLD" in Full, one would use 668:
left out. This was because with single-letter names a line like
238:
revolution was in full flight, and millions of machines running
5477: 3148: 2828: 2300:
Brannon, Charles (April 1981). "String Arrays in Atari BASIC".
1317:
Additionally, Full added true exception handlers, based on the
595:
keyword followed by a program name, and ended, as before, with
5812: 5394: 5084: 4136: 2941: 1305:, where #3 was a previously opened channel. It also added the 913:, which converted strings to and from an array containing the 703:
followed by an asterisk and a format specifier, for instance,
247: 528:
ing any line number. The only exception to this rule was the
847:
function which was used in these conversions and elsewhere.
341:
and the decision was made to change the default to 1 again.
2055: 2053: 1825: 1823: 1821: 275: 2481: 2479: 580:
varieties. All loops could now be safely exited using the
515:
three columns, fills two pages in the standards document.
2235: 2233: 2136: 2134: 2004: 2002: 1393:. Several common image modification commands were added, 105:
based on parts of the standard, but this saw little use.
2556: 2554: 1130:
commands and the ability to hard-code data using the
1158:
INPUT PROMPT "What is your age? " : A
893:, so in this example if the original definition was 42:(ANSI) X3.60 group in partnership with the European 16:
Programming language dialect; international standard
6345: 5846: 5511: 5377: 5103: 4255: 3204: 3111: 3090: 3035: 3019: 2950: 2908: 2863: 1665:"HP: The Accidentally, On-Purpose Computer Company" 1609: 1607: 1605: 1603: 1578: 1574: 1562: 1529: 1512: 1508: 1504: 1500: 1496: 1489: 1485: 1481: 1477: 1473: 1469: 1461: 1457: 1453: 1449: 1437: 1433: 1429: 1425: 1421: 1417: 1413: 1406: 1402: 1398: 1394: 1390: 1386: 1382: 1378: 1362: 1358: 1354: 1350: 1346: 1342: 1338: 1334: 1330: 1326: 1322: 1318: 1310: 1306: 1302: 1298: 1286: 1282: 1278: 1274: 1270: 1266: 1258: 1254: 1250: 1246: 1242: 1238: 1234: 1230: 1226: 1219: 1215: 1211: 1207: 1203: 1199: 1191: 1187: 1183: 1177: 1173: 1169: 1165: 1161: 1157: 1153: 1149: 1143: 1139: 1135: 1131: 1127: 1123: 1107: 1103: 1095: 1091: 1087: 1080: 1075: 1071: 1067: 918: 910: 906: 894: 890: 886: 882: 875: 871: 867: 863: 859: 855: 844: 840: 836: 832: 828: 824: 820: 816: 812: 808: 804: 797: 793: 789: 785: 781: 777: 773: 769: 765: 761: 757: 753: 741: 737: 733: 729: 725: 720: 716: 709: 704: 700: 693: 689: 678: 673: 669: 652: 648: 640: 625: 621: 613: 608: 604: 600: 596: 592: 585: 581: 577: 573: 569: 565: 561: 557: 553: 549: 541: 537: 529: 525: 508: 504: 499: 495: 491: 479: 475: 471: 467: 455: 451: 447: 443: 439: 435: 338: 334: 329: 325: 321: 1683:"Hewlett-Packard 2100 Processor Description, 1972" 1062:them using an array-like specification known as a 568:loops remained as they were in Minimal, but a new 381:tests for high school students, and wrote them in 2718:"College Board developing Pascal-based AP course" 1416:block structure, which is otherwise similar to a 361:, but by the mid-1980s this had been replaced by 409:dismissed it as "sad" and "doomed to failure." 6379:American National Standards Institute standards 1874:"The History of the BASIC Programming Language" 1536:be claimed as comformance to the ISO standard. 2752:"Potentially Powerful Language Comes Up Short" 5489: 3160: 2840: 1253:. Additional file handling commands included 1186:ing was similarly expanded with the optional 81:The standard was ratified on 26 June 1986 as 8: 1297:Like many BASICs of the era, Full added the 631:In previous BASICs, there was no concept of 881:Matrixes may be redimensioned as part of a 811:. Trig functions were expanded to include 5496: 5482: 5474: 3167: 3153: 3145: 2847: 2833: 2825: 2287: 2275: 2263: 2059: 1969: 1887:McGregor, J.J; Watt, A.H. (October 1981). 1841: 1829: 1812: 1168:. On top of this, Full also added the new 6353:International Electrotechnical Commission 2705:"Structured Programming in BASIC; Part 1" 1945: 1728: 1716: 1337:which would then be called by name using 1118:Another area of focus for Full BASIC was 607:. Multi-line functions were created with 2731:"PCs, Peripherals, Programs, and People" 2545: 2533: 2521: 2509: 2497: 2485: 2470: 2458: 2446: 2434: 2422: 2410: 2398: 2386: 2374: 2362: 2350: 2338: 2326: 2314: 2251: 2239: 2224: 2212: 2200: 2188: 2164: 2152: 2140: 2125: 2113: 2101: 2071: 2032: 2020: 2008: 1993: 1981: 1788: 1740: 1503:which would pause execution for a given 1138:it. Almost all practical dialects added 1122:(I/O). Minimal BASIC's only I/O was the 917:values of the characters. For instance, 289:The effort immediately ran afoul of the 1599: 1545: 1166:INPUT "What is your age? "; A 1108:DEF Right$ (A$ , n) = A$ (Len(A$ )-n+l) 155:which would eventually evolve into the 2579:ANSI Programming Languages: Full BASIC 1957: 1511:(an explicit time-of-day) or until an 1456:and then cause it to run by issuing a 1329:section, which operates similar to an 554:SELECT...CASE...CASE ELSE...END SELECT 274:, and other very large companies like 2560: 2176: 2044: 1800: 1776: 1764: 1752: 1438:DRAW CIRCLE WITH SHIFT(2) * SCALE(.4) 919:CHANGE "HELLO, WORLD!" TO A 599:. Routines could be constructed with 434:Additional editing commands included 113:which incorporated similar concepts. 40:American National Standards Institute 7: 2791:Kemeny, John; Kurtz, Thomas (1987). 1933: 1704: 1646:"IBM VS the World: That's How It Is" 1613: 1225:Full supported file operations with 1070:. The concept is similar to that of 487:for multi-character variable names. 2765:Computer Standards & Interfaces 2729:Pournelle, Jerry (September 1985). 885:by specifying the new bounds, like 1626:McCracken, Harry (29 April 2014). 897:, the input would cause an error. 14: 2620:Dvorak, John (19 November 1984). 2595:. ECMA. June 1986. Archived from 1432:. For instance, if one defined a 1237:. Data can then be written using 337:. This eliminated the demand for 89:. It was completely ignored; the 5458: 5457: 2899: 2750:Todd, Mike (19 September 1988). 2716:Mace, Scott (6 September 1982). 1872:Bellis, Mary (26 January 2019). 1861:. 29 September 1987. p. 15. 1293:Exception handling and debugging 1235:OPEN #3: NAME "afile" 907:PRINT "HELLO, WORLD!" 748:Mathematics, logic and matrices 490:Dartmouth BASIC introduced the 454:could also include an optional 97:running on tens of millions of 2881:Common Language Infrastructure 2703:Luehrmann, Arthur (May 1984). 2689:"On the Way to Standard BASIC" 2633:Guntheroth, Kurt (July 1983). 333:lower bound using new syntax, 1: 2635:"The New ANSI BASIC Standard" 1480:commands, or if the data was 1349:, neither of which needed an 742:DECLARE NUMERIC A(100 TO 200) 655:keyword was added to provide 264:Digital Equipment Corporation 195:Digital Equipment Corporation 2794:Structured BASIC Programming 2777:10.1016/0920-5489(94)90028-0 405:derided it as "madness" and 2687:Kurtz, Thomas (June 1982). 1577:works in the same way that 1499:command and the associated 1194:was normally followed by a 705:OPTION ARITHMETIC FIXED*8.2 564:s to select a line to run. 6400: 6374:BASIC programming language 3011:Holographic Versatile Disc 2771:(5–6). Elsevier: 477–480. 572:was added with top tested 426:environment and thus uses 125: 62:, and many other options. 38:. It was developed by the 36:BASIC programming language 34:defining a dialect of the 5453: 3186: 3132: 2916:Advanced Intelligent Tape 2897: 1507:(a number of seconds) or 1319:WHEN EXCEPTION...END WHEN 1152:now included an optional 936:"HELLO, WORLD!" 701:OPTIONAL ARITHMETIC FIXED 694:OPTION ARITHMETIC DECIMAL 550:IF...THEN...ELSE...END IF 2589:Standard ECMA-116: BASIC 1893:The Mathematical Gazette 1484:, the otherwise similar 924: 710:DECLARE NUMERIC*8.2 A, B 690:OPTION ARITHMETIC NATIVE 663:Data types and variables 626:DEF AVERAGE(X,Y)=(X+Y)/2 162:. Many other companies, 1663:Leibson, Steve (2017). 1339:WHEN EXCEPTION USE name 732:keyword, for instance, 719:keyword, for instance, 635:and all variables were 609:FUNCTION...END FUNCTION 3135:List of Ecma standards 2864:Application interfaces 1375:Graphics Kernel System 335:DIM YEAR(1970 TO 1990) 306:while offering better 227: 111:Microsoft Visual Basic 48:structured programming 32:international standard 3091:Radio link interfaces 3036:Programming languages 3001:Ultra Density Optical 2651:10.1145/988216.988221 2615:. ECMA. January 1978. 2582:. ANSI. January 1987. 1285:type, which required 223: 22:, sometimes known as 3006:Universal Media Disc 2622:"Sad But True Basic" 2341:, pp. 111, 112. 2091:. 13 September 2021. 1755:, pp. 182, 186. 841:OPTION ANGLE DEGREES 657:forward declarations 291:second-system effect 187:HP Time-Shared BASIC 177:(HP) introduced the 132:The introduction of 85:and January 1987 as 2951:File systems (disk) 2909:File systems (tape) 2711:. pp. 152–156. 2698:. pp. 182–218. 2512:, pp. 239–240. 2437:, pp. 187–188. 2401:, pp. 141–154. 1391:CLIP "On" 1222:would set J to 30. 462:Basic functionality 308:string manipulation 217:, a physicist from 144:, who supplied the 3180:by standard number 2857:Ecma International 2737:. pp. 366–373 2709:Creative Computing 2155:, pp. 94–100. 2128:, pp. 94, 95. 2085:"Next without For" 1652:. 5 December 1973. 578:DO...LOOP UNTIL... 576:and bottom tested 193:. One holdout was 6361: 6360: 5471: 5470: 3194:ISO romanizations 3142: 3141: 2758:. pp. 78–80. 2074:, pp. 17–19. 1743:, pp. i, ii. 1420:and invoked with 1323:WHEN EXCEPTION IN 1106:, Full would use 734:DIM A(100 TO 200) 603:and called using 355:de facto standard 272:Wang Laboratories 219:Dartmouth College 76:Dartmouth College 6391: 5498: 5491: 5484: 5475: 5461: 5460: 3181: 3169: 3162: 3155: 3146: 3137:(1961 – present) 2936:Linear Tape-Open 2903: 2871:ANSI escape code 2849: 2842: 2835: 2826: 2808: 2780: 2759: 2746: 2744: 2742: 2725: 2712: 2699: 2693: 2683: 2662: 2629: 2616: 2614: 2603: 2601: 2594: 2583: 2564: 2558: 2549: 2543: 2537: 2531: 2525: 2519: 2513: 2507: 2501: 2495: 2489: 2483: 2474: 2468: 2462: 2456: 2450: 2444: 2438: 2432: 2426: 2420: 2414: 2408: 2402: 2396: 2390: 2384: 2378: 2372: 2366: 2360: 2354: 2348: 2342: 2336: 2330: 2324: 2318: 2312: 2306: 2305: 2297: 2291: 2285: 2279: 2273: 2267: 2261: 2255: 2249: 2243: 2237: 2228: 2222: 2216: 2210: 2204: 2198: 2192: 2186: 2180: 2174: 2168: 2162: 2156: 2150: 2144: 2138: 2129: 2123: 2117: 2111: 2105: 2099: 2093: 2092: 2081: 2075: 2069: 2063: 2057: 2048: 2042: 2036: 2030: 2024: 2018: 2012: 2006: 1997: 1991: 1985: 1979: 1973: 1967: 1961: 1955: 1949: 1943: 1937: 1931: 1925: 1924: 1899:(433): 171–182. 1884: 1878: 1877: 1869: 1863: 1862: 1851: 1845: 1839: 1833: 1827: 1816: 1810: 1804: 1798: 1792: 1786: 1780: 1774: 1768: 1762: 1756: 1750: 1744: 1738: 1732: 1726: 1720: 1714: 1708: 1702: 1696: 1695: 1693: 1692: 1687: 1679: 1673: 1672: 1660: 1654: 1653: 1642: 1636: 1635: 1623: 1617: 1611: 1582: 1581:does in FORTRAN. 1580: 1576: 1572: 1566: 1564: 1559: 1553: 1550: 1531: 1514: 1510: 1506: 1502: 1498: 1491: 1487: 1483: 1479: 1475: 1471: 1463: 1459: 1455: 1451: 1439: 1435: 1431: 1427: 1423: 1419: 1415: 1408: 1404: 1400: 1396: 1392: 1388: 1384: 1380: 1364: 1360: 1356: 1352: 1348: 1344: 1340: 1336: 1332: 1328: 1324: 1320: 1312: 1308: 1304: 1300: 1288: 1284: 1280: 1276: 1272: 1268: 1260: 1256: 1252: 1248: 1244: 1240: 1236: 1232: 1228: 1221: 1217: 1214:. For instance, 1213: 1209: 1205: 1201: 1193: 1189: 1185: 1179: 1175: 1171: 1167: 1163: 1159: 1155: 1151: 1145: 1141: 1137: 1133: 1129: 1125: 1109: 1105: 1097: 1093: 1089: 1082: 1077: 1073: 1069: 1057: 1054: 1051: 1048: 1045: 1042: 1039: 1036: 1033: 1030: 1027: 1024: 1021: 1018: 1015: 1012: 1009: 1006: 1003: 1000: 997: 994: 991: 988: 985: 982: 979: 976: 973: 970: 967: 964: 961: 958: 955: 952: 949: 946: 943: 940: 937: 934: 931: 928: 920: 912: 908: 896: 892: 888: 887:MAT INPUT A(3.3) 884: 877: 873: 869: 865: 861: 857: 846: 842: 838: 834: 830: 826: 822: 818: 814: 810: 806: 799: 795: 791: 787: 783: 779: 775: 771: 767: 763: 759: 755: 743: 739: 735: 731: 727: 722: 721:DIM A(5), B(2,2) 718: 711: 706: 702: 695: 691: 680: 675: 671: 654: 650: 642: 627: 623: 615: 610: 606: 602: 598: 594: 587: 583: 579: 575: 571: 567: 563: 559: 555: 551: 543: 539: 531: 527: 510: 506: 501: 497: 493: 481: 477: 473: 469: 457: 453: 449: 445: 441: 437: 340: 336: 331: 327: 323: 280:American Express 256:General Electric 215:Arthur Luehrmann 142:General Electric 87:ANSI X3.113-1987 6399: 6398: 6394: 6393: 6392: 6390: 6389: 6388: 6364: 6363: 6362: 6357: 6341: 5842: 5507: 5502: 5472: 5467: 5449: 5373: 5099: 4251: 3200: 3182: 3179: 3173: 3143: 3138: 3128: 3107: 3086: 3031: 3015: 2946: 2904: 2895: 2886:Office Open XML 2859: 2853: 2815: 2805: 2790: 2787: 2785:Further reading 2762: 2749: 2740: 2738: 2728: 2715: 2702: 2691: 2686: 2680: 2665: 2639:SIGPLAN Notices 2632: 2619: 2612: 2606: 2599: 2592: 2586: 2576: 2573: 2568: 2567: 2559: 2552: 2544: 2540: 2532: 2528: 2520: 2516: 2508: 2504: 2496: 2492: 2484: 2477: 2469: 2465: 2457: 2453: 2445: 2441: 2433: 2429: 2421: 2417: 2409: 2405: 2397: 2393: 2385: 2381: 2373: 2369: 2361: 2357: 2349: 2345: 2337: 2333: 2325: 2321: 2313: 2309: 2299: 2298: 2294: 2288:Guntheroth 1983 2286: 2282: 2276:Guntheroth 1983 2274: 2270: 2264:Guntheroth 1983 2262: 2258: 2250: 2246: 2238: 2231: 2223: 2219: 2211: 2207: 2199: 2195: 2187: 2183: 2175: 2171: 2163: 2159: 2151: 2147: 2139: 2132: 2124: 2120: 2112: 2108: 2100: 2096: 2089:Microsoft Build 2083: 2082: 2078: 2070: 2066: 2060:Guntheroth 1983 2058: 2051: 2043: 2039: 2031: 2027: 2019: 2015: 2007: 2000: 1992: 1988: 1980: 1976: 1970:Guntheroth 1983 1968: 1964: 1956: 1952: 1944: 1940: 1932: 1928: 1905:10.2307/3617129 1886: 1885: 1881: 1871: 1870: 1866: 1853: 1852: 1848: 1842:Guntheroth 1983 1840: 1836: 1830:Guntheroth 1983 1828: 1819: 1813:Guntheroth 1983 1811: 1807: 1799: 1795: 1787: 1783: 1779:, pp. 188. 1775: 1771: 1763: 1759: 1751: 1747: 1739: 1735: 1727: 1723: 1715: 1711: 1703: 1699: 1690: 1688: 1685: 1681: 1680: 1676: 1662: 1661: 1657: 1644: 1643: 1639: 1625: 1624: 1620: 1612: 1601: 1596: 1591: 1586: 1585: 1573: 1569: 1560: 1556: 1551: 1547: 1542: 1521: 1464:ports concept. 1446: 1371: 1295: 1134:statements and 1116: 1059: 1058: 1055: 1052: 1049: 1046: 1043: 1040: 1037: 1034: 1031: 1028: 1025: 1022: 1019: 1016: 1013: 1010: 1007: 1004: 1001: 998: 995: 992: 989: 986: 983: 980: 977: 974: 971: 968: 965: 962: 959: 956: 953: 950: 947: 944: 941: 938: 935: 932: 929: 926: 903: 750: 738:DECLARE NUMERIC 665: 574:DO WHILE...LOOP 521: 464: 420: 418:Program editing 415: 403:Jerry Pournelle 375: 318:Thomas E. Kurtz 240:Microsoft BASIC 232: 175:Hewlett-Packard 134:Dartmouth BASIC 130: 124: 119: 95:Microsoft BASIC 71:Dartmouth BASIC 17: 12: 11: 5: 6397: 6395: 6387: 6386: 6384:Ecma standards 6381: 6376: 6366: 6365: 6359: 6358: 6356: 6355: 6349: 6347: 6343: 6342: 6340: 6339: 6334: 6329: 6324: 6319: 6314: 6309: 6304: 6301: 6296: 6291: 6286: 6281: 6276: 6271: 6266: 6261: 6256: 6251: 6246: 6241: 6236: 6231: 6226: 6221: 6216: 6211: 6206: 6201: 6196: 6191: 6186: 6181: 6176: 6171: 6166: 6161: 6156: 6151: 6146: 6141: 6136: 6131: 6126: 6121: 6116: 6111: 6106: 6101: 6096: 6091: 6086: 6081: 6076: 6071: 6066: 6061: 6056: 6051: 6046: 6041: 6036: 6031: 6026: 6021: 6016: 6011: 6006: 6001: 5996: 5991: 5986: 5981: 5976: 5971: 5966: 5961: 5956: 5951: 5946: 5941: 5936: 5931: 5926: 5921: 5916: 5911: 5906: 5901: 5896: 5891: 5886: 5881: 5876: 5871: 5866: 5861: 5856: 5850: 5848: 5844: 5843: 5841: 5840: 5835: 5830: 5825: 5820: 5815: 5810: 5805: 5800: 5795: 5790: 5785: 5780: 5775: 5770: 5765: 5760: 5755: 5750: 5745: 5740: 5735: 5730: 5725: 5720: 5715: 5710: 5705: 5700: 5695: 5690: 5685: 5680: 5675: 5670: 5665: 5660: 5655: 5654: 5653: 5648: 5638: 5633: 5628: 5623: 5618: 5613: 5612: 5611: 5606: 5596: 5591: 5586: 5581: 5576: 5571: 5566: 5561: 5556: 5551: 5546: 5541: 5536: 5531: 5526: 5521: 5515: 5513: 5509: 5508: 5503: 5501: 5500: 5493: 5486: 5478: 5469: 5468: 5466: 5465: 5454: 5451: 5450: 5448: 5447: 5442: 5437: 5432: 5427: 5422: 5417: 5412: 5407: 5402: 5397: 5392: 5387: 5381: 5379: 5375: 5374: 5372: 5371: 5366: 5361: 5356: 5353: 5348: 5343: 5338: 5333: 5328: 5323: 5318: 5313: 5308: 5303: 5298: 5293: 5288: 5283: 5278: 5273: 5268: 5263: 5258: 5253: 5248: 5243: 5238: 5233: 5228: 5223: 5218: 5213: 5208: 5203: 5198: 5193: 5188: 5183: 5178: 5173: 5168: 5163: 5158: 5153: 5148: 5143: 5138: 5133: 5128: 5123: 5118: 5113: 5107: 5105: 5101: 5100: 5098: 5097: 5092: 5087: 5082: 5077: 5072: 5067: 5062: 5057: 5052: 5047: 5042: 5037: 5032: 5027: 5022: 5017: 5012: 5007: 5002: 4997: 4992: 4987: 4982: 4981: 4980: 4975: 4965: 4960: 4955: 4950: 4945: 4940: 4935: 4930: 4925: 4920: 4915: 4910: 4905: 4900: 4895: 4890: 4885: 4880: 4875: 4870: 4865: 4860: 4855: 4850: 4845: 4840: 4835: 4830: 4825: 4820: 4815: 4810: 4809: 4808: 4798: 4793: 4788: 4783: 4778: 4773: 4768: 4767: 4766: 4761: 4751: 4746: 4741: 4736: 4731: 4726: 4721: 4716: 4711: 4706: 4701: 4696: 4691: 4686: 4681: 4680: 4679: 4674: 4669: 4664: 4659: 4654: 4649: 4644: 4639: 4629: 4624: 4619: 4614: 4609: 4604: 4599: 4594: 4589: 4584: 4579: 4574: 4569: 4564: 4559: 4554: 4549: 4544: 4539: 4534: 4533: 4532: 4527: 4517: 4512: 4507: 4502: 4497: 4492: 4487: 4482: 4477: 4472: 4462: 4457: 4452: 4447: 4442: 4437: 4432: 4427: 4422: 4417: 4412: 4407: 4402: 4397: 4392: 4387: 4382: 4377: 4372: 4367: 4362: 4357: 4352: 4347: 4346: 4345: 4340: 4335: 4330: 4325: 4315: 4310: 4305: 4300: 4295: 4290: 4285: 4280: 4275: 4270: 4265: 4259: 4257: 4253: 4252: 4250: 4249: 4244: 4239: 4234: 4229: 4224: 4219: 4214: 4209: 4204: 4199: 4194: 4189: 4184: 4179: 4174: 4169: 4164: 4159: 4154: 4149: 4144: 4139: 4134: 4129: 4124: 4119: 4118: 4117: 4112: 4107: 4102: 4097: 4092: 4087: 4082: 4077: 4072: 4067: 4062: 4057: 4052: 4047: 4042: 4037: 4027: 4022: 4017: 4012: 4007: 4002: 3997: 3992: 3987: 3982: 3977: 3972: 3967: 3962: 3957: 3952: 3947: 3942: 3937: 3932: 3927: 3922: 3917: 3912: 3907: 3902: 3901: 3900: 3890: 3885: 3880: 3875: 3870: 3865: 3860: 3855: 3850: 3845: 3840: 3835: 3830: 3825: 3820: 3815: 3810: 3805: 3800: 3795: 3790: 3785: 3780: 3775: 3770: 3765: 3760: 3755: 3750: 3745: 3740: 3735: 3730: 3725: 3720: 3715: 3710: 3705: 3700: 3695: 3690: 3685: 3680: 3679: 3678: 3673: 3668: 3658: 3653: 3648: 3643: 3638: 3633: 3628: 3623: 3618: 3613: 3608: 3603: 3598: 3593: 3588: 3583: 3578: 3573: 3568: 3563: 3558: 3553: 3548: 3543: 3538: 3533: 3528: 3523: 3518: 3513: 3508: 3503: 3498: 3493: 3488: 3483: 3478: 3473: 3468: 3463: 3458: 3453: 3448: 3443: 3438: 3437: 3436: 3431: 3426: 3421: 3416: 3406: 3401: 3396: 3391: 3386: 3381: 3376: 3371: 3366: 3361: 3356: 3351: 3346: 3341: 3336: 3331: 3326: 3325: 3324: 3319: 3314: 3309: 3304: 3299: 3294: 3289: 3284: 3279: 3274: 3269: 3264: 3254: 3249: 3244: 3239: 3234: 3229: 3224: 3219: 3214: 3208: 3206: 3202: 3201: 3187: 3184: 3183: 3174: 3172: 3171: 3164: 3157: 3149: 3140: 3139: 3133: 3130: 3129: 3127: 3126: 3121: 3115: 3113: 3109: 3108: 3106: 3105: 3100: 3094: 3092: 3088: 3087: 3085: 3084: 3079: 3074: 3069: 3055: 3050: 3045: 3039: 3037: 3033: 3032: 3030: 3029: 3023: 3021: 3017: 3016: 3014: 3013: 3008: 3003: 2998: 2993: 2988: 2987: 2986: 2981: 2976: 2966: 2963:CD File System 2960: 2954: 2952: 2948: 2947: 2945: 2944: 2939: 2933: 2928: 2923: 2918: 2912: 2910: 2906: 2905: 2898: 2896: 2894: 2893: 2888: 2883: 2878: 2873: 2867: 2865: 2861: 2860: 2854: 2852: 2851: 2844: 2837: 2829: 2823: 2822: 2814: 2813:External links 2811: 2810: 2809: 2803: 2786: 2783: 2782: 2781: 2760: 2747: 2726: 2713: 2700: 2684: 2678: 2663: 2630: 2617: 2604: 2602:on 2011-10-14. 2584: 2572: 2569: 2566: 2565: 2563:, p. 478. 2550: 2548:, p. 244. 2538: 2536:, p. 250. 2526: 2524:, p. 248. 2514: 2502: 2500:, p. 239. 2490: 2488:, p. 229. 2475: 2473:, p. 230. 2463: 2461:, p. 199. 2451: 2449:, p. 188. 2439: 2427: 2425:, p. 195. 2415: 2413:, p. 144. 2403: 2391: 2389:, p. 142. 2379: 2377:, p. 151. 2367: 2365:, p. 164. 2355: 2353:, p. 123. 2343: 2331: 2329:, p. 111. 2319: 2307: 2304:. p. 103. 2292: 2280: 2268: 2256: 2244: 2229: 2227:, p. 265. 2217: 2215:, p. 262. 2205: 2203:, p. 263. 2193: 2181: 2179:, p. 192. 2169: 2167:, p. 105. 2157: 2145: 2130: 2118: 2106: 2094: 2076: 2064: 2049: 2047:, p. 196. 2037: 2025: 2013: 1998: 1996:, p. 106. 1986: 1984:, p. 272. 1974: 1962: 1950: 1948:, p. 366. 1946:Pournelle 1985 1938: 1926: 1879: 1864: 1846: 1834: 1817: 1805: 1803:, p. 190. 1793: 1781: 1769: 1767:, p. 214. 1757: 1745: 1733: 1731:, p. 152. 1729:Luehrmann 1984 1721: 1719:, p. 173. 1717:Luehrmann 1984 1709: 1707:, p. iii. 1697: 1674: 1655: 1637: 1618: 1598: 1597: 1595: 1592: 1590: 1587: 1584: 1583: 1567: 1554: 1544: 1543: 1541: 1538: 1520: 1517: 1445: 1442: 1434:PICTURE CIRCLE 1370: 1367: 1303:TRACE ON TO #3 1294: 1291: 1281:type, but not 1115: 1112: 925: 902: 899: 749: 746: 686:floating point 664: 661: 645:local variable 520: 517: 463: 460: 419: 416: 414: 411: 374: 371: 314:John G. Kemeny 231: 228: 160:online service 153:service bureau 126:Main article: 123: 120: 118: 115: 99:home computers 24:Standard BASIC 15: 13: 10: 9: 6: 4: 3: 2: 6396: 6385: 6382: 6380: 6377: 6375: 6372: 6371: 6369: 6354: 6351: 6350: 6348: 6344: 6338: 6335: 6333: 6330: 6328: 6325: 6323: 6320: 6318: 6315: 6313: 6310: 6308: 6305: 6302: 6300: 6297: 6295: 6292: 6290: 6287: 6285: 6282: 6280: 6277: 6275: 6272: 6270: 6267: 6265: 6262: 6260: 6257: 6255: 6252: 6250: 6247: 6245: 6242: 6240: 6237: 6235: 6232: 6230: 6227: 6225: 6222: 6220: 6217: 6215: 6212: 6210: 6207: 6205: 6202: 6200: 6197: 6195: 6192: 6190: 6187: 6185: 6182: 6180: 6177: 6175: 6172: 6170: 6167: 6165: 6162: 6160: 6157: 6155: 6152: 6150: 6147: 6145: 6142: 6140: 6137: 6135: 6132: 6130: 6127: 6125: 6122: 6120: 6117: 6115: 6112: 6110: 6107: 6105: 6102: 6100: 6097: 6095: 6092: 6090: 6087: 6085: 6082: 6080: 6077: 6075: 6072: 6070: 6067: 6065: 6062: 6060: 6057: 6055: 6052: 6050: 6047: 6045: 6042: 6040: 6037: 6035: 6032: 6030: 6027: 6025: 6022: 6020: 6017: 6015: 6012: 6010: 6007: 6005: 6002: 6000: 5997: 5995: 5992: 5990: 5987: 5985: 5982: 5980: 5977: 5975: 5972: 5970: 5967: 5965: 5962: 5960: 5957: 5955: 5952: 5950: 5947: 5945: 5942: 5940: 5937: 5935: 5932: 5930: 5927: 5925: 5922: 5920: 5917: 5915: 5912: 5910: 5907: 5905: 5902: 5900: 5897: 5895: 5892: 5890: 5887: 5885: 5882: 5880: 5877: 5875: 5872: 5870: 5867: 5865: 5862: 5860: 5857: 5855: 5852: 5851: 5849: 5845: 5839: 5836: 5834: 5831: 5829: 5826: 5824: 5821: 5819: 5816: 5814: 5811: 5809: 5806: 5804: 5801: 5799: 5796: 5794: 5791: 5789: 5786: 5784: 5781: 5779: 5776: 5774: 5771: 5769: 5766: 5764: 5761: 5759: 5756: 5754: 5751: 5749: 5746: 5744: 5741: 5739: 5736: 5734: 5731: 5729: 5726: 5724: 5721: 5719: 5716: 5714: 5711: 5709: 5706: 5704: 5701: 5699: 5696: 5694: 5691: 5689: 5686: 5684: 5681: 5679: 5676: 5674: 5671: 5669: 5666: 5664: 5661: 5659: 5656: 5652: 5649: 5647: 5644: 5643: 5642: 5639: 5637: 5634: 5632: 5629: 5627: 5624: 5622: 5619: 5617: 5614: 5610: 5607: 5605: 5602: 5601: 5600: 5597: 5595: 5592: 5590: 5587: 5585: 5582: 5580: 5577: 5575: 5572: 5570: 5567: 5565: 5562: 5560: 5557: 5555: 5552: 5550: 5547: 5545: 5542: 5540: 5537: 5535: 5532: 5530: 5527: 5525: 5522: 5520: 5517: 5516: 5514: 5510: 5506: 5505:IEC standards 5499: 5494: 5492: 5487: 5485: 5480: 5479: 5476: 5464: 5456: 5455: 5452: 5446: 5443: 5441: 5438: 5436: 5433: 5431: 5428: 5426: 5423: 5421: 5418: 5416: 5413: 5411: 5408: 5406: 5403: 5401: 5398: 5396: 5393: 5391: 5388: 5386: 5383: 5382: 5380: 5376: 5370: 5367: 5365: 5362: 5360: 5357: 5354: 5352: 5349: 5347: 5344: 5342: 5339: 5337: 5334: 5332: 5329: 5327: 5324: 5322: 5319: 5317: 5314: 5312: 5309: 5307: 5304: 5302: 5299: 5297: 5294: 5292: 5289: 5287: 5284: 5282: 5279: 5277: 5274: 5272: 5269: 5267: 5264: 5262: 5259: 5257: 5254: 5252: 5249: 5247: 5244: 5242: 5239: 5237: 5234: 5232: 5229: 5227: 5224: 5222: 5219: 5217: 5214: 5212: 5209: 5207: 5204: 5202: 5199: 5197: 5194: 5192: 5189: 5187: 5184: 5182: 5179: 5177: 5174: 5172: 5169: 5167: 5164: 5162: 5159: 5157: 5154: 5152: 5149: 5147: 5144: 5142: 5139: 5137: 5134: 5132: 5129: 5127: 5124: 5122: 5119: 5117: 5114: 5112: 5109: 5108: 5106: 5102: 5096: 5093: 5091: 5088: 5086: 5083: 5081: 5078: 5076: 5073: 5071: 5068: 5066: 5063: 5061: 5058: 5056: 5053: 5051: 5048: 5046: 5043: 5041: 5038: 5036: 5033: 5031: 5028: 5026: 5023: 5021: 5018: 5016: 5013: 5011: 5008: 5006: 5003: 5001: 4998: 4996: 4993: 4991: 4988: 4986: 4983: 4979: 4976: 4974: 4971: 4970: 4969: 4966: 4964: 4961: 4959: 4956: 4954: 4951: 4949: 4946: 4944: 4941: 4939: 4936: 4934: 4931: 4929: 4926: 4924: 4921: 4919: 4916: 4914: 4911: 4909: 4906: 4904: 4901: 4899: 4896: 4894: 4891: 4889: 4886: 4884: 4881: 4879: 4876: 4874: 4871: 4869: 4866: 4864: 4861: 4859: 4856: 4854: 4851: 4849: 4846: 4844: 4841: 4839: 4836: 4834: 4831: 4829: 4826: 4824: 4821: 4819: 4816: 4814: 4811: 4807: 4804: 4803: 4802: 4799: 4797: 4794: 4792: 4789: 4787: 4784: 4782: 4779: 4777: 4774: 4772: 4769: 4765: 4762: 4760: 4757: 4756: 4755: 4752: 4750: 4747: 4745: 4742: 4740: 4737: 4735: 4732: 4730: 4727: 4725: 4722: 4720: 4717: 4715: 4712: 4710: 4707: 4705: 4702: 4700: 4697: 4695: 4692: 4690: 4687: 4685: 4682: 4678: 4675: 4673: 4670: 4668: 4665: 4663: 4660: 4658: 4655: 4653: 4650: 4648: 4645: 4643: 4640: 4638: 4635: 4634: 4633: 4630: 4628: 4625: 4623: 4620: 4618: 4615: 4613: 4610: 4608: 4605: 4603: 4600: 4598: 4595: 4593: 4590: 4588: 4585: 4583: 4580: 4578: 4575: 4573: 4570: 4568: 4565: 4563: 4560: 4558: 4555: 4553: 4550: 4548: 4545: 4543: 4540: 4538: 4535: 4531: 4528: 4526: 4523: 4522: 4521: 4518: 4516: 4513: 4511: 4508: 4506: 4503: 4501: 4498: 4496: 4493: 4491: 4488: 4486: 4483: 4481: 4478: 4476: 4473: 4470: 4466: 4463: 4461: 4458: 4456: 4453: 4451: 4448: 4446: 4443: 4441: 4438: 4436: 4433: 4431: 4428: 4426: 4423: 4421: 4418: 4416: 4413: 4411: 4408: 4406: 4403: 4401: 4398: 4396: 4393: 4391: 4388: 4386: 4383: 4381: 4378: 4376: 4373: 4371: 4368: 4366: 4363: 4361: 4358: 4356: 4353: 4351: 4348: 4344: 4341: 4339: 4336: 4334: 4331: 4329: 4326: 4324: 4321: 4320: 4319: 4316: 4314: 4311: 4309: 4306: 4304: 4301: 4299: 4296: 4294: 4291: 4289: 4286: 4284: 4281: 4279: 4276: 4274: 4271: 4269: 4266: 4264: 4261: 4260: 4258: 4254: 4248: 4245: 4243: 4240: 4238: 4235: 4233: 4230: 4228: 4225: 4223: 4220: 4218: 4215: 4213: 4210: 4208: 4205: 4203: 4200: 4198: 4195: 4193: 4190: 4188: 4185: 4183: 4180: 4178: 4175: 4173: 4170: 4168: 4165: 4163: 4160: 4158: 4155: 4153: 4150: 4148: 4145: 4143: 4140: 4138: 4135: 4133: 4130: 4128: 4125: 4123: 4120: 4116: 4113: 4111: 4108: 4106: 4103: 4101: 4098: 4096: 4093: 4091: 4088: 4086: 4083: 4081: 4078: 4076: 4073: 4071: 4068: 4066: 4063: 4061: 4058: 4056: 4053: 4051: 4048: 4046: 4043: 4041: 4038: 4036: 4033: 4032: 4031: 4028: 4026: 4023: 4021: 4018: 4016: 4013: 4011: 4008: 4006: 4003: 4001: 3998: 3996: 3993: 3991: 3988: 3986: 3983: 3981: 3978: 3976: 3973: 3971: 3968: 3966: 3963: 3961: 3958: 3956: 3953: 3951: 3948: 3946: 3943: 3941: 3938: 3936: 3933: 3931: 3928: 3926: 3923: 3921: 3918: 3916: 3913: 3911: 3908: 3906: 3903: 3899: 3896: 3895: 3894: 3891: 3889: 3886: 3884: 3881: 3879: 3876: 3874: 3871: 3869: 3866: 3864: 3861: 3859: 3856: 3854: 3851: 3849: 3846: 3844: 3841: 3839: 3836: 3834: 3831: 3829: 3826: 3824: 3821: 3819: 3816: 3814: 3811: 3809: 3806: 3804: 3801: 3799: 3796: 3794: 3791: 3789: 3786: 3784: 3781: 3779: 3776: 3774: 3771: 3769: 3766: 3764: 3761: 3759: 3756: 3754: 3751: 3749: 3746: 3744: 3741: 3739: 3736: 3734: 3731: 3729: 3726: 3724: 3721: 3719: 3716: 3714: 3711: 3709: 3706: 3704: 3701: 3699: 3696: 3694: 3691: 3689: 3686: 3684: 3681: 3677: 3674: 3672: 3669: 3667: 3664: 3663: 3662: 3659: 3657: 3654: 3652: 3649: 3647: 3644: 3642: 3639: 3637: 3634: 3632: 3629: 3627: 3624: 3622: 3619: 3617: 3614: 3612: 3609: 3607: 3604: 3602: 3599: 3597: 3594: 3592: 3589: 3587: 3584: 3582: 3579: 3577: 3574: 3572: 3569: 3567: 3564: 3562: 3559: 3557: 3554: 3552: 3549: 3547: 3544: 3542: 3539: 3537: 3534: 3532: 3529: 3527: 3524: 3522: 3519: 3517: 3514: 3512: 3509: 3507: 3504: 3502: 3499: 3497: 3494: 3492: 3489: 3487: 3484: 3482: 3479: 3477: 3474: 3472: 3469: 3467: 3464: 3462: 3459: 3457: 3454: 3452: 3449: 3447: 3444: 3442: 3439: 3435: 3432: 3430: 3427: 3425: 3422: 3420: 3417: 3415: 3412: 3411: 3410: 3407: 3405: 3402: 3400: 3397: 3395: 3392: 3390: 3387: 3385: 3382: 3380: 3377: 3375: 3372: 3370: 3367: 3365: 3362: 3360: 3357: 3355: 3352: 3350: 3347: 3345: 3342: 3340: 3337: 3335: 3332: 3330: 3327: 3323: 3320: 3318: 3315: 3313: 3310: 3308: 3305: 3303: 3300: 3298: 3295: 3293: 3290: 3288: 3285: 3283: 3280: 3278: 3275: 3273: 3270: 3268: 3265: 3263: 3260: 3259: 3258: 3255: 3253: 3250: 3248: 3245: 3243: 3240: 3238: 3235: 3233: 3230: 3228: 3225: 3223: 3220: 3218: 3215: 3213: 3210: 3209: 3207: 3203: 3199: 3198:IEC standards 3195: 3191: 3190:ISO standards 3185: 3177: 3170: 3165: 3163: 3158: 3156: 3151: 3150: 3147: 3136: 3131: 3125: 3122: 3120: 3117: 3116: 3114: 3110: 3104: 3101: 3099: 3096: 3095: 3093: 3089: 3083: 3080: 3078: 3077:Minimal BASIC 3075: 3073: 3070: 3067: 3063: 3059: 3056: 3054: 3051: 3049: 3046: 3044: 3041: 3040: 3038: 3034: 3028: 3025: 3024: 3022: 3018: 3012: 3009: 3007: 3004: 3002: 2999: 2997: 2994: 2992: 2989: 2985: 2982: 2980: 2977: 2975: 2972: 2971: 2970: 2967: 2964: 2961: 2959: 2956: 2955: 2953: 2949: 2943: 2940: 2937: 2934: 2932: 2929: 2927: 2924: 2922: 2919: 2917: 2914: 2913: 2911: 2907: 2902: 2892: 2889: 2887: 2884: 2882: 2879: 2877: 2874: 2872: 2869: 2868: 2866: 2862: 2858: 2855:Standards of 2850: 2845: 2843: 2838: 2836: 2831: 2830: 2827: 2820: 2819:Decimal BASIC 2817: 2816: 2812: 2806: 2804:9780471810872 2800: 2796: 2795: 2789: 2788: 2784: 2778: 2774: 2770: 2766: 2761: 2757: 2753: 2748: 2736: 2732: 2727: 2724:. p. 29. 2723: 2719: 2714: 2710: 2706: 2701: 2697: 2690: 2685: 2681: 2679:9780894805912 2675: 2671: 2670: 2664: 2660: 2656: 2652: 2648: 2644: 2640: 2636: 2631: 2628:. p. 88. 2627: 2623: 2618: 2611: 2610: 2609:Minimal BASIC 2605: 2598: 2591: 2590: 2585: 2581: 2580: 2575: 2574: 2570: 2562: 2557: 2555: 2551: 2547: 2546:Standard 1987 2542: 2539: 2535: 2534:Standard 1987 2530: 2527: 2523: 2522:Standard 1987 2518: 2515: 2511: 2510:Standard 1987 2506: 2503: 2499: 2498:Standard 1987 2494: 2491: 2487: 2486:Standard 1987 2482: 2480: 2476: 2472: 2471:Standard 1987 2467: 2464: 2460: 2459:Standard 1987 2455: 2452: 2448: 2447:Standard 1987 2443: 2440: 2436: 2435:Standard 1987 2431: 2428: 2424: 2423:Standard 1987 2419: 2416: 2412: 2411:Standard 1987 2407: 2404: 2400: 2399:Standard 1987 2395: 2392: 2388: 2387:Standard 1987 2383: 2380: 2376: 2375:Standard 1987 2371: 2368: 2364: 2363:Standard 1987 2359: 2356: 2352: 2351:Standard 1987 2347: 2344: 2340: 2339:Standard 1987 2335: 2332: 2328: 2327:Standard 1987 2323: 2320: 2317:, p. 74. 2316: 2315:Standard 1987 2311: 2308: 2303: 2296: 2293: 2290:, p. 71. 2289: 2284: 2281: 2278:, p. 70. 2277: 2272: 2269: 2266:, p. 49. 2265: 2260: 2257: 2254:, p. 37. 2253: 2252:Standard 1987 2248: 2245: 2242:, p. 66. 2241: 2240:Standard 1987 2236: 2234: 2230: 2226: 2225:Standard 1987 2221: 2218: 2214: 2213:Standard 1987 2209: 2206: 2202: 2201:Standard 1987 2197: 2194: 2191:, p. 49. 2190: 2189:Standard 1987 2185: 2182: 2178: 2173: 2170: 2166: 2165:Standard 1987 2161: 2158: 2154: 2153:Standard 1987 2149: 2146: 2143:, p. 94. 2142: 2141:Standard 1987 2137: 2135: 2131: 2127: 2126:Standard 1987 2122: 2119: 2116:, p. 84. 2115: 2114:Standard 1987 2110: 2107: 2104:, p. 87. 2103: 2102:Standard 1987 2098: 2095: 2090: 2086: 2080: 2077: 2073: 2072:Standard 1987 2068: 2065: 2062:, p. 55. 2061: 2056: 2054: 2050: 2046: 2041: 2038: 2035:, p. 50. 2034: 2033:Standard 1987 2029: 2026: 2023:, p. 29. 2022: 2021:Standard 1987 2017: 2014: 2011:, p. 31. 2010: 2009:Standard 1987 2005: 2003: 1999: 1995: 1994:Standard 1987 1990: 1987: 1983: 1982:Standard 1987 1978: 1975: 1972:, p. 54. 1971: 1966: 1963: 1960:, p. 88. 1959: 1954: 1951: 1947: 1942: 1939: 1936:, p. 29. 1935: 1930: 1927: 1922: 1918: 1914: 1910: 1906: 1902: 1898: 1894: 1890: 1883: 1880: 1875: 1868: 1865: 1860: 1856: 1850: 1847: 1844:, p. 53. 1843: 1838: 1835: 1832:, p. 52. 1831: 1826: 1824: 1822: 1818: 1815:, p. 51. 1814: 1809: 1806: 1802: 1797: 1794: 1790: 1789:Standard 1987 1785: 1782: 1778: 1773: 1770: 1766: 1761: 1758: 1754: 1749: 1746: 1742: 1741:Standard 1987 1737: 1734: 1730: 1725: 1722: 1718: 1713: 1710: 1706: 1701: 1698: 1684: 1678: 1675: 1670: 1666: 1659: 1656: 1651: 1650:Computerworld 1647: 1641: 1638: 1633: 1629: 1622: 1619: 1615: 1610: 1608: 1606: 1604: 1600: 1593: 1588: 1571: 1568: 1558: 1555: 1549: 1546: 1539: 1537: 1533: 1525: 1519:ECMA vs. ANSI 1518: 1516: 1493: 1465: 1443: 1441: 1410: 1376: 1368: 1366: 1315: 1292: 1290: 1277:to a file of 1264: 1263:magnetic tape 1223: 1216:SET MARGIN 10 1208:SET ZONEWIDTH 1197: 1196:format string 1181: 1147: 1121: 1113: 1111: 1101: 1084: 1065: 923: 916: 900: 898: 879: 853: 848: 801: 747: 745: 726:OPTION BASE 0 713: 697: 687: 682: 662: 660: 658: 646: 638: 634: 629: 619: 601:SUB...END SUB 589: 546: 534: 518: 516: 512: 488: 486: 461: 459: 432: 429: 425: 417: 412: 410: 408: 404: 400: 394: 392: 388: 384: 380: 379:College Board 372: 370: 368: 364: 360: 356: 350: 346: 342: 339:OPTION BASE 0 330:OPTION BASE 0 319: 315: 311: 309: 305: 301: 297: 292: 287: 285: 281: 277: 273: 269: 265: 262:vendors like 261: 257: 253: 249: 246:vendors like 245: 241: 237: 236:microcomputer 229: 226: 222: 220: 216: 212: 208: 207:Minimal BASIC 202: 200: 196: 192: 188: 184: 183:minicomputers 180: 176: 171: 169: 165: 161: 158: 154: 150: 147: 143: 139: 135: 129: 128:Minimal BASIC 122:Minimal BASIC 121: 116: 114: 112: 108: 104: 100: 96: 92: 91:microcomputer 88: 84: 79: 77: 72: 68: 67:Minimal BASIC 63: 61: 60:file handling 57: 53: 49: 45: 41: 37: 33: 29: 25: 21: 6289:27000-series 6003: 5316:27000 series 4312: 3081: 3027:Universal 3D 2793: 2768: 2764: 2755: 2739:. Retrieved 2734: 2721: 2708: 2695: 2669:Digital Deli 2668: 2645:(7): 50–59. 2642: 2638: 2625: 2608: 2597:the original 2588: 2578: 2571:Bibliography 2541: 2529: 2517: 2505: 2493: 2466: 2454: 2442: 2430: 2418: 2406: 2394: 2382: 2370: 2358: 2346: 2334: 2322: 2310: 2301: 2295: 2283: 2271: 2259: 2247: 2220: 2208: 2196: 2184: 2172: 2160: 2148: 2121: 2109: 2097: 2088: 2079: 2067: 2040: 2028: 2016: 1989: 1977: 1965: 1953: 1941: 1929: 1896: 1892: 1882: 1867: 1858: 1855:"Viewpoints" 1849: 1837: 1808: 1796: 1791:, p. i. 1784: 1772: 1760: 1748: 1736: 1724: 1712: 1700: 1689:. Retrieved 1677: 1668: 1658: 1649: 1640: 1631: 1621: 1616:, p. i. 1570: 1557: 1548: 1534: 1526: 1522: 1494: 1466: 1447: 1424:rather than 1411: 1372: 1335:HANDLER name 1316: 1309:and related 1296: 1249:and the new 1224: 1220:ASK MARGIN J 1218:followed by 1200:IMAGE : 1182: 1148: 1120:input/output 1117: 1114:Input/Output 1085: 1081:B$ =A$ (1,5) 1068:B$ =A$ (1:5) 1060: 904: 880: 849: 802: 751: 714: 698: 683: 674:FOR S=1 TO A 666: 630: 590: 560:or multiple 547: 535: 522: 513: 489: 465: 433: 428:line numbers 421: 395: 387:Commodore 64 376: 354: 351: 347: 343: 312: 288: 268:Data General 260:minicomputer 252:Control Data 233: 224: 203: 191:Data General 172: 131: 106: 86: 82: 80: 64: 56:input/output 27: 23: 19: 18: 5104:20000–29999 4256:10000–19999 2938:(Ultrium-1) 2672:. Workman. 1958:Dvorak 1984 424:line editor 413:Description 407:John Dvorak 359:source code 322:OPTION BASE 211:matrix math 138:timesharing 52:matrix math 6368:Categories 4883:16949 (TS) 4480:11941 (TR) 3178:standards 3082:Full BASIC 3066:ECMAScript 3058:JavaScript 2561:Kurtz 1994 2177:Kurtz 1982 2045:Kurtz 1982 1801:Kurtz 1982 1777:Kurtz 1982 1765:Kurtz 1982 1753:Kurtz 1982 1691:2020-08-18 1669:HP9825.COM 1589:References 1515:was seen. 1379:LINE STYLE 1267:SEQUENTIAL 1204:SET MARGIN 1176:keywords: 1104:RIGHT$ (n) 895:DIM A(2,2) 835:. The new 772:. The new 614:LET DOIT=1 588:commands. 566:FOR...NEXT 530:FOR...NEXT 485:snake case 399:True BASIC 373:True BASIC 363:shrinkwrap 230:Full BASIC 199:BASIC-PLUS 168:CompuServe 103:True BASIC 28:ANSI BASIC 20:Full BASIC 4838:15926 WIP 4202:9592/9593 4127:9000/9001 4015:8805/8806 2931:Super DLT 2797:. Wiley. 2756:InfoWorld 2722:InfoWorld 2626:InfoWorld 1934:Mace 1982 1705:ECMA 1978 1614:ECMA 1986 1594:Citations 1470:STRUCTURE 1444:Real-time 1076:PRINT B$ 883:MAT INPUT 856:MAT A=A*B 670:FORS=1TOA 618:recursive 605:CALL name 570:DO...LOOP 558:ON...GOTO 519:Structure 450:command. 296:mainframe 244:mainframe 173:In 1968, 149:mainframe 5463:Category 3188:List of 3020:Graphics 2741:20 March 2659:31236801 2302:Compute! 1921:64737920 1563:OPTIONAL 1486:GET FROM 1369:Graphics 1365:blocks. 1359:CONTINUE 1347:EXTEXT$ 1307:DEBUG ON 1299:TRACE ON 1283:INTERNAL 866:ert and 852:overload 798:>< 649:EXTERNAL 582:EXIT FOR 436:RENUMBER 326:DIM A(3) 164:Tymshare 107:De facto 83:ECMA-116 30:, is an 6346:Related 6059:13522-5 5847:ISO/IEC 5738:62014-4 5651:61131-9 5646:61131-3 5616:60906-1 5609:60870-6 5604:60870-5 5364:29199-2 5236:23094-2 5231:23094-1 5221:23090-3 5090:19794-5 5085:19775-1 4873:16612-2 4863:16355-1 4552:13406-2 4510:12234-2 4278:10118-3 3119:ECMA-35 3043:C++/CLI 2891:OpenXPS 1913:3617129 1474:IN FROM 1458:MESSAGE 1414:PICTURE 1345:or the 1279:DISPLAY 1259:REWRITE 1174:ELAPSED 1170:TIMEOUT 1096:RIGHT$ 1064:"slice" 901:Strings 653:DECLARE 593:PROGRAM 586:EXIT DO 444:EXTRACT 304:FORTRAN 266:(DEC), 181:series 179:HP 2000 117:History 5378:30000+ 4217:9797-1 4025:8820-5 3970:8501-1 3526:1073-2 3521:1073-1 3205:1–9999 3053:Eiffel 2984:FAT16B 2965:(CDFS) 2958:CD-ROM 2801:  2676:  2657:  1919:  1911:  1859:PC Mag 1579:FORMAT 1490:PUT TO 1482:SHARED 1478:OUT TO 1462:SHARED 1450:PARACT 1403:ROTATE 1383:WINDOW 1343:EXTYPE 1271:STREAM 1162:PROMPT 1154:PROMPT 1100:PDP-10 1088:LEFT$ 1072:CHANGE 1047:CHANGE 972:CHANGE 911:CHANGE 637:global 440:DELETE 391:TRS-80 383:Pascal 367:Pascal 146:GE 235 6337:81346 6332:80000 6327:42010 6322:39075 6317:38500 6312:33001 6307:29119 6303:29110 6299:27040 6294:27002 6284:27000 6279:26300 6274:24752 6269:24744 6264:24727 6259:24707 6254:23360 6249:23270 6244:23008 6239:23003 6234:23000 6229:22537 6224:22275 6219:21827 6214:21000 6209:20802 6204:20000 6199:19788 6194:19770 6189:19757 6184:19752 6179:18181 6174:18014 6169:18004 6164:17025 6159:17024 6154:16485 6149:16262 6144:15938 6139:15897 6134:15693 6129:15511 6124:15504 6119:15445 6114:15444 6109:15408 6104:15291 6099:15288 6094:14882 6089:14651 6084:14496 6079:14443 6074:13818 6069:13816 6064:13568 6054:13346 6049:13250 6044:12207 6039:11801 6034:11544 6029:11404 6024:11179 6019:11172 6014:10967 6009:10646 6004:10279 5999:10179 5994:10165 5989:10116 5984:10021 5838:63382 5833:63119 5828:63110 5823:62700 5818:62682 5813:62680 5808:62455 5803:62386 5798:62379 5793:62366 5788:62365 5783:62351 5778:62325 5773:62304 5768:62264 5763:62262 5758:62196 5753:62061 5748:62056 5743:62026 5733:61970 5728:61968 5723:61960 5718:61883 5713:61851 5708:61850 5703:61784 5698:61511 5693:61508 5688:61499 5683:61400 5678:61360 5673:61355 5668:61334 5663:61162 5658:61158 5641:61131 5636:61030 5631:60958 5626:60929 5621:60908 5599:60870 5594:60601 5589:60559 5584:60446 5579:60364 5574:60320 5569:60309 5564:60297 5559:60269 5554:60228 5549:60112 5544:60068 5539:60063 5534:60062 5529:60038 5524:60034 5519:60027 5445:80000 5440:56000 5435:55000 5430:50001 5425:45001 5420:42010 5415:40500 5410:39075 5405:38500 5400:37001 5395:32000 5390:31000 5385:30170 5369:29500 5359:29148 5355:29110 5351:28000 5346:27729 5341:27006 5336:27005 5331:27002 5326:27001 5321:27000 5311:26324 5306:26300 5301:26262 5296:26000 5291:25964 5286:25178 5281:24728 5276:24707 5271:24617 5266:24613 5261:24517 5256:23941 5251:23360 5246:23271 5241:23270 5226:23092 5216:23009 5211:23008 5206:23003 5201:23000 5196:22537 5191:22395 5186:22301 5181:22300 5176:22275 5171:22000 5166:21827 5161:21500 5156:21122 5151:21047 5146:21001 5141:21000 5136:20830 5131:20802 5126:20400 5121:20121 5116:20022 5111:20000 5095:19831 5080:19770 5075:19757 5070:19752 5065:19600 5060:19510 5055:19509 5050:19508 5045:19507 5040:19506 5035:19505 5030:19503 5025:19502 5020:19501 5015:19500 5010:19439 5005:19407 5000:19136 4995:19125 4990:19115 4985:19114 4968:19092 4963:19011 4958:19005 4953:18916 4948:18629 4943:18245 4938:18181 4933:18014 4928:18004 4923:17799 4918:17506 4913:17442 4908:17369 4903:17203 4898:17100 4893:17025 4888:17024 4878:16750 4868:16485 4858:16262 4853:16023 4848:15938 4843:15930 4833:15926 4828:15924 4823:15919 4818:15897 4813:15707 4801:15706 4796:15693 4791:15686 4786:15511 4781:15504 4776:15438 4771:15445 4754:15444 4749:15408 4744:15398 4739:15291 4734:15288 4729:15189 4724:15022 4719:14971 4714:14882 4709:14764 4704:14698 4699:14651 4694:14649 4689:14644 4684:14617 4632:14496 4627:14443 4622:14396 4617:14289 4612:14224 4607:14031 4602:14000 4597:13818 4592:13816 4587:13616 4582:13584 4577:13568 4572:13567 4567:13490 4562:13485 4557:13450 4547:13399 4542:13250 4537:13216 4520:13211 4515:12620 4505:12207 4500:12182 4495:12052 4490:12006 4485:11992 4475:11941 4465:11940 4460:11898 4455:11889 4450:11801 4445:11785 4440:11784 4435:11783 4430:11544 4425:11404 4420:11179 4415:11172 4410:11170 4405:11073 4400:10967 4395:10962 4390:10957 4385:10861 4380:10746 4375:10664 4370:10646 4365:10628 4360:10589 4355:10585 4350:10383 4318:10303 4313:10279 4308:10218 4303:10206 4298:10179 4293:10165 4288:10161 4283:10160 4273:10116 4268:10007 4263:10006 3112:Other 2979:FAT16 2974:FAT12 2692:(PDF) 2655:S2CID 2613:(PDF) 2600:(PDF) 2593:(PDF) 1917:S2CID 1909:JSTOR 1686:(PDF) 1575:IMAGE 1540:Notes 1530:PRINT 1513:EVENT 1505:DELAY 1497:START 1454:EVENT 1407:SHEAR 1399:SCALE 1395:SHIFT 1355:RETRY 1311:BREAK 1287:WRITE 1275:PRINT 1255:ERASE 1251:WRITE 1243:PRINT 1239:INPUT 1231:CLOSE 1192:USING 1188:USING 1184:PRINT 1150:INPUT 1144:CLOSE 1128:PRINT 1124:INPUT 1092:MID$ 915:ASCII 876:INPUT 872:PRINT 837:ANGLE 794:=> 790:=< 633:scope 496:' 472:INPUT 468:PRINT 452:CHAIN 448:CHAIN 300:COBOL 284:Kodak 157:GEnie 5979:9995 5974:9945 5969:9899 5964:9593 5959:9592 5954:9529 5949:9496 5944:9293 5939:9126 5934:8859 5929:8652 5924:8632 5919:8613 5914:7942 5909:7816 5904:7813 5899:7812 5894:7811 5889:7810 5884:6523 5879:6429 5874:5218 5869:4909 5864:2022 5859:1989 4343:-238 4247:9995 4242:9985 4237:9984 4232:9945 4227:9899 4222:9897 4212:9660 4207:9594 4197:9564 4192:9529 4187:9506 4182:9496 4177:9407 4172:9362 4167:9314 4162:9293 4157:9241 4152:9227 4147:9141 4142:9126 4137:9075 4132:9036 4122:8879 4075:-8-I 4030:8859 4020:8807 4010:8691 4005:8652 4000:8651 3995:8632 3990:8613 3985:8601 3980:8583 3975:8571 3965:8373 3960:8217 3955:8178 3950:8093 3945:8000 3940:7942 3935:7816 3930:7813 3925:7812 3920:7811 3915:7810 3910:7736 3905:7637 3893:7498 3888:7200 3883:7185 3878:7098 3873:7064 3868:7027 3863:7010 3858:7002 3853:7001 3848:6943 3843:6709 3838:6523 3833:6438 3828:6429 3823:6425 3818:6385 3813:6373 3808:6346 3803:6344 3798:6166 3793:5964 3788:5807 3783:5800 3778:5776 3773:5775 3768:5725 3763:5428 3758:5427 3753:5426 3748:5218 3743:4909 3738:4217 3733:4165 3728:4157 3723:4031 3718:3977 3713:3950 3708:3901 3703:3864 3698:3602 3693:3601 3688:3307 3683:3297 3661:3166 3656:3103 3651:3029 3646:2921 3641:2852 3636:2848 3631:2788 3626:2720 3621:2711 3616:2709 3611:2533 3606:2281 3601:2240 3596:2146 3591:2145 3586:2108 3581:2047 3576:2033 3571:2022 3566:2015 3561:2014 3556:1989 3551:1745 3546:1629 3541:1538 3536:1413 3531:1155 3516:1007 3511:1004 3506:1000 3329:68-1 3124:JSON 3072:Dart 2876:APIW 2799:ISBN 2743:2016 2735:Byte 2696:Byte 2674:ISBN 1632:Time 1561:The 1509:TIME 1501:WAIT 1488:and 1476:and 1430:WITH 1426:CALL 1422:DRAW 1405:and 1387:CLIP 1381:and 1363:WHEN 1331:ELSE 1257:and 1247:READ 1241:and 1229:and 1227:OPEN 1206:and 1172:and 1142:and 1140:OPEN 1136:READ 1132:DATA 1126:and 1094:and 1038:NEXT 874:and 831:and 817:ACOS 813:ASIN 796:and 784:and 768:and 584:and 542:GOTO 538:EXIT 526:GOTO 480:READ 478:and 476:DATA 456:WITH 438:and 389:and 316:and 282:and 270:and 254:and 166:and 58:for 44:ECMA 5854:646 5512:IEC 4677:-20 4672:-17 4667:-14 4662:-12 4657:-11 4652:-10 4338:-28 4333:-22 4328:-21 4323:-11 4115:-16 4110:-15 4105:-14 4100:-13 4095:-12 4090:-11 4085:-10 3501:999 3496:965 3491:898 3486:860 3481:843 3476:838 3471:764 3466:732 3461:704 3456:690 3451:668 3446:657 3441:646 3409:639 3404:519 3399:518 3394:500 3389:361 3384:306 3379:302 3374:262 3369:261 3364:259 3359:233 3354:228 3349:226 3344:217 3339:216 3334:128 3322:-13 3317:-12 3312:-11 3307:-10 3176:ISO 3103:UWB 3098:NFC 3062:E4X 2996:UDF 2969:FAT 2942:VXA 2926:DLT 2921:DDS 2773:doi 2647:doi 1901:doi 1418:SUB 1351:ASK 1327:USE 1269:or 1245:or 1212:ASK 1056:B$ 987:FOR 975:A$ 942:DIM 930:A$ 891:DIM 868:DET 864:INV 862:o, 860:ZER 833:SEC 829:CSC 825:COT 821:ATN 809:ABS 807:or 805:SQR 786:NOT 778:AND 774:MOD 717:DIM 679:A$ 622:DEF 597:END 509:LET 505:LET 492:REM 302:or 248:IBM 26:or 6370:: 4978:-2 4973:-1 4806:-2 4764:-9 4759:-3 4647:-6 4642:-3 4637:-2 4530:-2 4525:-1 4469:-2 4080:-9 4070:-8 4065:-7 4060:-6 4055:-5 4050:-4 4045:-3 4040:-2 4035:-1 3898:-1 3676:-3 3671:-2 3666:-1 3434:-6 3429:-5 3424:-3 3419:-2 3414:-1 3302:-9 3297:-8 3292:-7 3287:-6 3282:-5 3277:-4 3272:-3 3267:-1 3262:-0 3257:31 3252:17 3247:16 3196:– 3192:– 3064:, 3048:C# 2991:FD 2769:16 2767:. 2754:. 2733:. 2720:. 2707:. 2694:. 2653:. 2643:18 2641:. 2637:. 2624:. 2553:^ 2478:^ 2232:^ 2133:^ 2087:. 2052:^ 2001:^ 1915:. 1907:. 1897:65 1895:. 1891:. 1857:. 1820:^ 1667:. 1648:. 1630:. 1602:^ 1492:. 1440:. 1409:. 1401:, 1397:, 1353:. 1289:. 1110:. 1090:, 1053:TO 1044:70 1035:60 1005:50 999:TO 984:40 978:TO 969:30 954:), 951:25 939:20 927:10 845:PI 827:, 823:, 819:, 815:, 800:. 792:, 782:OR 780:, 764:, 760:, 756:, 744:. 730:TO 712:. 681:. 659:. 628:. 562:IF 474:, 470:, 286:. 278:, 276:3M 258:, 250:, 54:, 50:, 5497:e 5490:t 5483:v 4471:) 4467:( 3242:9 3237:7 3232:6 3227:4 3222:3 3217:2 3212:1 3168:e 3161:t 3154:v 3068:) 3060:( 2848:e 2841:t 2834:v 2807:. 2779:. 2775:: 2745:. 2682:. 2661:. 2649:: 1923:. 1903:: 1876:. 1694:. 1671:. 1634:. 1050:B 1041:I 1032:) 1029:I 1026:( 1023:A 1020:= 1017:) 1014:I 1011:( 1008:B 1002:5 996:1 993:= 990:I 981:A 966:) 963:5 960:( 957:B 948:( 945:A 933:= 770:^ 766:/ 762:* 758:- 754:+ 641:I 500:!

Index

international standard
BASIC programming language
American National Standards Institute
ECMA
structured programming
matrix math
input/output
file handling
Minimal BASIC
Dartmouth BASIC
Dartmouth College
microcomputer
Microsoft BASIC
home computers
True BASIC
Microsoft Visual Basic
Minimal BASIC
Dartmouth BASIC
timesharing
General Electric
GE 235
mainframe
service bureau
GEnie
online service
Tymshare
CompuServe
Hewlett-Packard
HP 2000
minicomputers

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.