BASIC (an acronym for Symbolic Instruction Code All Beginner Objectives ) is a family of high-end general purpose languages ââwhose design philosophy emphasizes ease of use. In 1964 John G. Kemeny, Thomas E. Kurtz and Mary Kenneth Keller designed the original BASIC language at Dartmouth College in New Hampshire, USA. They want to enable students in fields other than science and math to use computers. At that time, almost all computer use was needed to write special software, which was something that only scientists and mathematicians learned.
The BASIC version became widespread on microcomputers in the mid-1970s and 1980s. Microcomputers are usually shipped with BASIC, often in machine firmware. Having an easy-to-learn language on an early personal computer allows small business owners, professionals, fans, and consultants to develop custom software on computers they can afford. In 2010, BASIC is popular in many computer dialects and in new languages ââinfluenced by BASIC, such as Microsoft Visual Basic.
Video BASIC
Origin
The original BASIC language was released on May 1, 1964 by John G. Kemeny and Thomas E. Kurtz and carried out under their direction by the Dartmouth College student team.
One of the graduate students in the implementation team is Mary Kenneth Keller, one of the first people in the US to earn a PhD in computer science.
The acronym BASIS is derived from the name of an unpublished paper by Thomas Kurtz. BASIC is designed to enable students to write mainframe computer programs for Dartmouth Time Division Systems. It is intended specifically for less technical users who do not have or want the expected mathematical background before. Able to use computers to support teaching and research is quite new at the time.
This language is based on FORTRAN II, with some influence from ALGOL 60 and in addition to being suitable for timesharing. Initially, BASIC concentrated on supporting direct mathematical work, with the support of an arithmetic matrix from its early implementation as a batch language, and a string character function that was added in 1965. Due to widespread use of the language, its designers made the compiler available for free.. (In 1960, software became a commodity charged, until then, provided no cost as a service with very expensive computers, usually only available for rent.) They also made it available for high school in Hanover, New Hampshire and tried hard promote the language. In the following years, when other BASIC dialects appeared, the original BASIC dialect of Kemeny and Kurtz was known as Dartmouth BASIC.
Maps BASIC
Spread on minicomputers
The knowledge of relatively simple BASIC is becoming widespread for computer languages, and it is implemented by a number of manufacturers, becoming quite popular in newer mini computers such as the DEC PDP series, where BASIC-PLUS is an additional dialect for use on RSTS/E shared operating systems time. The BASIC language was available for Data General Nova, as well as the HP Time-Shared BASIC system center in the late 1960s and early 1970s, where languages ââwere implemented as translators. The version is the core part of the Pick operating system from 1973 onwards, where the compiler makes it into bytecode, can be interpreted by virtual machines.
During this period a number of simple computer games were written in BASIC, the most famous being Mike Mayfield Star Trek . This number was collected by DEC employee David H. Ahl and published in the newsletter he compiled. He then collected this amount into a book form, 101 BASIC Computer Games, published in 1973. During the same period, Ahl was involved in the manufacture of small computers for educational purposes, early personal computers.. When management refused to support the concept, Ahl left DEC in 1974 to find a seminal computer magazine, Creative Computing . The book remains popular, and re-published on several occasions.
Explosive growth: era of home computer
The introduction of the first microcomputers in the mid-1970s was the beginning of explosive growth for BASIC. It has a pretty good advantage for young designers and computer enthusiasts interested in microcomputers. Despite Dijkstra's famous assessment in 1975, "It is almost impossible to teach good programming to students who have had previous exposure to BASIC: as potential programmers they are mentally mutilated beyond regeneration expectations", BASIC is one of several languages ââthat are equally high enough level to be used by them without training and small enough to break into the microcomputer that day, making it the de facto standard programming language on early microcomputers.
One of the first BASICs to emerge was Tiny BASIC, a simple BASIC variant designed by Dennis Allison for Bob Albrecht's insistence on the Homebrew Computer Club. He has seen BASIC on a minicomputer and feels it would be a perfect match for new machines like the MITS Altair 8800. How to design and implement a stripped-down translator version for BASIC languages ââcovered in an article by Allison on the first three quarterly issues from The People's Computer Company newsletter was published in 1975 and implemented with the source code published at Dr. Dobb's Journal of Tiny BASIC Calisthenics & amp; Orthodontia: Running Light Without Overbyte . Version written by Li-Chen Wang and Tom Pittman. In 1975 MITS released Altair BASIC, developed by Bill Gates and Paul Allen as a Micro-Soft company, which eventually grew into a Microsoft corporate giant. The first Altair version was co-written by Gates, Allen, and Monte Davidoff.
Almost universally, a 1980's home computer had a BASIC ROM-resident interpreter, which was directly inserted into the machine. When Apple II, PET 2001, and TRS-80 were released in 1977, they all had BASIC as the primary programming language and operating environment. After boot, a BASIC translator in direct mode is presented, not a command line interface used on systems running CP/M or MS-DOS. Commodore Business Machines include the Microsoft BASIC version. The Apple II and TRS-80 each have two versions of BASIC, a smaller introductory version introduced with early releases of the engine and a more advanced version being developed due to increased interest in platforms. As new companies enter the field, additional versions are added that subtly alter the BASIC family. The 8-bit Atari family has its own modified Atari BASIC to fit on an 8 kB ROM cartridge. The BBC publishes BBC BASIC, developed by Acorn Computers Ltd, which combines many extra structured programming keywords and advanced floating-point operation features.
As BASIC's popularity evolved in this period, computer magazines published complete source code on BASIC for video games, utilities, and other programs. Given the straightforward nature of BASIC, it is a simple matter of typing the code from a magazine and running the program. Different magazines are published that feature programs for certain computers, although some BASIC programs are considered universal and can be used in machines running various BASICs (sometimes with little adaptation). Many program-type books are also available, and in particular, Ahl publishes the original BASIC 101 game version that is converted into Microsoft dialect and publishes it from Creative Computing as BASIC Computer Games >. This book, and its sequel, provides hundreds of ready-made programs that can be easily converted to almost any platform that runs BASIC. The book reached stores in 1978, just when the home computer market started, and it became the first computer book that sold millions. Then the package, such as Learning to Program BASIC will also have the game as the introductory focus. On business-focused CP/M computers that are immediately widespread in small business environments, Microsoft BASIC (MBASIC) is one of the leading applications.
IBM PC and compatibles
When IBM is designing an IBM PC, they follow the current home computer paradigm that wants to have an integrated BASIC. They are sourced from Microsoft - IBM Cassette BASIC - but Microsoft also produces several other BASIC versions for DOS MS-DOS/PC including IBM Disk BASIC (BASIC D), IBM BASICA (BASIC A), GW-BASIC (compatible with BASICA) not needing IBM ROM) and QBasic, all usually bundled with the machine. In addition they produce Microsoft BASIC Compilers designated for professional programmers. Turbo Pascal-publisher Borland published Turbo Basic 1.0 in 1985 (the successor version is still marketed by the original author under the name PowerBASIC). Microsoft writes the Windowed AmigaBASIC supplied with version 1.1 of the pre-emptive Amiga multitasking GUI computer (late 1985/early 1986), even though the product has no Microsoft mark. This language introduces many extensions to the original home-computer BASIC, such as improved string manipulation and graphical support, access to file systems and additional data types. More important is the facility for structured programming, including additional control structures and appropriate subroutines to support local variables. However, in the second half of the 1980s, users increasingly used pre-made applications written by others, rather than learning their own programming, while professional programmers now have a variety of more advanced languages ââavailable on small computers. C and then C becomes the preferred language for professional "shrink wrap" application development.
Visual Basic
In 1991 Microsoft introduced Visual Basic, the evolutionary development of QuickBasic. These include constructs of languages ââsuch as block-structured control statements, parameter subroutines, and optional static typing, as well as object-oriented constructs from other languages ââsuch as "With" and "For Each". The language maintains some compatibility with its predecessor, such as the Dim keyword for declaration, "Gosub"/Return Statement, and optional line numbers that can be used to find errors. An important driver for Visual Basic development is as a new macro language for Microsoft Excel, a spreadsheet program. To the surprise of many at Microsoft who initially marketed it as a language for fans, it began to be widely used for special small business applications soon after the release of VB version 3.0, widely considered the first relatively stable version. While many advanced programmers are still deriding its use, VB meets the needs of small businesses efficiently where ease of development is more of a concern than processing speed.
At 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 "slow" language, as long as large amounts of data were excluded. Many small business owners find that they can make their useful little apps on a few nights to meet their own particular needs. Finally, during the long life of VB3, Visual Basic knowledge has become a marketable work skill. Microsoft also produced VBScript in 1996 and Visual Basic.NET in 2001. The latter essentially has the same power as C # and Java but with a syntax that reflects the original Basic language.
Versions and post-1990 dialects
Many other BASIC dialects have also appeared since 1990, including open source QB64 and FreeBASIC, inspired by QBasic, and RapidQue-Style RapidQ, Basic for Qt and Gambas. Modern commercial incarnations include PureBasic, PowerBASIC, Xojo, Monkey X and True BASIC (direct successor to Dartmouth BASIC from a company controlled by Kurtz). Some simple, web-based BASIC translators are also available, including BASIC and Microsoft Small Basic (education software). The BASIC version has appeared for use on smartphones and tablets. Apple App Store contains the implementation of BASIC programming languages ââsuch as smart BASIC, Basic !, HotPaw Basic, BASIC-II, techBASIC and others. Android devices display BASIC implementations such as RFO BASIC and Mintoris Basic. Applications for multiple mobile computers with proprietary OS (CipherLab) can be built with a programming environment based on BASIC. Applications for Nintendo 3DS and Nintendo DSi called Petit Computer allow for programming in slightly modified BASIC versions with support of the DS key. The 3DS sequel was released in Japan November 2014, in North America October 2015, and in Europe August 2017.
Calculator
BASIC variants are available in programmable graphics and calculators created by Texas Instruments, HP, Casio, and others.
Windows command line
QBasic, the free Microsoft QuickBASIC version for creating EXE files, is present in Windows NT and DOS-Windows 95 operating system streams and can be obtained for the latest releases like Windows 7 that do not have them. Prior to DOS 5, the basic translator was GW-Basic. QuickBasic is part of a series of three languages ââissued by Microsoft for home and office power users 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 disk, which will have a set of directories for the old and optional software; other missing commands like Exe2Bin and others are in this same directory.
More
Various Microsoft Office, Lotus, and Corel office suites and related products can be programmed with Visual Basic in one form or another, including LotusScript, which is very similar to VBA 6. Host Explorer terminal emulator uses WWB as the macro language; or more recently the programs and suites that are built into it can be programmed in an in-house Basic variant known as Hummingbird Basic. The VBScript variant is used to program web content, Outlook 97, Internet Explorer, and Windows Script Host. WSH also has Visual Basic for Applications (VBA) engine installed as the third of standard machines along with VBScript, JScript, and many proprietary or open source machines that can be installed like PerlScript, some Rexx based, Python, Ruby, Tcl, Delphi, XLNT, PHP, and more; meaning two Basic versions can be used in conjunction with other mentioned languages, as well as LotusScript, in WSF files, through component object models, and other WSH and VBA constructs. VBScript is one of the languages ââaccessible to 4Dos shells, 4NT, and Take Command enhanced. SaxBasic and WWB are also very similar to Visual Basic Basic implementation rows. 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, a vintage translator similar to BASICs in the 1970s, is available for GNU/Linux, Microsoft Windows and macOS.
Nostalgia
The placement of a BASIC interpreter on a personal computer is such that textbooks once include a simple "Try in Basics" exercise that encourages students to experiment with mathematical and computing concepts in a classroom or home computer. Popular computer magazines on that day usually include typographic programs.
Futurist and sci-fi writer David Brin mourns the loss of BASIC everywhere in article 2006 Salon as other people first used computers during this era. In turn, the article encourages Microsoft to develop and release Small Basic. Dartmouth held a 50th anniversary celebration for BASIC on May 1, 2014, as did other organizations; at least one VBA programmer organization hosted a 35th anniversary celebration in 1999.
Dartmouth College celebrates BASIC's 50th anniversary with the event day on April 30, 2014. A short documentary is produced for the event.
Syntax
Ordinary BASIC Keywords
- Data manipulation â â¬
-
LET
- assigns a value (which may result from an expression) to a variable. -
DATA
- keeps a list of values ââspecified in sequence using the READ command.
- Program flow control
-
IF... THEN... ELSE
- used to make comparisons or make decisions. -
FOR... FOR... {STEP}... NEXT
- repeat one piece of code several times. Variables that act as counters are available in the loop. -
WHILE... WEND
andREPEAT... UNTIL
- repeat one part of the code while the specified condition is correct. This condition can be evaluated before each loop iteration, or after. -
DO... LOOP {WHILE}
or {UNTIL
} - repeat the Forever or Temporary/Code portion until the condition specified is correct. This condition can be evaluated before each loop iteration, or after. -
GOTO
- jump to the numbered or labeled row in the program. -
GOSUB
- jumps to a numbered or labeled row, executes the code it finds there until it reaches Command RETURN, where it jumps back to the operator after GOSUB - after colon, or in the next row. This is used to implement subroutines. -
ACTIVE... GOTO/GOSUB
- choose a place to jump based on specified conditions. See Switch statement for other forms. -
DEF FN
- a pair of keywords introduced in the early 1960s to define a function. The original BASIC function is modeled on the single-line function of FORTRAN. The BASIC function is an expression with variable arguments, rather than subroutines, with the syntax in theDEF FND (x) = x * x
model at the start of the program. The function name is initially limited to one letter FN.
- Input and output
-
LIST
- shows all the code you entered. -
PRINT
- displays a message on the screen or other output device. -
INPUT
- asks the user to enter a variable value. The statement may include a prompt message. -
TAB
orAT
: set the position where the next character will be displayed on the screen or printed on paper.
- List of functions
-
ABS
- Absolute value -
ATN
- Striking values ââ(results in radians) -
COS
- The value of Kosinus (argument in radians) -
EXP
- Exponential value -
INT
- Integer values ââ -
LOG
- Natural Logarithmic Value -
RND
- Random value -
SIN
- Sine value (argument in radians) -
SQR
- Squares root value -
TAN
- Tangent value (argument in radians)
- Miscellaneous
-
REM
- save the programmer's comment or REMark; often used to title the program and to help identify the purpose of a particular piece of code. -
USR
- transferring program control to the machine language subroutine, usually included as an alphanumeric string or in the DATA statement list. -
TRON
- turns on the display of each line number when it is executed ("TRACE ON"). This is useful for debugging or correcting problems in the program. -
TROFF
- turn off the display line number. -
ASM
- some compilers like Freebasic, Purebasic, and Powerbasic also support inline assembly language, allowing programmers to intermix high-level and low-level code, usually beginning with "ASM" or "!" statement.
Data types and variables â ⬠<â â¬
The minimal version of BASIC has only integer variables and one or two letter variable names, which minimizes limited and expensive memory requirements (RAM). The more powerful versions have floating-point arithmetic, and variables can be labeled with names of six or more characters long. There are some problems and limitations in the initial implementation; for example, Applesoft allows variable names to be a few characters, but only the first two are significant, so it may accidentally write programs with "LOSS" and "LOAN" variables, which will be treated as the same; assigning a value to "LOAN" will secretly overwrite the value referred to as "LOSS". Keywords can not be used in variables in many early BASICS; "SCORE" will be interpreted as "SC" OR "E", where OR is the keyword. String variables are typically distinguished in many microcomputer dialects by having $ suffixed for their names, and the values ââare often identified as strings with limited by "double quotes". Array in BASIC can contain integer, floating point or string variable.
Multiple matrix dialects supported by BASIC and matrix operations, are useful for the solution of a set of simultaneous linear algebraic equations. These dialects will directly support matrix operations such as assignment, addition, multiplication (compatible matrix type), and evaluation of determinants. Many BASIC microcomputers do not support this data type; matrix operations are still possible, but must be programmed explicitly on the array elements.
Example
Unstructured BASE
The original Dartmouth Basic is unusual in having matrix keywords, MAT. Although dropped by most microprocessor derivatives is then used in this example from the 1968 manual that the average number is entered:
New BASIC programmers on home computers may start with a simple program, perhaps using a PRINT language statement to display a message on the screen; well-known and often replicated examples are world programs Hello Kernighan and Ritchie:
An infinite loop can be used to fill the screen with messages.
Most of the first generation BASIC versions like 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:
The resulting dialog may resemble:
What's your name: Mike Hi Mike How many stars do you want: 7 ******* Do you want more stars? Yes How many stars do you want: 3 *** Do you want more stars? no Goodbye, Mike
Structured BASIC
Second-generation BASICS (for example, VAX Basic, SuperBASIC, True BASIC, QuickBASIC, BBC BASIC, Pick BASIC, PowerBASIC, and practically COMAL) introduce a number of features into the language, especially related to structured programming and procedure-oriented. Typically, line numbering is removed from the language and replaced with labels (for GOTO) and procedures to encourage easier and more flexible design. In addition to keywords and structures to support repetition, selection and procedures with local variables are introduced.
The following example in QuickBASIC:
Object-oriented basics
Third-generation BASIC dialects such as Visual Basic, Xojo, StarOffice Basic and BlitzMax introduce features to support object-oriented and event-driven programming paradigms. Most built-in procedures and functions are now represented as methods of standard objects rather than operators . Also, Operating Systems are becoming more and more available for BASIC languages.
The following example in Visual Basic.NET:
Standard
- ANSI/ISO/IEC Standard for Minimum BASIC:
- ANSI X3.60-1978 "For minimal BASIC"
- ISO/IEC 6373: 1984 "Data Processing - Programming Language - Minimal BASIS"
- ECMA-55 Minimum BASIC (withdrawn, similar to ANSI X3.60-1978)
- ANSI/ISO/IEC Standards for BASIC Complete:
- ANSI X3.113-1987 "BASIC Full Programming Language"
- INCITS/ISO/IEC 10279-1991 (R2005) "Information Technology - Programming Language - Complete BASIC"
- ANSI/ISO/IEC Addendum Defines Module:
- ANSI X3.113 Interpretation-1992 "Basic Technical Information Bulletin # 1 Interpretation of ANSI 03.113-1987"
- ISO/IEC 10279: 1991/Amd 1: 1994 "Single Character Input and Improvement Module"
- ECMA-116 BASE (drawn, similar to ANSI X3.113-1987)
See also
- List of BASIC dialects
- List of Computers With BASIC On-Board
Note
References
General reference
External links
- BASIC on Curlie (based on DMOZ)
- "BASICÃ, - Beginners All-purpose Symbolic Instruction Code". Computer Language Encyclopedia . Murdoch University.
- Basic Birth on YouTube
Source of the article : Wikipedia