Jump to content

BASIC Implementations: Difference between revisions

From EDM2
No edit summary
Ak120 (talk | contribs)
 
(49 intermediate revisions by 2 users not shown)
Line 1: Line 1:
A subset of [[FORTRAN]] originally developed by John G. Kemény and Thomas E. Kurtz in 1964 to offer an easier programming language for beginners for the Dartmouth University timesharing system. Basic was easy to implement and could reside in a fairly small amount of memory which made it popular with the first generation of microcomputers in the 1970's and it remained the most popular programming language on personal computers until the 1990's.
==DOS Implementations==
 
===Interpreter===
Like the FORTRAN language it is based on Basic is unstructured and therefore there is a tendency for programmers to write [[spaghetti code]] when developing in Basic, and with the variants used in microcomputers, known collectively as "Street Basic", the tendency was even greater. Awareness of this shortcoming increased in the early 80's as Basic started to come under threat in educational institutions on one hand from languages designed from ground up to teach structured programming like [[COMAL]] and on the other hand from inexpensive implementations of [[Pascal]]. Many Basic developers responded by making their variations of the language increasingly structured to a point where some of them resemble Pascal in all aspects except syntax.
* American Planning Corp. MEGABASIC
 
* [http://www.bbcbasic.co.uk/bbcbasic.html BBC Basic] - Discontinued but supplied for free with the Windows version of the product.
In 1990 more people knew how to program in Basic than in all other programming languages combined, however the language started to loose its popularity when GUI's became more popular but most Basic implementation had limited support for the programming models needed.
* [[Bywater Basic]] - Open source
 
*Canon Basic - Discontinued - A scripting variant of this language is still used for [http://chdk.wikia.com/wiki/Canon_Basic embedded programming by Canon].  
==A list of OS/2 implementations of Basic==
* [[GW-BASIC]] - developed by Microsoft for DOS OEM
*[[Bywater Basic]] - Current - Command line only.
* [[IBM PC BASIC]] - developed by Microsoft for IBM PC
*[[CA Realizer]] - Discontinued. Versions 1 & 2 offered OS/2 support
*Mallard BASIC PC - developed by Locomotive Software Ltd.
*[[GFA Basic]] - Discontinued
*MICRO-BASIC - developed by Dave Dunfield
*[[IBM VisualAge for Basic]] - Discontinued
*[http://sourceforge.net/projects/napoleonbrandy/ Napoleon Brandy Basic] - Open Source
*[[Liberty BASIC]] - Discontinued
*Personal BASIC - Aka Digital Research Personal Basic or Metacomco Basic - compatible with CP/M MBASIC
*[[Microsoft Visual Basic]] - Discontinued
* [[QBasic]] - introduced with MS-DOS 5, also included in OS/2 2.0 and later versions.
*[[Omni Basic]] - Discontinued
* RM-BASIC - Ryan McFarland
*[[True Basic]] - No longer developed but available for sale at a discounted price. Versions up to 5.5 supported OS/2
* [[Watcom BASIC]]


==A list of DOS implementations of Basic==
===Compiler===
* [http://www.bbcbasic.co.uk/bbcbasic.html BBC Basic] - Discontinued but supplied for free with the Windows version of the product.
*Better BASIC - Summit Software Technology
* [[Bywater Basic]] - Current.
*[[CBASIC]] - Distributed by DRI
* [[Canon Basic]] - Discontinued - A scripting variant of this language is still used for embedded programming by Canon.
*FranzBasic
* [[CBasic]] - Discontinued - First Symantec product - Distributed by DRI
*[[GFA Basic]]
* [[GFA Basic]] - Discontinued - Free Download
*[[Microsoft Basic Professional]]
* [[Microsoft Visual Basic]] - Discontinued. Version 1 offered DOS support.
*[[Microsoft QuickBasic]]
* [[MWBasic]] - Aka MB86 - Discontinued
*[[Microsoft Visual Basic]] - Version 1 offered DOS support.
* [http://sourceforge.net/projects/napoleonbrandy/ Napoleon Brandy Basic] - Current - Open Source
*MTBASIC (Softaid)
* [[Omni Basic]] - Discontinued
*MWBasic - Aka MB86
* [[QBasic]] - Comes included with the DOS subsystem all versions of eComStation and in OS/2 versions 2.0 and higher.
*[[Omni Basic]]
* [[QuickBasic]] - Discontinued
*[[PowerBASIC]]
* [[True Basic]] - Discontinued. Versions up to 4.01 supported DOS.
*Sparry Basic
*SuperSoft BASIC Compiler
*Borland [[Turbo Basic]]
*[[True Basic]] - Versions up to 4.01 supported DOS.
''Shareware''
*ApBasic
*ASIC
''Open Source''
*FreeBasic


==A list of Basic implementations that run under Win-OS/2==
===Win-OS/2 Implementations===
* [[CA Realizer]] - Discontinued. Versions 1 to 3 offer WinOS/2 support.
*[[CA Realizer]] - Versions 1 to 3 offer Win-OS/2 support.
* [[GFA Basic]] - Discontinued - Free Download - Limited support available from a third party.
*[[GFA Basic]] - Discontinued - Free Download - Limited support available from a third party.
* [[Liberty BASIC]] - Discontinued - Last version that works under WinOS/2 is 2.02
*[[Liberty BASIC]] - Discontinued - Last version that works under Win-OS/2 is 2.02
* [[Microsoft Visual Basic]] - Discontinued. Versions 1 to 4 offer WinOS/2 support.
* [[Microsoft Basic Professional]] - Commercial - Cross development from DOS or OS/2 only.
* [[True Basic]] - Discontinued. Versions up to 5.3 supported WinOS/2
* [[Microsoft Visual Basic]] - Versions 1 to 4 offer Win-OS/2 support.
* [[True Basic]] - Versions up to 5.3 supported Win-OS/2


==A list of Basic language implementations in Java==
==Java implementations==
*[http://www.mcmanis.com/chuck/java/cocoa/ Cocoa]
*[http://www.mcmanis.com/chuck/java/cocoa/ Cocoa]
*HotTEA - Discontinued
*HotTEA
*Instant Basic for Java - Discontinued
*Instant Basic for Java
*[http://journal.stuffwithstuff.com/2010/07/18/jasic-a-complete-interpreter-in-one-java-file/ Jasic]
*[http://journal.stuffwithstuff.com/2010/07/18/jasic-a-complete-interpreter-in-one-java-file/ Jasic]


==A list of Basic language implementations in JavaScript==
==JavaScript implementations==
*[http://stevehanov.ca/blog/index.php?id=92 qb.js] - Partially [[QBasic]] compatible, can be run inside a web browser or by using the JavaScript Desktop Enabler.
*[http://stevehanov.ca/blog/index.php?id=92 qb.js] - Partially [[QBasic]] compatible, can be run inside a web browser or by using the JavaScript Desktop Enabler.


==Links==
[[Category:Programming Languages]]
====USENET====
* [news:comp.lang.basic.misc comp.lang.basic.misc] - Still alive (mostly) - Go to the [https://groups.google.com/forum/#!forum/comp.lang.basic.misc Google groups version] if you are newsgroup challenged.
 
 
==Standards==
* [http://www.ecma-international.org/publications/files/ECMA-ST-WITHDRAWN/ECMA-55,%201st%20Edition,%20January%201978.pdf ECMA-55 MINIMAL Basic Standard in PDF format] - Now withdrawn by ECMA but used as a reference in some modern "Street Basic" implementations
:Also known as '''ISO 6373''' or ISO 6373:1984 Data processing -- Programming languages -- Minimal BASIC. - The standard originated at ECMA but copies of it are still valid standards in some countries for instance as '''ANSI X3.60-1978 minimal BASIC''' in the USA, as Australian Standard '''AS 2797-1985 Programming language - Minimal BASIC'''
 
* [http://www.ecma-international.org/publications/files/ECMA-ST-WITHDRAWN/ECMA-116,%201st%20edition,%20June%201986.pdf ECMA-116 ECMA Basic-1, ECMA Basic-2 and ECMA Graphics Module Standards in PDF format] - Now withdrawn but used as a reference for a number of modern Basic implementations.
:Like the earlier standard this originated at EMCA and while they have withdrawn it a number of international and local standard organisations still have it as current standard including '''ANSI X3.113-1987 "Programming Languages Full BASIC"''' in the USA and the interntaional '''INCITS/ISO/IEC 10279-1991 (R2005) "Information Technology - Programming Languages - Full BASIC"'''.
 
* ANSI X3.113 Interpretations-1992 "BASIC Technical Information Bulletin # 1 Interpretations of ANSI 03.113-1987"
:USA only addendum to the ECMA-116 standard.
 
* ISO/IEC 10279:1991/ Amd 1:1994 "Modules and Single Character Input Enhancement"
:Small addendum to the original ECMA-116/ISO10279 standard, no downloadable version available.
 
 
[[Category:Programming Languages]][[Category:Basic]]

Latest revision as of 15:08, 14 October 2023

DOS Implementations

Interpreter

  • American Planning Corp. MEGABASIC
  • BBC Basic - Discontinued but supplied for free with the Windows version of the product.
  • Bywater Basic - Open source
  • Canon Basic - Discontinued - A scripting variant of this language is still used for embedded programming by Canon.
  • GW-BASIC - developed by Microsoft for DOS OEM
  • IBM PC BASIC - developed by Microsoft for IBM PC
  • Mallard BASIC PC - developed by Locomotive Software Ltd.
  • MICRO-BASIC - developed by Dave Dunfield
  • Napoleon Brandy Basic - Open Source
  • Personal BASIC - Aka Digital Research Personal Basic or Metacomco Basic - compatible with CP/M MBASIC
  • QBasic - introduced with MS-DOS 5, also included in OS/2 2.0 and later versions.
  • RM-BASIC - Ryan McFarland
  • Watcom BASIC

Compiler

Shareware

  • ApBasic
  • ASIC

Open Source

  • FreeBasic

Win-OS/2 Implementations

Java implementations

JavaScript implementations

  • qb.js - Partially QBasic compatible, can be run inside a web browser or by using the JavaScript Desktop Enabler.