CINXE.COM
Wang BASIC - Wikipedia
<!DOCTYPE html> <html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-toc-available" lang="en" dir="ltr"> <head> <meta charset="UTF-8"> <title>Wang BASIC - Wikipedia</title> <script>(function(){var className="client-js vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-toc-available";var cookie=document.cookie.match(/(?:^|; )enwikimwclientpreferences=([^;]+)/);if(cookie){cookie[1].split('%2C').forEach(function(pref){className=className.replace(new RegExp('(^| )'+pref.replace(/-clientpref-\w+$|[^\w-]+/g,'')+'-clientpref-\\w+( |$)'),'$1'+pref+'$2');});}document.documentElement.className=className;}());RLCONF={"wgBreakFrames":false,"wgSeparatorTransformTable":["",""],"wgDigitTransformTable":["",""],"wgDefaultDateFormat":"dmy", "wgMonthNames":["","January","February","March","April","May","June","July","August","September","October","November","December"],"wgRequestId":"6a7eacfa-c804-483f-9ff3-2e4440505952","wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"Wang_BASIC","wgTitle":"Wang BASIC","wgCurRevisionId":1249960491,"wgRevisionId":1249960491,"wgArticleId":66066959,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":["Articles lacking reliable references from December 2020","All articles lacking reliable references","BASIC interpreters","BASIC programming language family","Wang Laboratories"],"wgPageViewLanguage":"en","wgPageContentLanguage":"en","wgPageContentModel":"wikitext","wgRelevantPageName":"Wang_BASIC","wgRelevantArticleId":66066959,"wgIsProbablyEditable":true,"wgRelevantPageIsProbablyEditable":true,"wgRestrictionEdit":[],"wgRestrictionMove":[],"wgNoticeProject":"wikipedia", "wgCiteReferencePreviewsActive":false,"wgFlaggedRevsParams":{"tags":{"status":{"levels":1}}},"wgMediaViewerOnClick":true,"wgMediaViewerEnabledByDefault":true,"wgPopupsFlags":0,"wgVisualEditor":{"pageLanguageCode":"en","pageLanguageDir":"ltr","pageVariantFallbacks":"en"},"wgMFDisplayWikibaseDescriptions":{"search":true,"watchlist":true,"tagline":false,"nearby":true},"wgWMESchemaEditAttemptStepOversample":false,"wgWMEPageLength":30000,"wgRelatedArticlesCompat":[],"wgCentralAuthMobileDomain":false,"wgEditSubmitButtonLabelPublish":true,"wgULSPosition":"interlanguage","wgULSisCompactLinksEnabled":false,"wgVector2022LanguageInHeader":true,"wgULSisLanguageSelectorEmpty":false,"wgWikibaseItemId":"Q104880026","wgCheckUserClientHintsHeadersJsApi":["architecture","bitness","brands","fullVersionList","mobile","model","platform","platformVersion"],"GEHomepageSuggestedEditsEnableTopics":true,"wgGETopicsMatchModeEnabled":false,"wgGEStructuredTaskRejectionReasonTextInputEnabled":false, "wgGELevelingUpEnabledForUser":false};RLSTATE={"ext.globalCssJs.user.styles":"ready","site.styles":"ready","user.styles":"ready","ext.globalCssJs.user":"ready","user":"ready","user.options":"loading","ext.cite.styles":"ready","ext.pygments":"ready","skins.vector.search.codex.styles":"ready","skins.vector.styles":"ready","skins.vector.icons":"ready","jquery.makeCollapsible.styles":"ready","ext.wikimediamessages.styles":"ready","ext.visualEditor.desktopArticleTarget.noscript":"ready","ext.uls.interlanguage":"ready","wikibase.client.init":"ready","ext.wikimediaBadges":"ready"};RLPAGEMODULES=["ext.cite.ux-enhancements","ext.pygments.view","ext.scribunto.logs","site","mediawiki.page.ready","jquery.makeCollapsible","mediawiki.toc","skins.vector.js","ext.centralNotice.geoIP","ext.centralNotice.startUp","ext.gadget.ReferenceTooltips","ext.gadget.switcher","ext.urlShortener.toolbar","ext.centralauth.centralautologin","mmv.bootstrap","ext.popups","ext.visualEditor.desktopArticleTarget.init", "ext.visualEditor.targetLoader","ext.echo.centralauth","ext.eventLogging","ext.wikimediaEvents","ext.navigationTiming","ext.uls.interface","ext.cx.eventlogging.campaigns","ext.cx.uls.quick.actions","wikibase.client.vector-2022","ext.checkUser.clientHints","ext.growthExperiments.SuggestedEditSession","wikibase.sidebar.tracking"];</script> <script>(RLQ=window.RLQ||[]).push(function(){mw.loader.impl(function(){return["user.options@12s5i",function($,jQuery,require,module){mw.user.tokens.set({"patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"}); }];});});</script> <link rel="stylesheet" href="/w/load.php?lang=en&modules=ext.cite.styles%7Cext.pygments%2CwikimediaBadges%7Cext.uls.interlanguage%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cjquery.makeCollapsible.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles%7Cwikibase.client.init&only=styles&skin=vector-2022"> <script async="" src="/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022"></script> <meta name="ResourceLoaderDynamicStyles" content=""> <link rel="stylesheet" href="/w/load.php?lang=en&modules=site.styles&only=styles&skin=vector-2022"> <meta name="generator" content="MediaWiki 1.44.0-wmf.3"> <meta name="referrer" content="origin"> <meta name="referrer" content="origin-when-cross-origin"> <meta name="robots" content="max-image-preview:standard"> <meta name="format-detection" content="telephone=no"> <meta name="viewport" content="width=1120"> <meta property="og:title" content="Wang BASIC - Wikipedia"> <meta property="og:type" content="website"> <link rel="preconnect" href="//upload.wikimedia.org"> <link rel="alternate" media="only screen and (max-width: 640px)" href="//en.m.wikipedia.org/wiki/Wang_BASIC"> <link rel="alternate" type="application/x-wiki" title="Edit this page" href="/w/index.php?title=Wang_BASIC&action=edit"> <link rel="apple-touch-icon" href="/static/apple-touch/wikipedia.png"> <link rel="icon" href="/static/favicon/wikipedia.ico"> <link rel="search" type="application/opensearchdescription+xml" href="/w/rest.php/v1/search" title="Wikipedia (en)"> <link rel="EditURI" type="application/rsd+xml" href="//en.wikipedia.org/w/api.php?action=rsd"> <link rel="canonical" href="https://en.wikipedia.org/wiki/Wang_BASIC"> <link rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en"> <link rel="alternate" type="application/atom+xml" title="Wikipedia Atom feed" href="/w/index.php?title=Special:RecentChanges&feed=atom"> <link rel="dns-prefetch" href="//meta.wikimedia.org" /> <link rel="dns-prefetch" href="//login.wikimedia.org"> </head> <body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject mw-editable page-Wang_BASIC rootpage-Wang_BASIC skin-vector-2022 action-view"><a class="mw-jump-link" href="#bodyContent">Jump to content</a> <div class="vector-header-container"> <header class="vector-header mw-header"> <div class="vector-header-start"> <nav class="vector-main-menu-landmark" aria-label="Site"> <div id="vector-main-menu-dropdown" class="vector-dropdown vector-main-menu-dropdown vector-button-flush-left vector-button-flush-right" > <input type="checkbox" id="vector-main-menu-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-main-menu-dropdown" class="vector-dropdown-checkbox " aria-label="Main menu" > <label id="vector-main-menu-dropdown-label" for="vector-main-menu-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-menu mw-ui-icon-wikimedia-menu"></span> <span class="vector-dropdown-label-text">Main menu</span> </label> <div class="vector-dropdown-content"> <div id="vector-main-menu-unpinned-container" class="vector-unpinned-container"> <div id="vector-main-menu" class="vector-main-menu vector-pinnable-element"> <div class="vector-pinnable-header vector-main-menu-pinnable-header vector-pinnable-header-unpinned" data-feature-name="main-menu-pinned" data-pinnable-element-id="vector-main-menu" data-pinned-container-id="vector-main-menu-pinned-container" data-unpinned-container-id="vector-main-menu-unpinned-container" > <div class="vector-pinnable-header-label">Main menu</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-main-menu.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-main-menu.unpin">hide</button> </div> <div id="p-navigation" class="vector-menu mw-portlet mw-portlet-navigation" > <div class="vector-menu-heading"> Navigation </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-mainpage-description" class="mw-list-item"><a href="/wiki/Main_Page" title="Visit the main page [z]" accesskey="z"><span>Main page</span></a></li><li id="n-contents" class="mw-list-item"><a href="/wiki/Wikipedia:Contents" title="Guides to browsing Wikipedia"><span>Contents</span></a></li><li id="n-currentevents" class="mw-list-item"><a href="/wiki/Portal:Current_events" title="Articles related to current events"><span>Current events</span></a></li><li id="n-randompage" class="mw-list-item"><a href="/wiki/Special:Random" title="Visit a randomly selected article [x]" accesskey="x"><span>Random article</span></a></li><li id="n-aboutsite" class="mw-list-item"><a href="/wiki/Wikipedia:About" title="Learn about Wikipedia and how it works"><span>About Wikipedia</span></a></li><li id="n-contactpage" class="mw-list-item"><a href="//en.wikipedia.org/wiki/Wikipedia:Contact_us" title="How to contact Wikipedia"><span>Contact us</span></a></li> </ul> </div> </div> <div id="p-interaction" class="vector-menu mw-portlet mw-portlet-interaction" > <div class="vector-menu-heading"> Contribute </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-help" class="mw-list-item"><a href="/wiki/Help:Contents" title="Guidance on how to use and edit Wikipedia"><span>Help</span></a></li><li id="n-introduction" class="mw-list-item"><a href="/wiki/Help:Introduction" title="Learn how to edit Wikipedia"><span>Learn to edit</span></a></li><li id="n-portal" class="mw-list-item"><a href="/wiki/Wikipedia:Community_portal" title="The hub for editors"><span>Community portal</span></a></li><li id="n-recentchanges" class="mw-list-item"><a href="/wiki/Special:RecentChanges" title="A list of recent changes to Wikipedia [r]" accesskey="r"><span>Recent changes</span></a></li><li id="n-upload" class="mw-list-item"><a href="/wiki/Wikipedia:File_upload_wizard" title="Add images or other media for use on Wikipedia"><span>Upload file</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> <a href="/wiki/Main_Page" class="mw-logo"> <img class="mw-logo-icon" src="/static/images/icons/wikipedia.png" alt="" aria-hidden="true" height="50" width="50"> <span class="mw-logo-container skin-invert"> <img class="mw-logo-wordmark" alt="Wikipedia" src="/static/images/mobile/copyright/wikipedia-wordmark-en.svg" style="width: 7.5em; height: 1.125em;"> <img class="mw-logo-tagline" alt="The Free Encyclopedia" src="/static/images/mobile/copyright/wikipedia-tagline-en.svg" width="117" height="13" style="width: 7.3125em; height: 0.8125em;"> </span> </a> </div> <div class="vector-header-end"> <div id="p-search" role="search" class="vector-search-box-vue vector-search-box-collapses vector-search-box-show-thumbnail vector-search-box-auto-expand-width vector-search-box"> <a href="/wiki/Special:Search" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only search-toggle" title="Search Wikipedia [f]" accesskey="f"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span> <span>Search</span> </a> <div class="vector-typeahead-search-container"> <div class="cdx-typeahead-search cdx-typeahead-search--show-thumbnail cdx-typeahead-search--auto-expand-width"> <form action="/w/index.php" id="searchform" class="cdx-search-input cdx-search-input--has-end-button"> <div id="simpleSearch" class="cdx-search-input__input-wrapper" data-search-loc="header-moved"> <div class="cdx-text-input cdx-text-input--has-start-icon"> <input class="cdx-text-input__input" type="search" name="search" placeholder="Search Wikipedia" aria-label="Search Wikipedia" autocapitalize="sentences" title="Search Wikipedia [f]" accesskey="f" id="searchInput" > <span class="cdx-text-input__icon cdx-text-input__start-icon"></span> </div> <input type="hidden" name="title" value="Special:Search"> </div> <button class="cdx-button cdx-search-input__end-button">Search</button> </form> </div> </div> </div> <nav class="vector-user-links vector-user-links-wide" aria-label="Personal tools"> <div class="vector-user-links-main"> <div id="p-vector-user-menu-preferences" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-userpage" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <nav class="vector-appearance-landmark" aria-label="Appearance"> <div id="vector-appearance-dropdown" class="vector-dropdown " title="Change the appearance of the page's font size, width, and color" > <input type="checkbox" id="vector-appearance-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-appearance-dropdown" class="vector-dropdown-checkbox " aria-label="Appearance" > <label id="vector-appearance-dropdown-label" for="vector-appearance-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-appearance mw-ui-icon-wikimedia-appearance"></span> <span class="vector-dropdown-label-text">Appearance</span> </label> <div class="vector-dropdown-content"> <div id="vector-appearance-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <div id="p-vector-user-menu-notifications" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-overflow" class="vector-menu mw-portlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="https://donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&utm_medium=sidebar&utm_campaign=C13_en.wikipedia.org&uselang=en" class=""><span>Donate</span></a> </li> <li id="pt-createaccount-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Special:CreateAccount&returnto=Wang+BASIC" title="You are encouraged to create an account and log in; however, it is not mandatory" class=""><span>Create account</span></a> </li> <li id="pt-login-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Special:UserLogin&returnto=Wang+BASIC" title="You're encouraged to log in; however, it's not mandatory. [o]" accesskey="o" class=""><span>Log in</span></a> </li> </ul> </div> </div> </div> <div id="vector-user-links-dropdown" class="vector-dropdown vector-user-menu vector-button-flush-right vector-user-menu-logged-out" title="Log in and more options" > <input type="checkbox" id="vector-user-links-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-user-links-dropdown" class="vector-dropdown-checkbox " aria-label="Personal tools" > <label id="vector-user-links-dropdown-label" for="vector-user-links-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-ellipsis mw-ui-icon-wikimedia-ellipsis"></span> <span class="vector-dropdown-label-text">Personal tools</span> </label> <div class="vector-dropdown-content"> <div id="p-personal" class="vector-menu mw-portlet mw-portlet-personal user-links-collapsible-item" title="User menu" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport" class="user-links-collapsible-item mw-list-item"><a href="https://donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&utm_medium=sidebar&utm_campaign=C13_en.wikipedia.org&uselang=en"><span>Donate</span></a></li><li id="pt-createaccount" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Special:CreateAccount&returnto=Wang+BASIC" title="You are encouraged to create an account and log in; however, it is not mandatory"><span class="vector-icon mw-ui-icon-userAdd mw-ui-icon-wikimedia-userAdd"></span> <span>Create account</span></a></li><li id="pt-login" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Special:UserLogin&returnto=Wang+BASIC" title="You're encouraged to log in; however, it's not mandatory. [o]" accesskey="o"><span class="vector-icon mw-ui-icon-logIn mw-ui-icon-wikimedia-logIn"></span> <span>Log in</span></a></li> </ul> </div> </div> <div id="p-user-menu-anon-editor" class="vector-menu mw-portlet mw-portlet-user-menu-anon-editor" > <div class="vector-menu-heading"> Pages for logged out editors <a href="/wiki/Help:Introduction" aria-label="Learn more about editing"><span>learn more</span></a> </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-anoncontribs" class="mw-list-item"><a href="/wiki/Special:MyContributions" title="A list of edits made from this IP address [y]" accesskey="y"><span>Contributions</span></a></li><li id="pt-anontalk" class="mw-list-item"><a href="/wiki/Special:MyTalk" title="Discussion about edits from this IP address [n]" accesskey="n"><span>Talk</span></a></li> </ul> </div> </div> </div> </div> </nav> </div> </header> </div> <div class="mw-page-container"> <div class="mw-page-container-inner"> <div class="vector-sitenotice-container"> <div id="siteNotice"><!-- CentralNotice --></div> </div> <div class="vector-column-start"> <div class="vector-main-menu-container"> <div id="mw-navigation"> <nav id="mw-panel" class="vector-main-menu-landmark" aria-label="Site"> <div id="vector-main-menu-pinned-container" class="vector-pinned-container"> </div> </nav> </div> </div> <div class="vector-sticky-pinned-container"> <nav id="mw-panel-toc" aria-label="Contents" data-event-name="ui.sidebar-toc" class="mw-table-of-contents-container vector-toc-landmark"> <div id="vector-toc-pinned-container" class="vector-pinned-container"> <div id="vector-toc" class="vector-toc vector-pinnable-element"> <div class="vector-pinnable-header vector-toc-pinnable-header vector-pinnable-header-pinned" data-feature-name="toc-pinned" data-pinnable-element-id="vector-toc" > <h2 class="vector-pinnable-header-label">Contents</h2> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-toc.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-toc.unpin">hide</button> </div> <ul class="vector-toc-contents" id="mw-panel-toc-list"> <li id="toc-mw-content-text" class="vector-toc-list-item vector-toc-level-1"> <a href="#" class="vector-toc-link"> <div class="vector-toc-text">(Top)</div> </a> </li> <li id="toc-Description" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Description"> <div class="vector-toc-text"> <span class="vector-toc-numb">1</span> <span>Description</span> </div> </a> <button aria-controls="toc-Description-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Description subsection</span> </button> <ul id="toc-Description-sublist" class="vector-toc-list"> <li id="toc-Program_editing_and_execution" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Program_editing_and_execution"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.1</span> <span>Program editing and execution</span> </div> </a> <ul id="toc-Program_editing_and_execution-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Syntax" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Syntax"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.2</span> <span>Syntax</span> </div> </a> <ul id="toc-Syntax-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Math_and_logic" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Math_and_logic"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.3</span> <span>Math and logic</span> </div> </a> <ul id="toc-Math_and_logic-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Strings" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Strings"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.4</span> <span>Strings</span> </div> </a> <ul id="toc-Strings-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Data_and_I/O" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Data_and_I/O"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.5</span> <span>Data and I/O</span> </div> </a> <ul id="toc-Data_and_I/O-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Chaining_programs" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Chaining_programs"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.6</span> <span>Chaining programs</span> </div> </a> <ul id="toc-Chaining_programs-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Variations_on_2200_BASIC" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Variations_on_2200_BASIC"> <div class="vector-toc-text"> <span class="vector-toc-numb">2</span> <span>Variations on 2200 BASIC</span> </div> </a> <button aria-controls="toc-Variations_on_2200_BASIC-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Variations on 2200 BASIC subsection</span> </button> <ul id="toc-Variations_on_2200_BASIC-sublist" class="vector-toc-list"> <li id="toc-2200B" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#2200B"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.1</span> <span>2200B</span> </div> </a> <ul id="toc-2200B-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-2200C" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#2200C"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.2</span> <span>2200C</span> </div> </a> <ul id="toc-2200C-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-2200T" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#2200T"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.3</span> <span>2200T</span> </div> </a> <ul id="toc-2200T-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-BASIC-2" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#BASIC-2"> <div class="vector-toc-text"> <span class="vector-toc-numb">3</span> <span>BASIC-2</span> </div> </a> <ul id="toc-BASIC-2-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-BASIC-3" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#BASIC-3"> <div class="vector-toc-text"> <span class="vector-toc-numb">4</span> <span>BASIC-3</span> </div> </a> <ul id="toc-BASIC-3-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Notes" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Notes"> <div class="vector-toc-text"> <span class="vector-toc-numb">5</span> <span>Notes</span> </div> </a> <ul id="toc-Notes-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-References" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#References"> <div class="vector-toc-text"> <span class="vector-toc-numb">6</span> <span>References</span> </div> </a> <button aria-controls="toc-References-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle References subsection</span> </button> <ul id="toc-References-sublist" class="vector-toc-list"> <li id="toc-Citations" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Citations"> <div class="vector-toc-text"> <span class="vector-toc-numb">6.1</span> <span>Citations</span> </div> </a> <ul id="toc-Citations-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Bibliography" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Bibliography"> <div class="vector-toc-text"> <span class="vector-toc-numb">6.2</span> <span>Bibliography</span> </div> </a> <ul id="toc-Bibliography-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> </ul> </div> </div> </nav> </div> </div> <div class="mw-content-container"> <main id="content" class="mw-body"> <header class="mw-body-header vector-page-titlebar"> <nav aria-label="Contents" class="vector-toc-landmark"> <div id="vector-page-titlebar-toc" class="vector-dropdown vector-page-titlebar-toc vector-button-flush-left" > <input type="checkbox" id="vector-page-titlebar-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-titlebar-toc" class="vector-dropdown-checkbox " aria-label="Toggle the table of contents" > <label id="vector-page-titlebar-toc-label" for="vector-page-titlebar-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-listBullet mw-ui-icon-wikimedia-listBullet"></span> <span class="vector-dropdown-label-text">Toggle the table of contents</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-titlebar-toc-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">Wang BASIC</span></h1> <div id="p-lang-btn" class="vector-dropdown mw-portlet mw-portlet-lang" > <input type="checkbox" id="p-lang-btn-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-p-lang-btn" class="vector-dropdown-checkbox mw-interlanguage-selector" aria-label="This article exist only in this language. Add the article for other languages" > <label id="p-lang-btn-label" for="p-lang-btn-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--action-progressive mw-portlet-lang-heading-0" aria-hidden="true" ><span class="vector-icon mw-ui-icon-language-progressive mw-ui-icon-wikimedia-language-progressive"></span> <span class="vector-dropdown-label-text">Add languages</span> </label> <div class="vector-dropdown-content"> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> <div class="after-portlet after-portlet-lang"><span class="uls-after-portlet-link"></span><span class="wb-langlinks-add wb-langlinks-link"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q104880026#sitelinks-wikipedia" title="Add interlanguage links" class="wbc-editpage">Add links</a></span></div> </div> </div> </div> </header> <div class="vector-page-toolbar"> <div class="vector-page-toolbar-container"> <div id="left-navigation"> <nav aria-label="Namespaces"> <div id="p-associated-pages" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-associated-pages" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-nstab-main" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/Wang_BASIC" title="View the content page [c]" accesskey="c"><span>Article</span></a></li><li id="ca-talk" class="vector-tab-noicon mw-list-item"><a href="/wiki/Talk:Wang_BASIC" rel="discussion" title="Discuss improvements to the content page [t]" accesskey="t"><span>Talk</span></a></li> </ul> </div> </div> <div id="vector-variants-dropdown" class="vector-dropdown emptyPortlet" > <input type="checkbox" id="vector-variants-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-variants-dropdown" class="vector-dropdown-checkbox " aria-label="Change language variant" > <label id="vector-variants-dropdown-label" for="vector-variants-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">English</span> </label> <div class="vector-dropdown-content"> <div id="p-variants" class="vector-menu mw-portlet mw-portlet-variants emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> </div> </div> </nav> </div> <div id="right-navigation" class="vector-collapsible"> <nav aria-label="Views"> <div id="p-views" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-views" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-view" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/Wang_BASIC"><span>Read</span></a></li><li id="ca-edit" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=Wang_BASIC&action=edit" title="Edit this page [e]" accesskey="e"><span>Edit</span></a></li><li id="ca-history" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=Wang_BASIC&action=history" title="Past revisions of this page [h]" accesskey="h"><span>View history</span></a></li> </ul> </div> </div> </nav> <nav class="vector-page-tools-landmark" aria-label="Page tools"> <div id="vector-page-tools-dropdown" class="vector-dropdown vector-page-tools-dropdown" > <input type="checkbox" id="vector-page-tools-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-tools-dropdown" class="vector-dropdown-checkbox " aria-label="Tools" > <label id="vector-page-tools-dropdown-label" for="vector-page-tools-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">Tools</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-tools-unpinned-container" class="vector-unpinned-container"> <div id="vector-page-tools" class="vector-page-tools vector-pinnable-element"> <div class="vector-pinnable-header vector-page-tools-pinnable-header vector-pinnable-header-unpinned" data-feature-name="page-tools-pinned" data-pinnable-element-id="vector-page-tools" data-pinned-container-id="vector-page-tools-pinned-container" data-unpinned-container-id="vector-page-tools-unpinned-container" > <div class="vector-pinnable-header-label">Tools</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-page-tools.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-page-tools.unpin">hide</button> </div> <div id="p-cactions" class="vector-menu mw-portlet mw-portlet-cactions emptyPortlet vector-has-collapsible-items" title="More options" > <div class="vector-menu-heading"> Actions </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-more-view" class="selected vector-more-collapsible-item mw-list-item"><a href="/wiki/Wang_BASIC"><span>Read</span></a></li><li id="ca-more-edit" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=Wang_BASIC&action=edit" title="Edit this page [e]" accesskey="e"><span>Edit</span></a></li><li id="ca-more-history" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=Wang_BASIC&action=history"><span>View history</span></a></li> </ul> </div> </div> <div id="p-tb" class="vector-menu mw-portlet mw-portlet-tb" > <div class="vector-menu-heading"> General </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-whatlinkshere" class="mw-list-item"><a href="/wiki/Special:WhatLinksHere/Wang_BASIC" title="List of all English Wikipedia pages containing links to this page [j]" accesskey="j"><span>What links here</span></a></li><li id="t-recentchangeslinked" class="mw-list-item"><a href="/wiki/Special:RecentChangesLinked/Wang_BASIC" rel="nofollow" title="Recent changes in pages linked from this page [k]" accesskey="k"><span>Related changes</span></a></li><li id="t-upload" class="mw-list-item"><a href="/wiki/Wikipedia:File_Upload_Wizard" title="Upload files [u]" accesskey="u"><span>Upload file</span></a></li><li id="t-specialpages" class="mw-list-item"><a href="/wiki/Special:SpecialPages" title="A list of all special pages [q]" accesskey="q"><span>Special pages</span></a></li><li id="t-permalink" class="mw-list-item"><a href="/w/index.php?title=Wang_BASIC&oldid=1249960491" title="Permanent link to this revision of this page"><span>Permanent link</span></a></li><li id="t-info" class="mw-list-item"><a href="/w/index.php?title=Wang_BASIC&action=info" title="More information about this page"><span>Page information</span></a></li><li id="t-cite" class="mw-list-item"><a href="/w/index.php?title=Special:CiteThisPage&page=Wang_BASIC&id=1249960491&wpFormIdentifier=titleform" title="Information on how to cite this page"><span>Cite this page</span></a></li><li id="t-urlshortener" class="mw-list-item"><a href="/w/index.php?title=Special:UrlShortener&url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FWang_BASIC"><span>Get shortened URL</span></a></li><li id="t-urlshortener-qrcode" class="mw-list-item"><a href="/w/index.php?title=Special:QrCode&url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FWang_BASIC"><span>Download QR code</span></a></li> </ul> </div> </div> <div id="p-coll-print_export" class="vector-menu mw-portlet mw-portlet-coll-print_export" > <div class="vector-menu-heading"> Print/export </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="coll-download-as-rl" class="mw-list-item"><a href="/w/index.php?title=Special:DownloadAsPdf&page=Wang_BASIC&action=show-download-screen" title="Download this page as a PDF file"><span>Download as PDF</span></a></li><li id="t-print" class="mw-list-item"><a href="/w/index.php?title=Wang_BASIC&printable=yes" title="Printable version of this page [p]" accesskey="p"><span>Printable version</span></a></li> </ul> </div> </div> <div id="p-wikibase-otherprojects" class="vector-menu mw-portlet mw-portlet-wikibase-otherprojects" > <div class="vector-menu-heading"> In other projects </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-wikibase" class="wb-otherproject-link wb-otherproject-wikibase-dataitem mw-list-item"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q104880026" title="Structured data on this page hosted by Wikidata [g]" accesskey="g"><span>Wikidata item</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> </div> </div> </div> <div class="vector-column-end"> <div class="vector-sticky-pinned-container"> <nav class="vector-page-tools-landmark" aria-label="Page tools"> <div id="vector-page-tools-pinned-container" class="vector-pinned-container"> </div> </nav> <nav class="vector-appearance-landmark" aria-label="Appearance"> <div id="vector-appearance-pinned-container" class="vector-pinned-container"> <div id="vector-appearance" class="vector-appearance vector-pinnable-element"> <div class="vector-pinnable-header vector-appearance-pinnable-header vector-pinnable-header-pinned" data-feature-name="appearance-pinned" data-pinnable-element-id="vector-appearance" data-pinned-container-id="vector-appearance-pinned-container" data-unpinned-container-id="vector-appearance-unpinned-container" > <div class="vector-pinnable-header-label">Appearance</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-appearance.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-appearance.unpin">hide</button> </div> </div> </div> </nav> </div> </div> <div id="bodyContent" class="vector-body" aria-labelledby="firstHeading" data-mw-ve-target-container> <div class="vector-body-before-content"> <div class="mw-indicators"> </div> <div id="siteSub" class="noprint">From Wikipedia, the free encyclopedia</div> </div> <div id="contentSub"><div id="mw-content-subtitle"></div></div> <div id="mw-content-text" class="mw-body-content"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr"><style data-mw-deduplicate="TemplateStyles:r1251242444">.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}@media print{body.ns-0 .mw-parser-output .ambox{display:none!important}}</style><table class="box-Primary_sources plainlinks metadata ambox ambox-content ambox-Primary_sources" role="presentation"><tbody><tr><td class="mbox-image"><div class="mbox-image-div"><span typeof="mw:File"><a href="/wiki/File:Question_book-new.svg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/en/thumb/9/99/Question_book-new.svg/50px-Question_book-new.svg.png" decoding="async" width="50" height="39" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/9/99/Question_book-new.svg/75px-Question_book-new.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/9/99/Question_book-new.svg/100px-Question_book-new.svg.png 2x" data-file-width="512" data-file-height="399" /></a></span></div></td><td class="mbox-text"><div class="mbox-text-span">This article <b>relies excessively on <a href="/wiki/Wikipedia:Verifiability" title="Wikipedia:Verifiability">references</a> to <a href="/wiki/Wikipedia:No_original_research#Primary,_secondary_and_tertiary_sources" title="Wikipedia:No original research">primary sources</a></b>.<span class="hide-when-compact"> Please improve this article by adding <a href="/wiki/Wikipedia:No_original_research#Primary,_secondary_and_tertiary_sources" title="Wikipedia:No original research">secondary or tertiary sources</a>. <br /><small><span class="plainlinks"><i>Find sources:</i> <a rel="nofollow" class="external text" href="https://www.google.com/search?as_eq=wikipedia&q=%22Wang+BASIC%22">"Wang BASIC"</a> – <a rel="nofollow" class="external text" href="https://www.google.com/search?tbm=nws&q=%22Wang+BASIC%22+-wikipedia&tbs=ar:1">news</a> <b>·</b> <a rel="nofollow" class="external text" href="https://www.google.com/search?&q=%22Wang+BASIC%22&tbs=bkt:s&tbm=bks">newspapers</a> <b>·</b> <a rel="nofollow" class="external text" href="https://www.google.com/search?tbs=bks:1&q=%22Wang+BASIC%22+-wikipedia">books</a> <b>·</b> <a rel="nofollow" class="external text" href="https://scholar.google.com/scholar?q=%22Wang+BASIC%22">scholar</a> <b>·</b> <a rel="nofollow" class="external text" href="https://www.jstor.org/action/doBasicSearch?Query=%22Wang+BASIC%22&acc=on&wc=on">JSTOR</a></span></small></span> <span class="date-container"><i>(<span class="date">December 2020</span>)</i></span><span class="hide-when-compact"><i> (<small><a href="/wiki/Help:Maintenance_template_removal" title="Help:Maintenance template removal">Learn how and when to remove this message</a></small>)</i></span></div></td></tr></tbody></table> <style data-mw-deduplicate="TemplateStyles:r1257001546">.mw-parser-output .infobox-subbox{padding:0;border:none;margin:-3px;width:auto;min-width:100%;font-size:100%;clear:none;float:none;background-color:transparent}.mw-parser-output .infobox-3cols-child{margin:auto}.mw-parser-output .infobox .navbar{font-size:100%}@media screen{html.skin-theme-clientpref-night .mw-parser-output .infobox-full-data:not(.notheme)>div:not(.notheme)[style]{background:#1f1f23!important;color:#f8f9fa}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .infobox-full-data:not(.notheme) div:not(.notheme){background:#1f1f23!important;color:#f8f9fa}}@media(min-width:640px){body.skin--responsive .mw-parser-output .infobox-table{display:table!important}body.skin--responsive .mw-parser-output .infobox-table>caption{display:table-caption!important}body.skin--responsive .mw-parser-output .infobox-table>tbody{display:table-row-group}body.skin--responsive .mw-parser-output .infobox-table tr{display:table-row!important}body.skin--responsive .mw-parser-output .infobox-table th,body.skin--responsive .mw-parser-output .infobox-table td{padding-left:inherit;padding-right:inherit}}</style><table class="infobox vevent"><caption class="infobox-title summary">Wang BASIC</caption><tbody><tr><th scope="row" class="infobox-label"><a href="/wiki/Software_developer" class="mw-redirect" title="Software developer">Developer</a></th><td class="infobox-data organiser"><a href="/wiki/Wang_Laboratories" title="Wang Laboratories">Wang Laboratories</a></td></tr><tr><th scope="row" class="infobox-label">First appeared</th><td class="infobox-data">1973<span class="noprint">; 51 years ago</span><span style="display:none"> (<span class="bday dtstart published updated">1973</span>)</span></td></tr><tr><th colspan="2" class="infobox-header" style="background-color: #eee;">Influenced by</th></tr><tr><td colspan="2" class="infobox-full-data"><a href="/wiki/Dartmouth_BASIC" title="Dartmouth BASIC">Dartmouth BASIC</a></td></tr></tbody></table> <p><b>Wang BASIC</b> is a series of <a href="/wiki/BASIC_programming_language" class="mw-redirect" title="BASIC programming language">BASIC programming languages</a> for computers from <a href="/wiki/Wang_Laboratories" title="Wang Laboratories">Wang Laboratories</a>. The term can be used to refer to the BASIC on any Wang machine, but is mostly associated with the versions on the <a href="/wiki/Wang_2200" title="Wang 2200">Wang 2200</a> <a href="/wiki/Minicomputer" title="Minicomputer">minicomputer</a> series of the early 1970s. When these machines were updated to the VP series in 1976, BASIC-2 was introduced and remained the pattern for future machines in the 2200 series. A planned BASIC-3 was never released. </p><p>Wang offered several models of each version of the 2200 series, differing only in the amount of <a href="/wiki/Microcode" title="Microcode">microcode</a> stored in <a href="/wiki/Read-only_memory" title="Read-only memory">read-only memory</a> (ROM), and thus the number of commands available in BASIC on that machine. For instance, the B model machines differed from the base-model A by doubling the ROM and using that to store a variety of <a href="/wiki/Input/output" title="Input/output">input/output</a> and file management commands. </p><p>Wang BASIC closely followed the original <a href="/wiki/Dartmouth_BASIC" title="Dartmouth BASIC">Dartmouth BASIC</a> in syntax, but was an <a href="/wiki/Interpreter_(computing)" title="Interpreter (computing)">interpreter</a> as opposed to a <a href="/wiki/Compile-and-go" class="mw-redirect" title="Compile-and-go">compile-and-go</a> system. A notable feature was that all math used double-precision <a href="/wiki/Binary-coded_decimal" title="Binary-coded decimal">binary-coded decimal</a> (BCD) format, which was unusual for BASICs of the era.<sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>a<span class="cite-bracket">]</span></a></sup> It lacked many features common to later dialects like <a href="/wiki/Microsoft_BASIC" title="Microsoft BASIC">Microsoft BASIC</a>, but many of these features were added in BASIC-2. </p> <meta property="mw:PageProp/toc" /> <div class="mw-heading mw-heading2"><h2 id="Description">Description</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Wang_BASIC&action=edit&section=1" title="Edit section: Description"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>The following description is based on the original BASIC found in the 2200A. Not all of the instructions listed below would be available in the base model; 2200B and C added dozens of new keywords, and are outlined separately below. </p> <div class="mw-heading mw-heading3"><h3 id="Program_editing_and_execution">Program editing and execution</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Wang_BASIC&action=edit&section=2" title="Edit section: Program editing and execution"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>The original Wang BASIC for the 2200 is a relatively standard version of the <a href="/wiki/Dartmouth_BASIC" title="Dartmouth BASIC">Dartmouth BASIC</a> concept, and will be familiar to users of any common BASIC interpreters like <a href="/wiki/Microsoft_BASIC" title="Microsoft BASIC">Microsoft BASIC</a>. Like most BASIC interpreters, Wang BASIC operated in <a href="/wiki/Direct_mode" title="Direct mode">immediate mode or program mode</a>, switching to the later when a line number is seen at the start of the line when the <style data-mw-deduplicate="TemplateStyles:r1249182868">.mw-parser-output .keyboard-key{border:1px solid #aaa;border-radius:0.2em;box-shadow:0.1em 0.1em 0.2em rgba(0,0,0,0.1);background-color:var(--background-color-neutral-subtle,#f8f9fa);background-image:linear-gradient(to bottom,var(--background-color-neutral,#eaecf0),var(--background-color-neutral-subtle,#f8f9fa),var(--background-color-neutral,#eaecf0));color:var(--color-base,#202122);padding:0.1em 0.3em;font-family:inherit;font-size:0.85em}</style><kbd class="keyboard-key nowrap">EXEC</kbd> (return) key is pressed. Line numbers ranged from 0 to 9999. Lines could be up to 192 characters, spanning several on-screen lines,<sup id="cite_ref-FOOTNOTEWangBASIC197646_2-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC197646-2"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup> and lines could contain multiple statements separated by colons.<sup id="cite_ref-FOOTNOTEWangBASIC1976125_3-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976125-3"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> To aid organizing large programs, the language included a <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">RENUMBER</code> command.<sup id="cite_ref-FOOTNOTEWangBASIC1976123_4-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976123-4"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup> </p><p><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">LIST</code> was used to display the program source code, while <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">LIST S</code> displayed only the first 15 lines and then paused. When paused, pressing the EXEC key displayed the next 15 lines.<sup id="cite_ref-FOOTNOTEWangBASIC197614_5-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC197614-5"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">SAVE "filename"</code> saved the current program to <a href="/wiki/Cassette_tape" title="Cassette tape">cassette</a> and <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">LOAD "filename"</code> read it back in. <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">SKIP 2F</code> would read over the next two files found on the cassette tape, and then stop, allowing a subsequent <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">LOAD</code> or <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">SAVE</code> to work on the third file.<sup id="cite_ref-FOOTNOTEWangBASIC197660_6-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC197660-6"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup> <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">BACKSPACE</code> was the opposite of SKIP, rewinding the file pointer. Working with disk storage was slightly more complex, using <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">LOAD DC F "filename"</code>, where F referred to one of a number of pre-defined drives, in this case "F"ixed. <sup id="cite_ref-FOOTNOTEWangBASIC197665_7-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC197665-7"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup> </p><p><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">RUN</code> started execution, and could be directed to a particular line, as in <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">RUN 100</code>. The <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">STOP</code> command, typically used for debugging, allowed an optional following string that was printed out when that statement was performed.<sup id="cite_ref-FOOTNOTEWangBASIC1976116_8-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976116-8"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup> <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">TRACE</code> could be used to print out lines as they were run, which was often used in conjunction with the custom <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1249182868"><kbd class="keyboard-key nowrap">HALT</kbd> (break) and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1249182868"><kbd class="keyboard-key nowrap">STEP</kbd> keys on the keyboard to move line-by-line through a program.<sup id="cite_ref-FOOTNOTEWangBASIC1976121_9-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976121-9"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup> <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">SELECT P</code> was used to set a delay between <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">TRACE</code> lines in <style data-mw-deduplicate="TemplateStyles:r1154941027">.mw-parser-output .frac{white-space:nowrap}.mw-parser-output .frac .num,.mw-parser-output .frac .den{font-size:80%;line-height:0;vertical-align:super}.mw-parser-output .frac .den{vertical-align:sub}.mw-parser-output .sr-only{border:0;clip:rect(0,0,0,0);clip-path:polygon(0px 0px,0px 0px,0px 0px);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}</style><span class="frac"><span class="num">1</span>⁄<span class="den">6</span></span> second units; <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">SELECT P0</code> set the delay to zero, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">SELECT P3</code> would cause it to pause <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1154941027"><span class="frac"><span class="num">1</span>⁄<span class="den">2</span></span> second after each line.<sup id="cite_ref-FOOTNOTEWangBASIC1976118_10-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976118-10"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup> </p><p>There was no <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">NEW</code> command to clear memory of an existing program,<sup id="cite_ref-FOOTNOTECommodore198262_11-0" class="reference"><a href="#cite_note-FOOTNOTECommodore198262-11"><span class="cite-bracket">[</span>10<span class="cite-bracket">]</span></a></sup> instead one used <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">CLEAR</code> to reset memory.<sup id="cite_ref-FOOTNOTEWangBASIC19768_12-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC19768-12"><span class="cite-bracket">[</span>11<span class="cite-bracket">]</span></a></sup> <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">CLEAR P</code> (for "P"rogram) was the equivalent of NEW but added optional from and to line numbers,<sup id="cite_ref-FOOTNOTEWangBASIC1976274_13-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976274-13"><span class="cite-bracket">[</span>12<span class="cite-bracket">]</span></a></sup> deleting just that range of lines in a fashion similar to the <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">DELETE</code> command seen in some dialects. <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">CLEAR V</code> clears out variable values,<sup id="cite_ref-FOOTNOTEWangBASIC1976124_14-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976124-14"><span class="cite-bracket">[</span>13<span class="cite-bracket">]</span></a></sup> normally accomplished by <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">CLR</code> in most dialects.<sup id="cite_ref-FOOTNOTECommodore198239_15-0" class="reference"><a href="#cite_note-FOOTNOTECommodore198239-15"><span class="cite-bracket">[</span>14<span class="cite-bracket">]</span></a></sup> <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">CLEAR N</code> was similar to CLEAR V, but did not clear the value of shared variables (see below).<sup id="cite_ref-FOOTNOTEWangBASIC1976274_13-1" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976274-13"><span class="cite-bracket">[</span>12<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading3"><h3 id="Syntax">Syntax</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Wang_BASIC&action=edit&section=3" title="Edit section: Syntax"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Branching was supported through <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">IF...THEN</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">GOTO</code> and <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">GOSUB</code>. The alternate form, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">GO TO</code>, was not supported. One limitation of Wang BASIC, as in the case of the original Dartmouth as well, is that the THEN clause of an IF statement could only be a line number, in contrast to more modern dialects that allow any statement after the THEN. It also lacked boolean conjunctions like <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">AND</code> or <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">OR</code>, so the test could have only a single comparison.<sup id="cite_ref-16" class="reference"><a href="#cite_note-16"><span class="cite-bracket">[</span>15<span class="cite-bracket">]</span></a></sup> </p><p>One interesting addition to the language was the idea of named routines. The implementation was based on the <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">DEF FN</code> statement followed by a single quote and then a number from 0 to 255, for instance, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">DEFFN' 1</code>. This could then be called using <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">GOSUB '1</code>. To further confuse matters, the DEFFN line was a true function definition and could use parameters, like <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">DEFFN'5(A$, N)</code>, which could be called with <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">GOSUB'5("hello", 4)</code>. In allows one to implement multi-line function definitions, which other dialects sometimes offered using the conventional function style rather than using GOSUB.<sup id="cite_ref-FOOTNOTEWangBASIC1976158–159_17-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976158–159-17"><span class="cite-bracket">[</span>16<span class="cite-bracket">]</span></a></sup> Additionally, named routines in the range 0 to 31 were assigned to the similarly numbed keys on the 2200 keyboard, allowing them to be called directly with a single keypress.<sup id="cite_ref-FOOTNOTEWangBASIC1976162_18-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976162-18"><span class="cite-bracket">[</span>17<span class="cite-bracket">]</span></a></sup> </p><p><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">PRINT</code> supported comma and semicolon separating parameters, the former moving the cursor to the next 16-character wide column, the later leaving the cursor at the end of the printed value. It supported the <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">TAB()</code> function, but not <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">SPC()</code>. In common with other "high end" BASICs of the era, Wang BASIC offered formatted output with <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">PRINTUSING</code> and a separate "image". The image was defined using a separate line starting with the percent sign, for instance, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">180 % ##,###.##</code> and then using that format with <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">190 PRINTUSING 180, N</code>.<sup id="cite_ref-FOOTNOTEWangBASIC1976169_19-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976169-19"><span class="cite-bracket">[</span>18<span class="cite-bracket">]</span></a></sup> Any characters other than the formatting characters were echoed back during the print, so one could define a complete output with something like <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">180 % ANGLE= #.#### RADIANS</code>.<sup id="cite_ref-FOOTNOTEWangBASIC1976172_20-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976172-20"><span class="cite-bracket">[</span>19<span class="cite-bracket">]</span></a></sup> </p><p><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">INPUT</code> statements could include a prompt, along with a comma-delimited list of one or more variables. Semicolons could not be used in the INPUT, and the cursor always remained at the end of the last printed element during entry.<sup id="cite_ref-FOOTNOTEWangBASIC197656_21-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC197656-21"><span class="cite-bracket">[</span>20<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading3"><h3 id="Math_and_logic">Math and logic</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Wang_BASIC&action=edit&section=4" title="Edit section: Math and logic"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Like most dialects of the era, variable names could consist of a single uppercase letter or a letter followed by a single digit. It did not support two-letter names.<sup id="cite_ref-FOOTNOTEWangBASIC1976102_22-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976102-22"><span class="cite-bracket">[</span>21<span class="cite-bracket">]</span></a></sup> Multiple variables could be set to an initial value using a comma-separated list, for instance, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">LET A,B,C=1</code>. As with most BASICs, the <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">LET</code> was always optional.<sup id="cite_ref-FOOTNOTEWangBASIC197620_23-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC197620-23"><span class="cite-bracket">[</span>22<span class="cite-bracket">]</span></a></sup> Variables could be made into lists (one-dimensional arrays) using <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">DIM</code>, as in <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">DIM A(5)</code> which made a list of 5 numeric values.<sup id="cite_ref-FOOTNOTEWangBASIC1976135_24-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976135-24"><span class="cite-bracket">[</span>23<span class="cite-bracket">]</span></a></sup> or two-dimensional arrays using <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">DIM B(5,5)</code>.<sup id="cite_ref-FOOTNOTEWangBASIC1976210_25-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976210-25"><span class="cite-bracket">[</span>24<span class="cite-bracket">]</span></a></sup> </p><p>Relational operators included the standard set of <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">=</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr"><</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">></code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr"><></code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr"><=</code> and <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">>=</code>.<sup id="cite_ref-FOOTNOTEWangBASIC197649_26-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC197649-26"><span class="cite-bracket">[</span>25<span class="cite-bracket">]</span></a></sup> Trigonometric functions included <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">SIN</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">COS</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">TAN</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">ARCSIN</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">ARCCOS</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">ARCTAN</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">LOG</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">EXP</code> and <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">SQR</code>.<sup id="cite_ref-FOOTNOTEWangBASIC197682_27-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC197682-27"><span class="cite-bracket">[</span>26<span class="cite-bracket">]</span></a></sup> <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">ATN</code> was an alias for ARCTAN.<sup id="cite_ref-FOOTNOTEWangBASIC197683_28-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC197683-28"><span class="cite-bracket">[</span>27<span class="cite-bracket">]</span></a></sup> Trigonometric functions normally operated in <a href="/wiki/Radian" title="Radian">radians</a>, but could be set to use <a href="/wiki/Degree_(angle)" title="Degree (angle)">degrees</a> using <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">SELECT D</code> or <a href="/wiki/Gradian" title="Gradian">gradians</a> using <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">SELECT G</code>, returning to radians with <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">SELECT R</code>. Other functions included <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">INT</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">ABS</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">SGN</code>,<sup id="cite_ref-FOOTNOTEWangBASIC197678_29-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC197678-29"><span class="cite-bracket">[</span>28<span class="cite-bracket">]</span></a></sup> <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">RND</code> and the <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">#PI</code> pseudo-variable.<sup id="cite_ref-FOOTNOTEWangBASIC197681_30-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC197681-30"><span class="cite-bracket">[</span>29<span class="cite-bracket">]</span></a></sup> </p><p>Unlike most BASICs, the <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">RND</code> function did not treat the parameter as a placeholder; any non-zero value made it operate like the RND seen in other BASICs, while a value of zero restarted the number sequence in the same fashion as the <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">RANDOMIZE</code> statement seen in other BASICs.<sup id="cite_ref-FOOTNOTEWangBASIC197681_30-1" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC197681-30"><span class="cite-bracket">[</span>29<span class="cite-bracket">]</span></a></sup> This is a potential source of bugs when porting from other dialects, which generally ignored the parameter and often used zero as a parameter simply as a common placeholder.<sup id="cite_ref-31" class="reference"><a href="#cite_note-31"><span class="cite-bracket">[</span>b<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading3"><h3 id="Strings">Strings</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Wang_BASIC&action=edit&section=5" title="Edit section: Strings"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>String variables were supported, and concatenation was supported using the plus operator. In contrast to later BASICs which used dynamic length strings on a heap, like Microsoft, Wang BASIC set all strings to a default length of 16 characters and would ignore any characters assigned beyond that.<sup id="cite_ref-32" class="reference"><a href="#cite_note-32"><span class="cite-bracket">[</span>c<span class="cite-bracket">]</span></a></sup> Unused characters at the end of a string were filled with space characters, and any trailing spaces were ignored in PRINT statements,<sup id="cite_ref-FOOTNOTEWangBASIC1976106_33-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976106-33"><span class="cite-bracket">[</span>30<span class="cite-bracket">]</span></a></sup> which is another potential source of problems when porting code to Wang BASIC. </p><p>The storage length of any single string could be changed using the <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">DIM</code> statement, which in this case used the slightly odd syntax of putting the length immediately after the variable name, like <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">DIM A$40</code>,<sup id="cite_ref-FOOTNOTEWangBASIC1976107_34-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976107-34"><span class="cite-bracket">[</span>31<span class="cite-bracket">]</span></a></sup> instead of using parens as in a typical DIM statement.<sup id="cite_ref-FOOTNOTEWangBASIC1976137_35-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976137-35"><span class="cite-bracket">[</span>32<span class="cite-bracket">]</span></a></sup> Strings had a maximum length of 64 characters.<sup id="cite_ref-FOOTNOTEWangBASIC1976128_36-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976128-36"><span class="cite-bracket">[</span>33<span class="cite-bracket">]</span></a></sup> The syntax allowed lists of strings, for instance <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">DIM A$(5)</code> made a list of 5 strings of the default 16 character length, while <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">DIM B$(10)20</code> made a list of 10 strings of 20 characters.<sup id="cite_ref-FOOTNOTEWangBASIC1976139_37-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976139-37"><span class="cite-bracket">[</span>34<span class="cite-bracket">]</span></a></sup> </p><p>There were a small set of string functions. <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">STR</code> is a general-purpose <a href="/wiki/Array_slicing" title="Array slicing">array slicing</a> command that replaces the DEC/Microsoft-style <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">MID</code>/<code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">LEFT</code>/<code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">RIGHT</code>. For instance, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">STR(B$,10,5)</code> returns the five characters of A$ starting at character 10.<sup id="cite_ref-FOOTNOTEWangBASIC1976185_38-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976185-38"><span class="cite-bracket">[</span>35<span class="cite-bracket">]</span></a></sup> The second parameter was optional, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">STR(C$,5)</code> returned everything from the 5th character on. <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">LEN</code> returned the length of the string, ignoring trailing spaces, so <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">LEN("ABC ")</code> would return 3.<sup id="cite_ref-FOOTNOTEWangBASIC1976189_39-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976189-39"><span class="cite-bracket">[</span>36<span class="cite-bracket">]</span></a></sup> To further confuse matters, empty string variables always returned a length of 1.<sup id="cite_ref-FOOTNOTEWangBASIC1976190_40-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976190-40"><span class="cite-bracket">[</span>37<span class="cite-bracket">]</span></a></sup> Note that the string functions do not include the $, in contrast to most BASICs where these functions would be named <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">STR$</code>, for instance, indicating the return value is a string, not a numeric value.<sup id="cite_ref-FOOTNOTECommodore198234_41-0" class="reference"><a href="#cite_note-FOOTNOTECommodore198234-41"><span class="cite-bracket">[</span>38<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading3"><h3 id="Data_and_I/O"><span id="Data_and_I.2FO"></span>Data and I/O</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Wang_BASIC&action=edit&section=6" title="Edit section: Data and I/O"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>In keeping with the Dartmouth model, Wang BASIC included <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">DATA</code> statements for storing constants within the program code, and these were read using the <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">READ</code> statement, which started at the first data element and then moved a pointer forward to the next element with every READ. <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">RESTORE</code> could reset the READ pointer, and was expanded from the original Dartmouth version by allowing the pointer to be set particular item in the list, for instance, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">RESTORE 10</code>, which set it to the 10th element. Only 256 values could be entered in DATA statements in total in one program.<sup id="cite_ref-FOOTNOTEWangBASIC1976145–150_42-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976145–150-42"><span class="cite-bracket">[</span>39<span class="cite-bracket">]</span></a></sup> </p><p>The <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">SELECT</code> statement could be used to redirect output from other BASIC commands to other devices, based on the "address" of the device. For instance, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">SELECT PRINT 215</code> would send the output of subsequent PRINT statements to the printer at address 215, while <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">SELECT PRINT 005</code> returned output to the built-in CRT. <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">SELECT LIST 215</code> would do the same for any following LIST statements.<sup id="cite_ref-FOOTNOTEWangBASIC197620–21_43-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC197620–21-43"><span class="cite-bracket">[</span>40<span class="cite-bracket">]</span></a></sup> SELECT also had an optional following parameter to set the maximum line length, like <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">SELECT PRINT 215 (132)</code>. One could use SELECT with a variety of pre-defined devices, like CI for "console input" (normally the keyboard) or LIST to redirect the program listing to a different device.<sup id="cite_ref-FOOTNOTEWangBASIC197620–21_43-1" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC197620–21-43"><span class="cite-bracket">[</span>40<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading3"><h3 id="Chaining_programs">Chaining programs</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Wang_BASIC&action=edit&section=7" title="Edit section: Chaining programs"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>As machines of the era had very limited amounts of memory, most dialects of BASIC included some way to "chain" programs together to allow a single program to be broken up into smaller modules. In Wang BASIC, this was accomplished with the <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">COM</code> and <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">LOAD</code> statements.<sup id="cite_ref-FOOTNOTEWangBASIC1976272_44-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976272-44"><span class="cite-bracket">[</span>41<span class="cite-bracket">]</span></a></sup> </p><p><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">COM</code> declared one or more variables to be "common",<sup id="cite_ref-45" class="reference"><a href="#cite_note-45"><span class="cite-bracket">[</span>d<span class="cite-bracket">]</span></a></sup> or <a href="/wiki/Global_variable" title="Global variable">global</a> in modern terminology. A program using chaining would typically declare a number of variables to be common near the top of the code, perhaps <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">COM A,B,I,A$20</code>.<sup id="cite_ref-FOOTNOTEWangBASIC1976275_46-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976275-46"><span class="cite-bracket">[</span>42<span class="cite-bracket">]</span></a></sup> When a separate program module is LOADed, the values in these variables will not be cleared, in contrast to the non-common variables which will be reset. Common variables could be cleared explicitly using <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">CLEAR V</code>, while <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">CLEAR N</code> clears non-common variables and leaves common variables alone. Variables could also be declared non-common using <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">COM CLEAR</code>, which reset all common variables to normal, or <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">COM CLEAR A</code> to reset just the status of A. Confusingly, COM CLEAR also reset any other COM variables defined before A, so the results of COM CLEAR A would be different if the original program used <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">COM S,B,A</code> or <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">COM A,B,S</code>, in the first example all three would be reset while in the second only A would be reset.<sup id="cite_ref-FOOTNOTEWangBASIC1976277_47-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976277-47"><span class="cite-bracket">[</span>43<span class="cite-bracket">]</span></a></sup> </p><p>The LOAD command was also used for chaining. One could optionally add start and end line numbers, in which case any existing lines between those limits would be deleted, or from the start line to the end of the program if only one number was specified. The new program is then loaded at that point and execution starts at the start line number, or start of the program if no start line was specified.<sup id="cite_ref-FOOTNOTEWangBASIC1976273_48-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976273-48"><span class="cite-bracket">[</span>44<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading2"><h2 id="Variations_on_2200_BASIC">Variations on 2200 BASIC</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Wang_BASIC&action=edit&section=8" title="Edit section: Variations on 2200 BASIC"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>The original Wang BASIC came in several versions differing in the amount of ROM-based microcode, and thus the number of keywords supported. </p> <div class="mw-heading mw-heading3"><h3 id="2200B">2200B</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Wang_BASIC&action=edit&section=9" title="Edit section: 2200B"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>BASIC in the 2200B was a major expansion of the 2200A version. The additions can generally be classed into four categories; missing features, additional string commands, vector-like commands, and input/output. The differences between the version can be found in table form in the 2200 overview document.<sup id="cite_ref-FOOTNOTEIntro19762_49-0" class="reference"><a href="#cite_note-FOOTNOTEIntro19762-49"><span class="cite-bracket">[</span>45<span class="cite-bracket">]</span></a></sup> </p><p>Missing features that were addressed in 2200B included the addition of <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">ON...GOTO</code><sup id="cite_ref-FOOTNOTEWangBASIC1976130_50-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976130-50"><span class="cite-bracket">[</span>46<span class="cite-bracket">]</span></a></sup> and <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">ON...GOSUB</code>.<sup id="cite_ref-FOOTNOTEWangBASIC1976156_51-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976156-51"><span class="cite-bracket">[</span>47<span class="cite-bracket">]</span></a></sup> <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">KEYIN</code> read a character from the keyboard without pausing, similar to <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">INKEY$</code> in MS BASIC. <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">VAL</code> searched a string and returned a numeric value within it. The <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">NUM</code> function was similar to LEN, but returned the length of the substring up to the first non-numeric character. For instance, if A$ is "1234.5", <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">NUM(A$)</code> would return 6, whereas if A$ was <span class="nowrap">"1234.5    "</span>, NUM would return 10, because spaces are valid in numbers.<sup id="cite_ref-FOOTNOTEWangBASIC1976192_52-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976192-52"><span class="cite-bracket">[</span>48<span class="cite-bracket">]</span></a></sup> </p><p>2200B did not add a STR$ function, which converts a numeric value to a string. Instead, they added the <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">CONVERT</code> command to read strings into numbers and vice versa. For instance, using the A$ above, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">CONVERT A$ TO B</code> would result in B containing the value 1234.5, while <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">CONVERT 123 TO B$</code> would leave B$ with something like "123 ".<sup id="cite_ref-FOOTNOTEWangBASIC1976193_53-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976193-53"><span class="cite-bracket">[</span>49<span class="cite-bracket">]</span></a></sup> Dartmouth BASIC included a CHANGE command but it was very different in purpose, in Dartmouth, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">CHANGE A$ TO B</code> would produce an array of values in B, with each element containing the ASCII code for the corresponding character in A$; in this case, B would contain 49,50,51,52,46,53, the ASCII values for the characters "1234.5". Wang's CONVERT also had a second mode that took a format specifier like PRINTUSING and used that to convert a number to a formatted string in a fashion analogous to <a href="/wiki/C_programming_language" class="mw-redirect" title="C programming language">C</a>'s <a href="/wiki/Sprintf" class="mw-redirect" title="Sprintf">sprintf</a>.<sup id="cite_ref-FOOTNOTEWangBASIC1976193_53-1" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976193-53"><span class="cite-bracket">[</span>49<span class="cite-bracket">]</span></a></sup> </p><p>The <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">POS</code> function returns the index of a given character in a string; <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">POS("HELLO WORLD", "L")</code> would return 3. In contrast to MS's <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">INSTR</code>, POS could search for only a single character, not a multi-character string. </p><p><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">HEX</code> converted a hexadecimal value into the corresponding character. For instance, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">A$=HEX(20)</code> would put a space character (hex 20) into the first character of A$.<sup id="cite_ref-FOOTNOTEWangBASIC1976183_54-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976183-54"><span class="cite-bracket">[</span>50<span class="cite-bracket">]</span></a></sup> Multiple codes could be inserted at once; <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">PRINT HEX(080809)</code> produces three characters, two backspaces and a cursor-right.<sup id="cite_ref-FOOTNOTEWangBASIC1976196_55-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976196-55"><span class="cite-bracket">[</span>51<span class="cite-bracket">]</span></a></sup> HEX is the counterpart to the ASC function found in most BASICs,<sup id="cite_ref-FOOTNOTECommodore198237_56-0" class="reference"><a href="#cite_note-FOOTNOTECommodore198237-56"><span class="cite-bracket">[</span>52<span class="cite-bracket">]</span></a></sup> but uses a hex input instead of a decimal number. <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">BIN</code> did the same for binary numbers.<sup id="cite_ref-FOOTNOTEWangBASIC1976190_40-1" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976190-40"><span class="cite-bracket">[</span>37<span class="cite-bracket">]</span></a></sup> </p><p>A special purpose command was added to fill out a string with an initial value that's not a space. <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">INIT ("X") A$</code> would fill A$ with X characters, while <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">INIT (41) B$</code> would put the hex value 41, the character A, into B$.<sup id="cite_ref-FOOTNOTEWangBASIC1976188_57-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976188-57"><span class="cite-bracket">[</span>53<span class="cite-bracket">]</span></a></sup> </p><p>2200B also included a number of commands that worked in a vector-like fashion to perform common tasks that would normally be carried out using a loop, or in Dartmouth versions, matrix math commands. For example, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">ADD</code> took a list of expressions, added them together and returned the result. This was accomplished much faster than the same expressed using an infix expression; <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">A=ADD(B,C,D)</code> would be completed quicker than <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">A=B+C+D</code>. Similar commands were <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">OR</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">AND</code> and <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">XOR</code>. </p><p>The majority of the additions in 2200B were related to input/output, and mostly to working with floppy disk files. It introduced the concept of having several different file types, including the data file, indicated by prefixing "DA" on the file commands. A variety of other commands supported working with these files, including <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">COPY</code> to duplicate a file, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">MOVE</code> within a file, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">VERIFY</code> files, and <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">SCRATCH</code> to erase a file or <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">SCRATCH DISK</code> to erase everything. </p> <div class="mw-heading mw-heading3"><h3 id="2200C">2200C</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Wang_BASIC&action=edit&section=10" title="Edit section: 2200C"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>In contrast to the 2200B version, which was a major expansion on the 2200A, 2200C was much more limited in scope. It added the <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">COM CLEAR</code> command for clearing shared variables, a version of <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">DEFFN'</code> that returned hex, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">RETURN CLEAR</code> was used to "pop" a GOSUB off the stack,<sup id="cite_ref-FOOTNOTEWangBASIC1976156_51-1" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976156-51"><span class="cite-bracket">[</span>47<span class="cite-bracket">]</span></a></sup> and <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">ON ERROR</code> for trapping errors within the program. </p> <div class="mw-heading mw-heading3"><h3 id="2200T">2200T</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Wang_BASIC&action=edit&section=11" title="Edit section: 2200T"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Later models in the series added some or all of the commands in the B or C versions, but only the 2200T expanded on them. Most notable in the expansions was the addition of matrix math, but a few I/O details were also added. </p><p>The matrix math commands were largely identical to those found in later releases of Dartmouth BASIC. These generally took the form of an assignment, like LET, but replacing the LET with <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">MAT</code>. For instance, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">MAT A=B+C</code> would produce a matrix A whose elements were the sums of the corresponding elements in matrix B and C.<sup id="cite_ref-FOOTNOTEWangBASIC1976215_58-0" class="reference"><a href="#cite_note-FOOTNOTEWangBASIC1976215-58"><span class="cite-bracket">[</span>54<span class="cite-bracket">]</span></a></sup> Other matrix commands include <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">INV</code>ert, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">IDN</code> for the identity matrix and <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">ZER</code> for the zero matrix, and various utilities like <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">COPY</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">MERGE</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">MOVE</code> and <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">SORT</code>.<sup id="cite_ref-FOOTNOTEIntro19762_49-1" class="reference"><a href="#cite_note-FOOTNOTEIntro19762-49"><span class="cite-bracket">[</span>45<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading2"><h2 id="BASIC-2">BASIC-2</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Wang_BASIC&action=edit&section=12" title="Edit section: BASIC-2"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>The introduction of the 2200VP's completely new <a href="/wiki/Instruction_set" class="mw-redirect" title="Instruction set">instruction set</a> required an entirely new BASIC to be written from scratch. While <a href="/wiki/Backward_compatibility" title="Backward compatibility">backward compatibility</a> was the primary goal, the new BASIC-2 also added a number of missing features. The most notable change was that BASIC was no longer stored in <a href="/wiki/Read-only_memory" title="Read-only memory">read-only memory</a> (ROM) and was instead loaded from disk at boot time, which allowed it to be easily patched in the field to fix bugs. It was also much faster, about eight times, due to a focus on performance rather than size, and the better performance of the VP platform.<sup id="cite_ref-FOOTNOTEBASIC21979_59-0" class="reference"><a href="#cite_note-FOOTNOTEBASIC21979-59"><span class="cite-bracket">[</span>55<span class="cite-bracket">]</span></a></sup> </p><p>IF statements were limited in the original version, and were significantly improved in BASIC-2. Boolean conjunctions were added, allowing more complex tests like <code class="mw-highlight mw-highlight-lang-basic mw-content-ltr" style="" dir="ltr"><span class="kr">IF</span><span class="w"> </span><span class="vg">X</span><span class="o">=</span><span class="il">5</span><span class="w"> </span><span class="ow">AND</span><span class="w"> </span><span class="vg">Y</span><span class="o">=</span><span class="il">10</span><span class="w"> </span><span class="kr">THEN</span><span class="o">...</span></code> The statement following the THEN no longer had to be an implied GOTO, allowing common statements like <code class="mw-highlight mw-highlight-lang-basic mw-content-ltr" style="" dir="ltr"><span class="kr">IF</span><span class="w"> </span><span class="vg">X</span><span class="o">=</span><span class="il">10</span><span class="w"> </span><span class="kr">THEN</span><span class="w"> </span><span class="kr">PRINT</span><span class="w"> </span><span class="s2">"IT IS TEN"</span></code>. An <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">ELSE</code> clause was added and had to follow a colon; <code class="mw-highlight mw-highlight-lang-basic mw-content-ltr" style="" dir="ltr"><span class="kr">IF</span><span class="w"> </span><span class="vg">X</span><span class="o">=</span><span class="il">10</span><span class="w"> </span><span class="kr">THEN</span><span class="w"> </span><span class="kr">PRINT</span><span class="w"> </span><span class="s2">"IT IS TEN"</span><span class="o">:</span><span class="k">ELSE</span><span class="w"> </span><span class="kr">PRINT</span><span class="w"> </span><span class="s2">"IT IS NOT TEN"</span></code>. ELSE could also be used with ON statements; <code class="mw-highlight mw-highlight-lang-basic mw-content-ltr" style="" dir="ltr"><span class="kr">ON</span><span class="w"> </span><span class="vg">X</span><span class="w"> </span><span class="kr">GOTO</span><span class="w"> </span><span class="nl">10</span><span class="p">,</span><span class="il">20</span><span class="p">,</span><span class="il">30</span><span class="o">:</span><span class="k">ELSE</span><span class="w"> </span><span class="il">100</span></code> would branch to lines 10, 20 or 30 if the value in X was 1, 2 or 3, while any other value would branch to 100.<sup id="cite_ref-FOOTNOTEBASIC21979_59-1" class="reference"><a href="#cite_note-FOOTNOTEBASIC21979-59"><span class="cite-bracket">[</span>55<span class="cite-bracket">]</span></a></sup> </p><p>New functions include <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">FIX</code>, which always rounded toward zero instead of INT which always rounded down; <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">FIX(-4.5)</code> returns -4, whereas <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">INT(-4.5)</code> returns -5. <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">ROUND(value,num)</code> is similar to FIX but rounds to the decimal place provided in the second parameter. <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">MOD</code> performs integer division and returns the remainder. <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">MAX(a,b,c...)</code> and <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">MIN(d,e,f...)</code> returned the value among the list of inputs with the highest or lowest value. <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">LGT</code> returns the base-10 log of the value. <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">VER</code> checks if the string in the first parameter matches the format in the second, the format was the same as PRINTUSING.<sup id="cite_ref-FOOTNOTEBASIC21979_59-2" class="reference"><a href="#cite_note-FOOTNOTEBASIC21979-59"><span class="cite-bracket">[</span>55<span class="cite-bracket">]</span></a></sup> </p><p>PRINTUSING could now output to a string; <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">PRINTUSING TO A$, "#.##", SQR(3)</code> would format the square root of three to two decimals and put the result in A$. Several new pseudo-functions were added to PRINT; the <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">AT(X,Y)</code> function was similar in concept to TAB, but moved the cursor to the X,Y location, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">BOX(W,H)</code> drew a box of the given width and height with the upper left corner at the current cursor position, and <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">HEXOF(v)</code> returned the hex value.<sup id="cite_ref-FOOTNOTEBASIC21979_59-3" class="reference"><a href="#cite_note-FOOTNOTEBASIC21979-59"><span class="cite-bracket">[</span>55<span class="cite-bracket">]</span></a></sup> </p><p>Default string size did not change, the but maximum size was increased from 64 to 124 characters. Maximum array dimensions increased from 255 to 65535 elements.<sup id="cite_ref-FOOTNOTEBASIC21979_59-4" class="reference"><a href="#cite_note-FOOTNOTEBASIC21979-59"><span class="cite-bracket">[</span>55<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading2"><h2 id="BASIC-3">BASIC-3</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Wang_BASIC&action=edit&section=13" title="Edit section: BASIC-3"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>In March 1977, Wang announced an expanded version of the VP system that included more memory, up to 256 KB, and a <a href="/wiki/Terminal_server" title="Terminal server">terminal server</a> system to allow a single machine support up to twelve terminals. Known as the 2200MVP, the first units shipped in January 1978. The four-user LVP and single-user SVP models of the same machine shipped in 1980.<sup id="cite_ref-60" class="reference"><a href="#cite_note-60"><span class="cite-bracket">[</span>56<span class="cite-bracket">]</span></a></sup> </p><p>On 2 April 1981, at the <a href="/wiki/Hannover_Fair" class="mw-redirect" title="Hannover Fair">Hannover Fair</a>, Wang announced a major update of the MVP series microcode. The $2,000 "C" option added a <a href="/wiki/COBOL" title="COBOL">COBOL</a> compiler as well as a further updated version of BASIC, BASIC-3. At the time, they expected to release it in beta form in August, and for all customers in November.<sup id="cite_ref-61" class="reference"><a href="#cite_note-61"><span class="cite-bracket">[</span>57<span class="cite-bracket">]</span></a></sup> The system was sent to a small number of sites for beta testing, but never released.<sup id="cite_ref-62" class="reference"><a href="#cite_note-62"><span class="cite-bracket">[</span>58<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading2"><h2 id="Notes">Notes</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Wang_BASIC&action=edit&section=14" title="Edit section: Notes"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <style data-mw-deduplicate="TemplateStyles:r1239543626">.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}</style><div class="reflist reflist-lower-alpha"> <div class="mw-references-wrap"><ol class="references"> <li id="cite_note-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-1">^</a></b></span> <span class="reference-text">Wang had long produced business calculators using BCD, so this was not unusual for the company.</span> </li> <li id="cite_note-31"><span class="mw-cite-backlink"><b><a href="#cite_ref-31">^</a></b></span> <span class="reference-text">See, for instance, <i><a href="/wiki/Super_Star_Trek" class="mw-redirect" title="Super Star Trek">Super Star Trek</a></i>, which uses <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">RND(0)</code> widely.</span> </li> <li id="cite_note-32"><span class="mw-cite-backlink"><b><a href="#cite_ref-32">^</a></b></span> <span class="reference-text">This appears to have been taken from <a href="/wiki/HP_Time-Shared_BASIC" title="HP Time-Shared BASIC">HP Time-Shared BASIC</a>, which was identical. Several BASICs of the home computer era also used a variation of this model, notably <a href="/wiki/Integer_BASIC" title="Integer BASIC">Integer BASIC</a> and <a href="/wiki/Atari_BASIC" title="Atari BASIC">Atari BASIC</a>.</span> </li> <li id="cite_note-45"><span class="mw-cite-backlink"><b><a href="#cite_ref-45">^</a></b></span> <span class="reference-text">Other BASICs that had this feature generally used the full term <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">COMMON</code>.</span> </li> </ol></div></div> <div class="mw-heading mw-heading2"><h2 id="References">References</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Wang_BASIC&action=edit&section=15" title="Edit section: References"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="mw-heading mw-heading3"><h3 id="Citations">Citations</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Wang_BASIC&action=edit&section=16" title="Edit section: Citations"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1239543626"><div class="reflist reflist-columns references-column-width" style="column-width: 30em;"> <ol class="references"> <li id="cite_note-FOOTNOTEWangBASIC197646-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC197646_2-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 46.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976125-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976125_3-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 125.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976123-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976123_4-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 123.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC197614-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC197614_5-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 14.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC197660-6"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC197660_6-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 60.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC197665-7"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC197665_7-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 65.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976116-8"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976116_8-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 116.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976121-9"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976121_9-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 121.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976118-10"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976118_10-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 118.</span> </li> <li id="cite_note-FOOTNOTECommodore198262-11"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTECommodore198262_11-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFCommodore1982">Commodore 1982</a>, p. 62.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC19768-12"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC19768_12-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 8.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976274-13"><span class="mw-cite-backlink">^ <a href="#cite_ref-FOOTNOTEWangBASIC1976274_13-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-FOOTNOTEWangBASIC1976274_13-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 274.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976124-14"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976124_14-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 124.</span> </li> <li id="cite_note-FOOTNOTECommodore198239-15"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTECommodore198239_15-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFCommodore1982">Commodore 1982</a>, p. 39.</span> </li> <li id="cite_note-16"><span class="mw-cite-backlink"><b><a href="#cite_ref-16">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("//upload.wikimedia.org/wikipedia/commons/6/65/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("//upload.wikimedia.org/wikipedia/commons/d/d6/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("//upload.wikimedia.org/wikipedia/commons/a/aa/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("//upload.wikimedia.org/wikipedia/commons/4/4c/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}</style><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.wang2200.org/basic_comparison.html">"BASIC comparison"</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=BASIC+comparison&rft_id=https%3A%2F%2Fwww.wang2200.org%2Fbasic_comparison.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AWang+BASIC" class="Z3988"></span></span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976158–159-17"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976158–159_17-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, pp. 158–159.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976162-18"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976162_18-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 162.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976169-19"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976169_19-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 169.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976172-20"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976172_20-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 172.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC197656-21"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC197656_21-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 56.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976102-22"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976102_22-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 102.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC197620-23"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC197620_23-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 20.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976135-24"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976135_24-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 135.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976210-25"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976210_25-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 210.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC197649-26"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC197649_26-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 49.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC197682-27"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC197682_27-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 82.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC197683-28"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC197683_28-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 83.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC197678-29"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC197678_29-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 78.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC197681-30"><span class="mw-cite-backlink">^ <a href="#cite_ref-FOOTNOTEWangBASIC197681_30-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-FOOTNOTEWangBASIC197681_30-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 81.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976106-33"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976106_33-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 106.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976107-34"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976107_34-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 107.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976137-35"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976137_35-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 137.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976128-36"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976128_36-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 128.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976139-37"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976139_37-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 139.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976185-38"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976185_38-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 185.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976189-39"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976189_39-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 189.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976190-40"><span class="mw-cite-backlink">^ <a href="#cite_ref-FOOTNOTEWangBASIC1976190_40-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-FOOTNOTEWangBASIC1976190_40-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 190.</span> </li> <li id="cite_note-FOOTNOTECommodore198234-41"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTECommodore198234_41-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFCommodore1982">Commodore 1982</a>, p. 34.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976145–150-42"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976145–150_42-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, pp. 145–150.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC197620–21-43"><span class="mw-cite-backlink">^ <a href="#cite_ref-FOOTNOTEWangBASIC197620–21_43-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-FOOTNOTEWangBASIC197620–21_43-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, pp. 20–21.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976272-44"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976272_44-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 272.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976275-46"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976275_46-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 275.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976277-47"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976277_47-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 277.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976273-48"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976273_48-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 273.</span> </li> <li id="cite_note-FOOTNOTEIntro19762-49"><span class="mw-cite-backlink">^ <a href="#cite_ref-FOOTNOTEIntro19762_49-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-FOOTNOTEIntro19762_49-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><a href="#CITEREFIntro1976">Intro 1976</a>, p. 2.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976130-50"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976130_50-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 130.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976156-51"><span class="mw-cite-backlink">^ <a href="#cite_ref-FOOTNOTEWangBASIC1976156_51-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-FOOTNOTEWangBASIC1976156_51-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 156.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976192-52"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976192_52-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 192.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976193-53"><span class="mw-cite-backlink">^ <a href="#cite_ref-FOOTNOTEWangBASIC1976193_53-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-FOOTNOTEWangBASIC1976193_53-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 193.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976183-54"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976183_54-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 183.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976196-55"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976196_55-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 196.</span> </li> <li id="cite_note-FOOTNOTECommodore198237-56"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTECommodore198237_56-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFCommodore1982">Commodore 1982</a>, p. 37.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976188-57"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976188_57-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 188.</span> </li> <li id="cite_note-FOOTNOTEWangBASIC1976215-58"><span class="mw-cite-backlink"><b><a href="#cite_ref-FOOTNOTEWangBASIC1976215_58-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFWangBASIC1976">WangBASIC 1976</a>, p. 215.</span> </li> <li id="cite_note-FOOTNOTEBASIC21979-59"><span class="mw-cite-backlink">^ <a href="#cite_ref-FOOTNOTEBASIC21979_59-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-FOOTNOTEBASIC21979_59-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-FOOTNOTEBASIC21979_59-2"><sup><i><b>c</b></i></sup></a> <a href="#cite_ref-FOOTNOTEBASIC21979_59-3"><sup><i><b>d</b></i></sup></a> <a href="#cite_ref-FOOTNOTEBASIC21979_59-4"><sup><i><b>e</b></i></sup></a></span> <span class="reference-text"><a href="#CITEREFBASIC21979">BASIC2 1979</a>.</span> </li> <li id="cite_note-60"><span class="mw-cite-backlink"><b><a href="#cite_ref-60">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation book cs1"><a rel="nofollow" class="external text" href="http://www.bitsavers.org/pdf/datapro/programmable_terminals/Datapro_C21_Wang.pdf"><i>Programmable Terminals</i></a> <span class="cs1-format">(PDF)</span>. Datapro Research. February 1981.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Programmable+Terminals&rft.pub=Datapro+Research&rft.date=1981-02&rft_id=http%3A%2F%2Fwww.bitsavers.org%2Fpdf%2Fdatapro%2Fprogrammable_terminals%2FDatapro_C21_Wang.pdf&rfr_id=info%3Asid%2Fen.wikipedia.org%3AWang+BASIC" class="Z3988"></span></span> </li> <li id="cite_note-61"><span class="mw-cite-backlink"><b><a href="#cite_ref-61">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation news cs1"><a rel="nofollow" class="external text" href="https://wang2200.org/docs/internal/2200_BASIC3_COBOL_InternalMemos.pdf">"2200 Series Enhancements"</a> <span class="cs1-format">(PDF)</span>. 2 April 1981.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=2200+Series+Enhancements&rft.date=1981-04-02&rft_id=https%3A%2F%2Fwang2200.org%2Fdocs%2Finternal%2F2200_BASIC3_COBOL_InternalMemos.pdf&rfr_id=info%3Asid%2Fen.wikipedia.org%3AWang+BASIC" class="Z3988"></span></span> </li> <li id="cite_note-62"><span class="mw-cite-backlink"><b><a href="#cite_ref-62">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation news cs1"><a rel="nofollow" class="external text" href="https://www.wang2200.org/docs/datasheet/BASIC3_DataSheet.700-6815.3-81.pdf">"2200 BASIC-3"</a> <span class="cs1-format">(PDF)</span>. Wang Laboratories.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=2200+BASIC-3&rft_id=https%3A%2F%2Fwww.wang2200.org%2Fdocs%2Fdatasheet%2FBASIC3_DataSheet.700-6815.3-81.pdf&rfr_id=info%3Asid%2Fen.wikipedia.org%3AWang+BASIC" class="Z3988"></span></span> </li> </ol></div> <div class="mw-heading mw-heading3"><h3 id="Bibliography">Bibliography</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Wang_BASIC&action=edit&section=17" title="Edit section: Bibliography"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFWangBASIC1976" class="citation book cs1"><a rel="nofollow" class="external text" href="https://www.wang2200.org/docs/language/WangBasicProgrammingManual.700-4081A.11-76.pdf"><i>Wang BASIC Language Programming Manual</i></a> <span class="cs1-format">(PDF)</span>. Wang Laboratories. 1976.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Wang+BASIC+Language+Programming+Manual&rft.pub=Wang+Laboratories&rft.date=1976&rft_id=https%3A%2F%2Fwww.wang2200.org%2Fdocs%2Flanguage%2FWangBasicProgrammingManual.700-4081A.11-76.pdf&rfr_id=info%3Asid%2Fen.wikipedia.org%3AWang+BASIC" class="Z3988"></span></li> <li><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFBASIC21979" class="citation book cs1"><a rel="nofollow" class="external text" href="http://wang2200.org/docs/language/Basic2RefManual.700-4080D.6-81.pdf"><i>Wang BASIC-2 Language Reference Manual</i></a> <span class="cs1-format">(PDF)</span>. Wang Laboratories. 1979.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Wang+BASIC-2+Language+Reference+Manual&rft.pub=Wang+Laboratories&rft.date=1979&rft_id=http%3A%2F%2Fwang2200.org%2Fdocs%2Flanguage%2FBasic2RefManual.700-4080D.6-81.pdf&rfr_id=info%3Asid%2Fen.wikipedia.org%3AWang+BASIC" class="Z3988"></span></li> <li><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFBASIC31982" class="citation book cs1"><a rel="nofollow" class="external text" href="https://wang2200.org/docs/system/2200SystemsOptionC.729-1062.pdf"><i>2200 Systems Option "C"</i></a> <span class="cs1-format">(PDF)</span>. Wang Laboratories. February 1982.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=2200+Systems+Option+%22C%22&rft.pub=Wang+Laboratories&rft.date=1982-02&rft_id=https%3A%2F%2Fwang2200.org%2Fdocs%2Fsystem%2F2200SystemsOptionC.729-1062.pdf&rfr_id=info%3Asid%2Fen.wikipedia.org%3AWang+BASIC" class="Z3988"></span></li> <li><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFIntro1976" class="citation book cs1"><a rel="nofollow" class="external text" href="http://wang2200.org/docs/system/2200_IntroManual.700-3687A.10-76.pdf"><i>2200 Introductory Manual</i></a> <span class="cs1-format">(PDF)</span>. Wang Laboratories. 1976.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=2200+Introductory+Manual&rft.pub=Wang+Laboratories&rft.date=1976&rft_id=http%3A%2F%2Fwang2200.org%2Fdocs%2Fsystem%2F2200_IntroManual.700-3687A.10-76.pdf&rfr_id=info%3Asid%2Fen.wikipedia.org%3AWang+BASIC" class="Z3988"></span></li> <li><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFCommodore1982" class="citation book cs1"><a rel="nofollow" class="external text" href="http://www.classiccmp.org/cini/pdf/Commodore/C64%20Programmer%27s%20Reference%20Guide.pdf"><i>Commodore 64 Programmer's Reference Guide</i></a> <span class="cs1-format">(PDF)</span>. Commodore Business Machines. 1982.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Commodore+64+Programmer%27s+Reference+Guide&rft.pub=Commodore+Business+Machines&rft.date=1982&rft_id=http%3A%2F%2Fwww.classiccmp.org%2Fcini%2Fpdf%2FCommodore%2FC64%2520Programmer%2527s%2520Reference%2520Guide.pdf&rfr_id=info%3Asid%2Fen.wikipedia.org%3AWang+BASIC" class="Z3988"></span></li></ul> <div class="navbox-styles"><style data-mw-deduplicate="TemplateStyles:r1129693374">.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}</style><style data-mw-deduplicate="TemplateStyles:r1236075235">.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}body.skin--responsive .mw-parser-output .navbox-image img{max-width:none!important}@media print{body.ns-0 .mw-parser-output .navbox{display:none!important}}</style></div><div role="navigation" class="navbox" aria-labelledby="Dialects_of_the_BASIC_programming_language_(list)" style="padding:3px"><table class="nowraplinks mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><style data-mw-deduplicate="TemplateStyles:r1239400231">.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}html.skin-theme-clientpref-night .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}@media(prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}}@media print{.mw-parser-output .navbar{display:none!important}}</style><div class="navbar plainlinks hlist navbar-mini"><ul><li class="nv-view"><a href="/wiki/Template:BASIC" title="Template:BASIC"><abbr title="View this template">v</abbr></a></li><li class="nv-talk"><a href="/wiki/Template_talk:BASIC" title="Template talk:BASIC"><abbr title="Discuss this template">t</abbr></a></li><li class="nv-edit"><a href="/wiki/Special:EditPage/Template:BASIC" title="Special:EditPage/Template:BASIC"><abbr title="Edit this template">e</abbr></a></li></ul></div><div id="Dialects_of_the_BASIC_programming_language_(list)" style="font-size:114%;margin:0 4em">Dialects of the <a href="/wiki/BASIC" title="BASIC">BASIC</a> programming language (<a href="/wiki/List_of_BASIC_dialects" title="List of BASIC dialects">list</a>)</div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">Classic</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Microsoft" title="Microsoft">Microsoft</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Microsoft_BASIC" title="Microsoft BASIC">Microsoft BASIC</a></li> <li>TRS-80 BASICs (<a href="/wiki/Level_I_BASIC" title="Level I BASIC">Level I</a>, <a href="/wiki/TRS-80_Level_II_BASIC" class="mw-redirect" title="TRS-80 Level II BASIC">Level II/III</a>)</li> <li>Thomson <a href="/wiki/Microsoft_Basic_1.0" title="Microsoft Basic 1.0">BASIC 1.0</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Texas_Instruments" title="Texas Instruments">Texas Instruments</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/TI-BASIC" title="TI-BASIC">TI-BASIC (calculators)</a></li> <li><a href="/wiki/TI_Extended_BASIC" class="mw-redirect" title="TI Extended BASIC">TI Extended BASIC</a> (aka XBasic)</li> <li><a href="/wiki/TI-BASIC_83" title="TI-BASIC 83">TI-BASIC 83</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Hewlett-Packard" title="Hewlett-Packard">Hewlett-Packard</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/HP_Time-Shared_BASIC" title="HP Time-Shared BASIC">HP Time-Shared BASIC</a></li> <li><a href="/wiki/Rocky_Mountain_BASIC" title="Rocky Mountain BASIC">Rocky Mountain BASIC</a></li> <li><a href="/wiki/HP_Time-Shared_BASIC" title="HP Time-Shared BASIC">HP Basic</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Locomotive_Software" title="Locomotive Software">Locomotive Software</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Locomotive_BASIC" title="Locomotive BASIC">Locomotive BASIC</a></li> <li><a href="/wiki/Mallard_BASIC" title="Mallard BASIC">Mallard BASIC</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Microcomputer" title="Microcomputer">Microcomputers</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Atom_BASIC" class="mw-redirect" title="Atom BASIC">Atom BASIC</a></li> <li><a href="/wiki/Integer_BASIC" title="Integer BASIC">Integer BASIC</a></li> <li><a href="/wiki/North_Star_BASIC" title="North Star BASIC">North Star BASIC</a></li> <li><a href="/wiki/SCELBAL" title="SCELBAL">SCELBAL</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Minicomputer" title="Minicomputer">Minicomputers</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/BASIC-11" title="BASIC-11">BASIC-11</a></li> <li><a href="/wiki/Business_Basic" title="Business Basic">Business Basic</a> (<a href="/wiki/B32_Business_Basic" title="B32 Business Basic">B32</a>, <a href="/wiki/Data_General_Business_Basic" title="Data General Business Basic">Data General</a>)</li> <li><a href="/wiki/Data_General_Extended_BASIC" title="Data General Extended BASIC">Data General Extended BASIC</a></li> <li><a href="/wiki/Southampton_BASIC_System" title="Southampton BASIC System">Southampton BASIC System</a></li> <li><a class="mw-selflink selflink">Wang BASIC</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Time-sharing" title="Time-sharing">Time-sharing</a> computers</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/BASIC-PLUS" title="BASIC-PLUS">BASIC-PLUS</a></li> <li><a href="/w/index.php?title=Extra!_Basic_Macro_Language&action=edit&redlink=1" class="new" title="Extra! Basic Macro Language (page does not exist)">Extra! Basic Macro Language</a></li> <li><a href="/wiki/VSI_BASIC_for_OpenVMS" title="VSI BASIC for OpenVMS">VSI BASIC for OpenVMS</a></li> <li><a href="/wiki/SUPER_BASIC" title="SUPER BASIC">SUPER BASIC</a></li> <li><a href="/wiki/CALL/360:BASIC" title="CALL/360:BASIC">CALL/360:BASIC</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Other</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/AlphaBasic" title="AlphaBasic">AlphaBasic</a></li> <li><a href="/wiki/Astro_BASIC" class="mw-redirect" title="Astro BASIC">Astro BASIC</a></li> <li><a href="/wiki/BASICODE" title="BASICODE">BASICODE</a></li> <li><a href="/wiki/Business_application_language" title="Business application language">BAL</a></li> <li><a href="/wiki/Casio_BASIC" title="Casio BASIC">Casio BASIC</a></li> <li><a href="/wiki/CBASIC" title="CBASIC">CBASIC</a></li> <li><a href="/wiki/PBASIC" title="PBASIC">PBASIC</a></li> <li><a href="/wiki/SDS_BASIC" title="SDS BASIC">SDS BASIC</a></li> <li><a href="/wiki/Tiny_BASIC" title="Tiny BASIC">Tiny BASIC</a></li> <li><a href="/wiki/UBASIC" title="UBASIC">UBASIC</a></li> <li><a href="/wiki/ZBasic" title="ZBasic">ZBasic</a></li> <li><a href="/w/index.php?title=ETBASIC&action=edit&redlink=1" class="new" title="ETBASIC (page does not exist)">ETBASIC</a><span class="noprint" style="font-size:85%; font-style: normal;"> [<a href="https://zh.wikipedia.org/wiki/ETBASIC" class="extiw" title="zh:ETBASIC">zh</a>]</span></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/BASIC_extension" title="BASIC extension">Extenders</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/BASIC_8" title="BASIC 8">BASIC 8</a></li> <li>Graphics BASIC</li> <li><a href="/wiki/Simons%27_BASIC" title="Simons' BASIC">Simons' BASIC</a></li> <li><a href="/wiki/Super_Expander" title="Super Expander">Super Expander</a></li> <li><a href="/wiki/Super_Expander_64" title="Super Expander 64">Super Expander 64</a></li> <li><a href="/wiki/YS_MegaBasic" title="YS MegaBasic">YS MegaBasic</a></li></ul> </div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Procedural_programming" title="Procedural programming">Procedure</a>-<br />oriented</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Proprietary_software" title="Proprietary software">Proprietary</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/AmigaBASIC" class="mw-redirect" title="AmigaBASIC">AmigaBASIC</a></li> <li><a href="/wiki/AMOS_(programming_language)" title="AMOS (programming language)">AMOS BASIC</a></li> <li><a href="/wiki/ASIC_programming_language" title="ASIC programming language">ASIC</a></li> <li><a href="/wiki/BasicX" title="BasicX">BasicX</a></li> <li><a href="/wiki/Beta_BASIC" title="Beta BASIC">Beta BASIC</a></li> <li><a href="/wiki/FutureBASIC" title="FutureBASIC">FutureBASIC</a></li> <li><a href="/wiki/GRASS_(programming_language)" title="GRASS (programming language)">GRASS</a></li> <li><a href="/wiki/Liberty_BASIC" title="Liberty BASIC">Liberty BASIC</a></li> <li><a href="/wiki/LSE_(programming_language)" title="LSE (programming language)">LSE</a></li> <li><a href="/wiki/MapBasic" title="MapBasic">MapBasic</a></li> <li><a href="/wiki/Mobile_BASIC" title="Mobile BASIC">Mobile BASIC</a></li> <li><a href="/wiki/OWBasic" title="OWBasic">OWBasic</a></li> <li><a href="/wiki/PowerBASIC" title="PowerBASIC">PowerBASIC</a></li> <li><a href="/wiki/PureBasic" title="PureBasic">PureBasic</a></li> <li><a href="/wiki/Petit_Computer" title="Petit Computer">SmileBASIC</a></li> <li><a href="/wiki/Tiger-BASIC" title="Tiger-BASIC">Tiger-BASIC</a></li> <li><a href="/wiki/True_BASIC" title="True BASIC">True BASIC</a></li> <li><a href="/wiki/Turbo_Basic" class="mw-redirect" title="Turbo Basic">Turbo Basic</a></li> <li><a href="/wiki/WordBASIC" title="WordBASIC">WordBASIC</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Free_and_open_source" class="mw-redirect" title="Free and open source">Free and<br />open source</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Basic-256" title="Basic-256">Basic-256</a></li> <li><a href="/wiki/Basic4GL" title="Basic4GL">Basic4GL</a></li> <li><a href="/wiki/BBC_BASIC#Acorn_Archimedes_(RISC_OS)" title="BBC BASIC">BBC BASIC V</a></li> <li><a href="/wiki/The_Game_Creators" title="The Game Creators">DarkBASIC</a></li> <li><a href="/wiki/Euphoria_(programming_language)" title="Euphoria (programming language)">Euphoria</a></li> <li><a href="/wiki/Hindawi_Programming_System" title="Hindawi Programming System">Indic BASIC</a></li> <li><a href="/wiki/Open_Programming_Language" title="Open Programming Language">Open Programming Language</a></li> <li><a href="/wiki/SdlBasic" title="SdlBasic">SdlBasic</a></li> <li><a href="/wiki/SmallBASIC" title="SmallBASIC">SmallBASIC</a></li> <li><a href="/wiki/QB64" title="QB64">QB64</a></li> <li><a href="/wiki/WxBasic" title="WxBasic">wxBasic</a></li> <li><a href="/wiki/XBasic" title="XBasic">XBasic</a></li> <li><a href="/wiki/XBLite" title="XBLite">Xblite</a></li> <li><a href="/wiki/Yabasic" title="Yabasic">Yabasic</a></li></ul> </div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">With <a href="/wiki/Object-oriented_programming" title="Object-oriented programming">object</a><br />extensions</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Proprietary_software" title="Proprietary software">Proprietary</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/AutoIt" title="AutoIt">AutoIt</a></li> <li><a href="/wiki/Chipmunk_Basic" title="Chipmunk Basic">Chipmunk Basic</a></li> <li><a href="/wiki/GLBasic" title="GLBasic">GLBasic</a></li> <li><a href="/wiki/LotusScript" title="LotusScript">LotusScript</a></li> <li><a href="/wiki/Morfik" title="Morfik">Morfik</a></li> <li><a href="/wiki/PowerBASIC" title="PowerBASIC">PowerBASIC</a></li> <li>ProvideX</li> <li>Run BASIC</li> <li><a href="/wiki/Visual_Basic_for_Applications" title="Visual Basic for Applications">VBA</a></li> <li><a href="/wiki/VBScript" title="VBScript">VBScript</a></li> <li>VB 5 for <a href="/wiki/Microsoft_Excel" title="Microsoft Excel">Microsoft Excel</a> 5.0 <ul><li><a href="/wiki/Visual_Studio_Tools_for_Office" title="Visual Studio Tools for Office">VSTO</a></li> <li><a href="/wiki/Visual_Studio_Tools_for_Applications" title="Visual Studio Tools for Applications">VSTA</a></li></ul></li> <li><a href="/wiki/Embedded_Visual_Basic" title="Embedded Visual Basic">Embedded Visual Basic</a></li> <li>WinWrap Basic</li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Free_and_open_source" class="mw-redirect" title="Free and open source">Free and<br />open source</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Blitz_BASIC" title="Blitz BASIC">BlitzMax</a></li> <li><a href="/wiki/FreeBASIC" title="FreeBASIC">FreeBASIC</a></li> <li><a href="/wiki/Microsoft_Small_Basic" title="Microsoft Small Basic">Microsoft Small Basic</a></li> <li><a href="/wiki/Mono_(software)" title="Mono (software)">Mono-Basic</a></li> <li><a href="/wiki/OpenOffice_Basic" title="OpenOffice Basic">OpenOffice Basic</a></li> <li>ScriptBasic</li> <li><a href="/wiki/Roslyn_(compiler)" title="Roslyn (compiler)">Roslyn</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Rapid_application_development" title="Rapid application development">RAD</a><br /><a href="/wiki/GUI_designer" class="mw-redirect" title="GUI designer">designers</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Proprietary_software" title="Proprietary software">Proprietary</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/CA-Realizer" title="CA-Realizer">CA-Realizer</a></li> <li><a href="/wiki/Visual_Basic_(classic)" title="Visual Basic (classic)">Visual Basic (classic)</a></li> <li><a href="/wiki/NS_Basic" title="NS Basic">NS Basic</a></li> <li><a href="/wiki/RapidQ" title="RapidQ">RapidQ</a></li> <li><a href="/wiki/Visual_Basic_(.NET)" title="Visual Basic (.NET)">Visual Basic .NET</a> (<a href="/wiki/Mercury_(RemObjects_BASIC_programming_language)" title="Mercury (RemObjects BASIC programming language)">Mercury</a>)</li> <li><a href="/wiki/Xojo" title="Xojo">Xojo</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Free_and_open_source" class="mw-redirect" title="Free and open source">Free and<br />open source</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li>B4X (<a href="/wiki/Basic4android" title="Basic4android">Basic4android</a>, <a href="/wiki/Basic4ppc" title="Basic4ppc">Basic4ppc</a>)</li> <li><a href="/wiki/Gambas" title="Gambas">Gambas</a></li> <li><a href="/wiki/FreeBASIC" title="FreeBASIC">WinFBE, Visual FB Editor</a></li></ul> </div></td></tr></tbody></table><div></div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Defunct</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Altair_BASIC" title="Altair BASIC">Altair BASIC</a></li> <li><a href="/wiki/Applesoft_BASIC" title="Applesoft BASIC">Applesoft BASIC</a></li> <li><a href="/wiki/Atari_BASIC" title="Atari BASIC">Atari BASIC</a></li> <li><a href="/wiki/Atari_Microsoft_BASIC" title="Atari Microsoft BASIC">Atari Microsoft BASIC</a></li> <li><a href="/wiki/Atari_ST_BASIC" title="Atari ST BASIC">Atari ST BASIC</a></li> <li><a href="/wiki/BASIC_A%2B" title="BASIC A+">BASIC A+</a></li> <li><a href="/wiki/Optimized_Systems_Software#BASIC_XE" title="Optimized Systems Software">BASIC XE</a></li> <li><a href="/wiki/Optimized_Systems_Software#BASIC_XL" title="Optimized Systems Software">BASIC XL</a></li> <li><a href="/wiki/BASIC_Programming" title="BASIC Programming"><i>BASIC Programming</i> (Atari 2600)</a></li> <li><a href="/wiki/BBC_BASIC" title="BBC BASIC">BBC BASIC</a></li> <li><a href="/wiki/Benton_Harbor_BASIC" title="Benton Harbor BASIC">Benton Harbor BASIC</a></li> <li><a href="/wiki/Chinese_BASIC" title="Chinese BASIC">Chinese BASIC</a></li> <li><a href="/wiki/Commodore_BASIC" title="Commodore BASIC">Commodore BASIC</a></li> <li><a href="/wiki/Color_BASIC" title="Color BASIC">Color BASIC</a></li> <li><a href="/wiki/Dartmouth_BASIC" title="Dartmouth BASIC">Dartmouth BASIC</a></li> <li><a href="/wiki/Disk_Extended_Color_BASIC" title="Disk Extended Color BASIC">Disk Extended Color BASIC</a></li> <li><a href="/wiki/Extended_Color_BASIC" title="Extended Color BASIC">Extended Color BASIC</a></li> <li><a href="/wiki/Family_BASIC" title="Family BASIC">Family BASIC</a></li> <li><a href="/wiki/GFA_BASIC" title="GFA BASIC">GFA BASIC</a></li> <li><a href="/wiki/GW-BASIC" title="GW-BASIC">GW-BASIC</a></li> <li><a href="/wiki/IBM_BASIC" title="IBM BASIC">IBM BASIC</a></li> <li><a href="/wiki/JR-BASIC" title="JR-BASIC">JR-BASIC</a></li> <li><a href="/wiki/MacBASIC" title="MacBASIC">MacBASIC</a></li> <li><a href="/wiki/MBASIC" title="MBASIC">MBASIC</a></li> <li><a href="/wiki/MSX_BASIC" title="MSX BASIC">MSX BASIC</a></li> <li><a href="/wiki/MS_BASIC_for_Macintosh" title="MS BASIC for Macintosh">MS BASIC for Macintosh</a></li> <li><a href="/wiki/QBasic" title="QBasic">QBasic</a></li> <li><a href="/wiki/QuickBASIC" title="QuickBASIC">QuickBASIC</a></li> <li><a href="/wiki/S-BASIC" title="S-BASIC">S-BASIC</a></li> <li><a href="/wiki/Sinclair_BASIC" title="Sinclair BASIC">Sinclair BASIC</a></li> <li><a href="/wiki/STOS_BASIC" title="STOS BASIC">STOS BASIC</a></li> <li><a href="/wiki/SuperBASIC" title="SuperBASIC">SuperBASIC</a></li> <li><a href="/wiki/TI_BASIC_(TI_99/4A)" title="TI BASIC (TI 99/4A)">TI BASIC (TI 99/4A)</a></li> <li><a href="/wiki/Turbo-BASIC_XL" title="Turbo-BASIC XL">Turbo-BASIC XL</a></li> <li><a href="/wiki/Vilnius_BASIC" title="Vilnius BASIC">Vilnius BASIC</a></li></ul> </div></td></tr></tbody></table></div> <!-- NewPP limit report Parsed by mw‐api‐ext.eqiad.main‐7c69cf4689‐m82sn Cached time: 20241113145005 Cache expiry: 1501801 Reduced expiry: true Complications: [vary‐revision‐sha1, show‐toc] CPU time usage: 0.695 seconds Real time usage: 0.924 seconds Preprocessor visited node count: 9227/1000000 Post‐expand include size: 99193/2097152 bytes Template argument size: 7170/2097152 bytes Highest expansion depth: 15/100 Expensive parser function count: 176/500 Unstrip recursion depth: 1/20 Unstrip post‐expand size: 87219/5000000 bytes Lua time usage: 0.375/10.000 seconds Lua memory usage: 5970321/52428800 bytes Number of Wikibase entities loaded: 1/400 --> <!-- Transclusion expansion time report (%,ms,calls,template) 100.00% 796.841 1 -total 24.34% 193.917 65 Template:Sfn 15.65% 124.711 5 Template:Navbox 15.38% 122.571 2 Template:Reflist 13.65% 108.760 1 Template:BASIC 13.48% 107.387 1 Template:Infobox_programming_language 13.16% 104.860 171 Template:Code 12.18% 97.033 1 Template:Infobox 10.69% 85.184 1 Template:Primary_sources 10.15% 80.880 1 Template:Cite_web --> <!-- Saved in parser cache with key enwiki:pcache:idhash:66066959-0!canonical and timestamp 20241113145005 and revision id 1249960491. Rendering was triggered because: unknown --> </div><!--esi <esi:include src="/esitest-fa8a495983347898/content" /> --><noscript><img src="https://login.wikimedia.org/wiki/Special:CentralAutoLogin/start?type=1x1" alt="" width="1" height="1" style="border: none; position: absolute;"></noscript> <div class="printfooter" data-nosnippet="">Retrieved from "<a dir="ltr" href="https://en.wikipedia.org/w/index.php?title=Wang_BASIC&oldid=1249960491">https://en.wikipedia.org/w/index.php?title=Wang_BASIC&oldid=1249960491</a>"</div></div> <div id="catlinks" class="catlinks" data-mw="interface"><div id="mw-normal-catlinks" class="mw-normal-catlinks"><a href="/wiki/Help:Category" title="Help:Category">Categories</a>: <ul><li><a href="/wiki/Category:BASIC_interpreters" title="Category:BASIC interpreters">BASIC interpreters</a></li><li><a href="/wiki/Category:BASIC_programming_language_family" title="Category:BASIC programming language family">BASIC programming language family</a></li><li><a href="/wiki/Category:Wang_Laboratories" title="Category:Wang Laboratories">Wang Laboratories</a></li></ul></div><div id="mw-hidden-catlinks" class="mw-hidden-catlinks mw-hidden-cats-hidden">Hidden categories: <ul><li><a href="/wiki/Category:Articles_lacking_reliable_references_from_December_2020" title="Category:Articles lacking reliable references from December 2020">Articles lacking reliable references from December 2020</a></li><li><a href="/wiki/Category:All_articles_lacking_reliable_references" title="Category:All articles lacking reliable references">All articles lacking reliable references</a></li></ul></div></div> </div> </main> </div> <div class="mw-footer-container"> <footer id="footer" class="mw-footer" > <ul id="footer-info"> <li id="footer-info-lastmod"> This page was last edited on 7 October 2024, at 18:55<span class="anonymous-show"> (UTC)</span>.</li> <li id="footer-info-copyright">Text is available under the <a href="/wiki/Wikipedia:Text_of_the_Creative_Commons_Attribution-ShareAlike_4.0_International_License" title="Wikipedia:Text of the Creative Commons Attribution-ShareAlike 4.0 International License">Creative Commons Attribution-ShareAlike 4.0 License</a>; additional terms may apply. By using this site, you agree to the <a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Terms_of_Use" class="extiw" title="foundation:Special:MyLanguage/Policy:Terms of Use">Terms of Use</a> and <a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy" class="extiw" title="foundation:Special:MyLanguage/Policy:Privacy policy">Privacy Policy</a>. Wikipedia® is a registered trademark of the <a rel="nofollow" class="external text" href="https://wikimediafoundation.org/">Wikimedia Foundation, Inc.</a>, a non-profit organization.</li> </ul> <ul id="footer-places"> <li id="footer-places-privacy"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy">Privacy policy</a></li> <li id="footer-places-about"><a href="/wiki/Wikipedia:About">About Wikipedia</a></li> <li id="footer-places-disclaimers"><a href="/wiki/Wikipedia:General_disclaimer">Disclaimers</a></li> <li id="footer-places-contact"><a href="//en.wikipedia.org/wiki/Wikipedia:Contact_us">Contact Wikipedia</a></li> <li id="footer-places-wm-codeofconduct"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Universal_Code_of_Conduct">Code of Conduct</a></li> <li id="footer-places-developers"><a href="https://developer.wikimedia.org">Developers</a></li> <li id="footer-places-statslink"><a href="https://stats.wikimedia.org/#/en.wikipedia.org">Statistics</a></li> <li id="footer-places-cookiestatement"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Cookie_statement">Cookie statement</a></li> <li id="footer-places-mobileview"><a href="//en.m.wikipedia.org/w/index.php?title=Wang_BASIC&mobileaction=toggle_view_mobile" class="noprint stopMobileRedirectToggle">Mobile view</a></li> </ul> <ul id="footer-icons" class="noprint"> <li id="footer-copyrightico"><a href="https://wikimediafoundation.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/static/images/footer/wikimedia-button.svg" width="84" height="29" alt="Wikimedia Foundation" loading="lazy"></a></li> <li id="footer-poweredbyico"><a href="https://www.mediawiki.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/w/resources/assets/poweredby_mediawiki.svg" alt="Powered by MediaWiki" width="88" height="31" loading="lazy"></a></li> </ul> </footer> </div> </div> </div> <div class="vector-settings" id="p-dock-bottom"> <ul></ul> </div><script>(RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgHostname":"mw-web.codfw.main-84d8f4b96-gc6mw","wgBackendResponseTime":149,"wgPageParseReport":{"limitreport":{"cputime":"0.695","walltime":"0.924","ppvisitednodes":{"value":9227,"limit":1000000},"postexpandincludesize":{"value":99193,"limit":2097152},"templateargumentsize":{"value":7170,"limit":2097152},"expansiondepth":{"value":15,"limit":100},"expensivefunctioncount":{"value":176,"limit":500},"unstrip-depth":{"value":1,"limit":20},"unstrip-size":{"value":87219,"limit":5000000},"entityaccesscount":{"value":1,"limit":400},"timingprofile":["100.00% 796.841 1 -total"," 24.34% 193.917 65 Template:Sfn"," 15.65% 124.711 5 Template:Navbox"," 15.38% 122.571 2 Template:Reflist"," 13.65% 108.760 1 Template:BASIC"," 13.48% 107.387 1 Template:Infobox_programming_language"," 13.16% 104.860 171 Template:Code"," 12.18% 97.033 1 Template:Infobox"," 10.69% 85.184 1 Template:Primary_sources"," 10.15% 80.880 1 Template:Cite_web"]},"scribunto":{"limitreport-timeusage":{"value":"0.375","limit":"10.000"},"limitreport-memusage":{"value":5970321,"limit":52428800},"limitreport-logs":"anchor_id_list = table#1 {\n [\"CITEREFBASIC21979\"] = 1,\n [\"CITEREFBASIC31982\"] = 1,\n [\"CITEREFCommodore1982\"] = 1,\n [\"CITEREFIntro1976\"] = 1,\n [\"CITEREFWangBASIC1976\"] = 1,\n}\ntemplate_list = table#1 {\n [\"=\"] = 13,\n [\"BASIC\"] = 1,\n [\"Cite book\"] = 6,\n [\"Cite news\"] = 2,\n [\"Cite web\"] = 1,\n [\"Code\"] = 171,\n [\"Efn\"] = 4,\n [\"Frac\"] = 2,\n [\"Infobox programming language\"] = 1,\n [\"Key\"] = 3,\n [\"Nobreak\"] = 1,\n [\"Notelist\"] = 1,\n [\"Primary sources\"] = 1,\n [\"Reflist\"] = 1,\n [\"Sfn\"] = 65,\n [\"Start date and age\"] = 1,\n}\narticle_whitelist = table#1 {\n}\n"},"cachereport":{"origin":"mw-api-ext.eqiad.main-7c69cf4689-m82sn","timestamp":"20241113145005","ttl":1501801,"transientcontent":true}}});});</script> <script type="application/ld+json">{"@context":"https:\/\/schema.org","@type":"Article","name":"Wang BASIC","url":"https:\/\/en.wikipedia.org\/wiki\/Wang_BASIC","sameAs":"http:\/\/www.wikidata.org\/entity\/Q104880026","mainEntity":"http:\/\/www.wikidata.org\/entity\/Q104880026","author":{"@type":"Organization","name":"Contributors to Wikimedia projects"},"publisher":{"@type":"Organization","name":"Wikimedia Foundation, Inc.","logo":{"@type":"ImageObject","url":"https:\/\/www.wikimedia.org\/static\/images\/wmf-hor-googpub.png"}},"datePublished":"2020-12-10T14:16:07Z","dateModified":"2024-10-07T18:55:49Z"}</script> </body> </html>