Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Tiny BASIC
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
===Dialects compared=== The following table compares the language feature of Tiny BASIC implementations against other prominent BASICs that preceded them. <div style="overflow-x: auto;"> {{table alignment}} {{sort-under}} {| class="wikitable sortable sort-under col4center" |+ style="text-align: left;" | Comparison of BASIC Implementations – Tiny BASICs and Other BASICs |- ! {{verth|Date<br/>Published}} ! Dialect ! Programmer(s) !! Processor !! Type !! INPUT !! LET !! PRINT !! GOTO !! IF ...THEN !! GOSUB !! RETURN !! END !! RUN !! LIST !! CLEAR !! NEW !! REM !! FOR/NEXT !! READ / DATA / RESTORE !! Added BASIC commands !! Customizations !! Expressions !! relop !! Functions !! RND !! Memory Function !! Line numbers !! Statement delimiter !! Errors !! Precision !! Arithmetic !! Variables !! Arrays !! Strings |- ! {{verth|va=middle|{{Date table sorting|October 1964}}}} ! {{verth|va=middle|DTSS Dartmouth BASIC<br/>(version 2)<ref>{{cite web|url=http://www.mirrorservice.org/sites/www.bitsavers.org/pdf/dartmouth/BASIC_Oct64.pdf |archive-url=https://ghostarchive.org/archive/20221009/http://www.mirrorservice.org/sites/www.bitsavers.org/pdf/dartmouth/BASIC_Oct64.pdf |archive-date=2022-10-09 |url-status=live|title=BASIC}}</ref>}} | (Dartmouth students) || GE-225 || Compile-and-go || {{N/A|N/A}} [!] || LET var = expression || PRINT expr-list { , / ; / } || GO TO number || IF expression relop expression THEN line-number || GOSUB number || RETURN || END || RUN || LIST--start || {{N/A}} || NEW [prompts for program name] || REM || FOR / TO / STEP / NEXT || READ, DATA || STOP || {{N/A}} || precedence, ^ || < <= = >= > <> || INT, SIN, COS, TAN, ATN, EXP, LOG, ABS, SQR, DEF FN || RND(0) 0..1 || {{N/A}} || 1 to 99999 || {{CNone|None}} || 22 defined || 9 digits || ±999,999,999; E notation base 2 -256 to +255 (E±76). || A–Z, A0–Z9 || DIM (one letter name, two dimensions); if omitted, assumed to go from 0 to 10; up to 1500 elements across all arrays || {{CNone|None}} (added in version 4) |- ! {{verth|va=middle|{{Date table sorting|February 1970}}}} ! {{verth|va=middle|DEC BASIC-8<ref>{{cite web|url=https://archive.org/details/bitsavers_decpdp8tsseb70_4173869|title=TSS/8 TIME-SHARING SYSTEM USER'S GUIDE|date=February 1970 }}</ref>}} | (DEC staff) || PDP-8 || Compile-and-go || INPUT var-list || LET var = expression || PRINT expr-list { , / ; / } || GO TO number || IF expression relop expression [THEN/GO TO] line-number || GOSUB number || RETURN || END || RUN || LIST (first (, last)) || {{N/A}} || NEW [prompts for program name] || REM || FOR / TO / STEP / NEXT || READ, DATA, RESTORE || STOP, OLD, SAVE, UNSAVE || DELETE (first (, last)), BYE || precedence, ^ || < <= = >= > <> || INT, SGN, SIN, COS, TAN, ATN, EXP, LOG, ABS, SQR, DEF FN || RND(0) 0..1 || {{N/A}} || 1 to 2045 || {{CNone|None}} || 23 defined || {{dunno}} || ±134,217,727; 14E-38<N<1.7E38 || A–Z, AA–Z9 || DIM (one letter name, two dimensions) || {{CNone|None}} |- ! {{verth|va=middle|{{Date table sorting|June 1974}}}} ! {{verth|va=middle|UIUC BASIC<ref>{{cite web|url=https://archive.org/details/basiclanguageint658weav|title=A BASIC LANGUAGE INTERPRETER FOR THE INTEL 8008 MICROPROCESSOR|year=1974 }}</ref>}} | Alfred Weaver, Michael Tindall, Ronald Danielson || 8008 || Interpreter || INPUT <variable> {, <variable>}* || LET var = formula || PRINT <string> / <formula> {, <string> / <formula>}* || GO TO number || IF expression THEN line-number || GOSUB number || RETURN || END || RUN || {{no2|not documented}} || {{no2|not documented}} || {{no2|not documented}} || REM || FOR / TO / STEP / NEXT || {{N/A}} || DEF FN, STOP || {{N/A}} || precedence, ^ || < <= = >= > # AND OR NOT || FNA..Z, SIN, COS, LOG, SQR, EXP, ATN || {{N/A}} || {{N/A}} || 0 to 999 || {{CNone|None}} || {{no2|not documented}} || 4-byte mantissa and 1-byte exponent [Datapoint 2200 floating-point arithmetic package] || {{no2|not documented}} || A–Z, A0–Z9 || DIM (one letter name, three dimensions) || {{CNone|None}} |- ! {{Date table sorting|1975}} ! {{verth|va=middle|Altair 4K BASIC<ref>{{cite web|url=https://deramp.com/downloads/mfe_archive/010-S100%20Computers%20and%20Boards/00-MITS/40-Software/BASIC/Altair%20BASIC%203.0/Documentation/Altair_8800_BASIC_Reference_Manual_1975.pdf |archive-url=https://ghostarchive.org/archive/20221009/https://deramp.com/downloads/mfe_archive/010-S100%20Computers%20and%20Boards/00-MITS/40-Software/BASIC/Altair%20BASIC%203.0/Documentation/Altair_8800_BASIC_Reference_Manual_1975.pdf |archive-date=2022-10-09 |url-status=live|title=MITS ALTAIR BASIC REFERENCE MANUAL}}</ref>}} | Bill Gates, Paul Allen, Monte Davidoff || 8080 || Interpreter || INPUT ("string",) var-list || (LET) var = expression || PRINT expr-list { , / ; } || GOTO number || IF expression THEN line-number/statement || GOSUB number || RETURN || END || RUN || LIST (start) || {{N/A}} || NEW || REM || FOR / TO / STEP / NEXT || READ, DATA, RESTORE || STOP || {{N/A}} || precedence || < <= = >= > <> || ABS, INT, SGN, SQR, TAB, USR || RND(X) <0, new using X as seed; =0, repeat; >0, next || {{N/A}} || 1 to 65535 || : || 12 defined || 40-bit operand floating || {{dunno}} || {{dunno}} || DIM (one dimension) || {{CNone|None}} |- ! {{verth|va=middle|{{Date table sorting|December 1975}}}} ! {{verth|va=middle|Design Note<ref>{{cite web|url=http://www.classiccmp.org/cini/pdf/DrDobbs/DrDobbs-1976-01-v1n1.pdf |archive-url=https://ghostarchive.org/archive/20221009/http://www.classiccmp.org/cini/pdf/DrDobbs/DrDobbs-1976-01-v1n1.pdf |archive-date=2022-10-09 |url-status=live|title=Dr. Dobb's Journal of Computer Calisthenics and Orthodontia: Running Light Without Overbyte}}</ref>}} | Dennis Allison || {{N/A}} || Interpreter || INPUT var-list || LET var = expression || PRINT expr-list || GOTO expression || IF expression relop expression THEN statement || GOSUB expression || RETURN || END || RUN || LIST || [eq. to NEW] || {{N/A}} || {{N/A}} || {{N/A}} || {{N/A}} || {{N/A}} || {{N/A}} || precedence || < <= = >= > <> >< || {{CNone|None}} || {{CNone|None}} || {{N/A}} || 1 to 255 || {{CNone|None}} || 8 defined || 16-bit || ± 32767 || A–Z || {{CNone|None}} || {{CNone|None}} |- ! {{verth|va=middle|{{Date table sorting|February 1976}}}} ! {{verth|va=middle|Tiny BASIC Extended<ref>{{cite web|url=http://www.classiccmp.org/cini/pdf/DrDobbs/DrDobbs-1976-02-v1n2.pdf |archive-url=https://ghostarchive.org/archive/20221009/http://www.classiccmp.org/cini/pdf/DrDobbs/DrDobbs-1976-02-v1n2.pdf |archive-date=2022-10-09 |url-status=live|title=Dr. Dobb's Journal of Computer Calisthenics and Orthodontia: Running Light Without Overbyte}}</ref>}} | Dick Whipple & John Arnold || 8080 || Interpreter || IN || (LET) var = expression || PR expr-list {,|;} || GO TO || IF expression [no THEN] statement || GO SUB || RET || END || RUN || LST (first (, last)) || {{N/A}} || NEW || {{N/A}} || FOR-NXT (no STEP) || DTA (array LET) || {{N/A}} || {{N/A}} || precedence || < <= = >= > <> >< || TB() spaces in print || RN (random 0-10000) || SZE || 1 to 65535 || $ || 14 defined || 16-bit || ± 32767 || A–Z || DIM, 1- or 2-dimensions, 255x255 max || {{CNone|None}} |- ! {{verth|va=middle|{{Date table sorting|March 1976}}}} ! {{verth|va=middle|Denver Tiny BASIC<ref name="classiccmp_1976-03">{{cite web|url=http://www.classiccmp.org/cini/pdf/DrDobbs/DrDobbs-1976-03-v1n3.pdf |archive-url=https://ghostarchive.org/archive/20221009/http://www.classiccmp.org/cini/pdf/DrDobbs/DrDobbs-1976-03-v1n3.pdf |archive-date=2022-10-09 |url-status=live|title=Dr. Dobb's Journal of Computer Calisthenics and Orthodontia: Running Light Without Overbyte}}</ref>}} | Fred Greeb || 8080 || Interpreter || IN || (LET) var = expression || PR expr-list {,|;} || GOTO || IF expression [no THEN] statement || GOSUB || RET || END || RUN || LIST (first last) || [eq. to NEW] || {{N/A}} || {{N/A}} || {{N/A}} || {{N/A}} || TAPE [SAVE], LOAD || CLRS [CLS] || precedence || < <= = >= > <> >< || || RND(0), RND(1) || SIZE || 2 to 255 || : || 20 defined || 16-bit || ± 32767 || A–Z, A1 to A6 to Z6 || DIM, 1 dimension || {{CNone|None}} |- ! {{verth|va=middle|{{Date table sorting|March 1976}}}} ! {{verth|va=middle|6800 Tiny BASIC<ref name="classiccmp_1976-03"/>}} | Tom Pittman || 6800 || Interpreter || INPUT (expression) var-list || LET var = expression || PRINT expr-list { , / ; } || GOTO expression || IF expression relop expression THEN statement || GOSUB expression || RETURN || END || RUN || LIST (first last) || [eq. to NEW] || {{N/A}} || REM || {{N/A}} || {{N/A}} || {{N/A}} || {{N/A}} || precedence || < <= = >= > <> >< || USR() || RND() || {{N/A}} || 1 to 65535 || {{CNone|None}} || 53 defined || 16-bit || ± 32767 || A–Z || {{CNone|None}} || {{CNone|None}} |- ! {{verth|va=middle|{{Date table sorting|April 1976}}}} ! {{verth|va=middle|MINOL<ref>{{cite web|url=http://www.schorn.ch/cpm/zip/minolvtl.zip|title=Dr. Dobb's Journal of Computer Calisthenics and Orthodontia: Running Light Without Overbyte}}</ref>}} | Eric T. Mueller || 8080 || Interpreter || IN || {{Codett|code=(LET) var = expression|lang=basic}}|| {{Codett|code=PR expr-list {;}|lang=basic}}|| [{{Codett|code=GOTO 0|lang=basic}} jumps back to start of direct statement] || {{Codett|code=IF expression relop expression ; statement|lang=basic}}|| {{N/A}} || {{N/A}} || END || RUN || LIST || CLEAR [only variables] || NEW || {{N/A}} || {{N/A}} || {{N/A}} || {{N/A}} || {{No|No spaces permitted except in strings}} || {{No|No operator precedence}} || < = # || {{Codett|code=$ [CHR$]|lang=basic}}||{{Codett|code=! [RND]|lang=basic}}|| {{N/A}} || 1 to 254 || : || 6 defined || 8-bit || 0 to 255 || A–Z || (H,L) memory location || single char |- ! {{verth|va=middle|{{Date table sorting|May 1976}}}} ! {{verth|va=middle|Palo Alto Tiny BASIC<ref>{{cite web|url=http://www.autometer.de/unix4fun/z80pack/ftp/altair/tinybasic-1.0.asm|title=Interface Age}}</ref>}} | Li-Chen Wang || 8080 || Interpreter || INPUT [(expression) var]* || (LET) var = expression || PRINT expr-list || GOTO expression || IF expression [no THEN] statement || GOSUB expression || RETURN || STOP || RUN || LIST (start) || {{N/A}} || NEW || REM || FOR / TO / STEP / NEXT || {{N/A}} || STOP || {{N/A}} || precedence || < <= = >= > # || ABS() || RND() || SIZE || 1 to 32767 || ; || 3 defined || 16-bit || ± 32767 || A–Z || @(1 array of 1 dimension) || {{CNone|None}} |- ! {{verth|va=middle|{{Date table sorting|November 1976}}}} ! {{verth|va=middle|NIBL<ref>{{cite web|url=http://www.classiccmp.org/cini/pdf/DrDobbs/DrDobbs-1976-11-12-v1n10.pdf |archive-url=https://ghostarchive.org/archive/20221009/http://www.classiccmp.org/cini/pdf/DrDobbs/DrDobbs-1976-11-12-v1n10.pdf |archive-date=2022-10-09 |url-status=live|title=Dr. Dobb's Journal of Computer Calisthenics and Orthodontia: Running Light Without Overbyte}}</ref>}} | Mark Alexander & Steve Leininger || SC/MP || Interpreter || INPUT ($)var || (LET) var = expression || PR/PRINT expr-list || GOTO expression || IF expression (THEN) statement || GOSUB expression || RETURN || END || RUN || LIST (start) || CLEAR [variables & stack] || NEW || REM || FOR / TO / STEP / NEXT || {{N/A}} || DO/UNTIL || Memory addressing (@ [PEEK/POKE], STAT, PAGE) || precedence || < <= = >= > <> || MOD(), AND, OR, NOT, || RND(A,Z) || TOP || 0 to 32767 || : || 13 four-char defined || 16-bit || ± 32767 || A–Z || memory addressing || {{Codett|1=INPUT$, PRINT$, $exp=exp|2=basic}} |- ! {{verth|va=middle|{{Date table sorting|August 1977}}}} ! {{verth|va=middle|Level I BASIC<ref>{{cite web|url=http://www.classiccmp.org/cpmarchives/trs80/mirrors/www.vavasour.ca/jeff/level1/help.html#language|title=Help for TRS-80 Level I BASIC}}</ref>}} | Steve Leininger || Z80 || Interpreter || INPUT (#digit) [(expression) var]* || (LET) var = expression || PRINT (#digit) expr-list || GOTO number || IF expression THEN statement || GOSUB number || RETURN || END || RUN (start) || LIST (start) || {{N/A}} || NEW || REM || FOR / TO / STEP / NEXT || READ, DATA, RESTORE || STOP, CONT, ON-GOTO/GOSUB || CLOAD, CSAVE, CLS, SET, RESET || precedence || < <= = >= > <> >< || ABS(), INT(), MEM, POINT(X,Y) || RND() || MEM || 1 to 32767 || : || 3 defined || 16-bit || ± 32767 || A–Z || A(1 array of 1 dimension) || {{Codett|A$, B$|basic}} |- ! {{verth|va=middle|{{Date table sorting|June 1976}}}} ! {{verth|va=middle|MICRO BASIC 1.3<ref>{{cite web|url=http://www.swtpc.com/mholley/NewsLetter1/MicroBasic.htm|title=Robert Uiterwyk's MICRO BASIC|access-date=2012-01-15|archive-date=2012-02-05|archive-url=https://web.archive.org/web/20120205030911/http://www.swtpc.com/mholley/NewsLetter1/MicroBasic.htm|url-status=dead}}</ref>}} | Robert Uiterwyk || 6800 || Interpreter || INPUT var-list || (LET) var = expression || PRINT expr-list { , / ; } || GOTO expression || IF expression relop expression THEN statement || GOSUB expression || RETURN || END || RUN || LIST (first (, last)) || {{N/A}} || NEW || {{N/A}} || FOR/TO/NEXT (no STEP) || {{N/A}} || TAB() || {{N/A}} || precedence || < <= = >= > <> >< || RND, SIZE || RND [returns 1-32762] || SIZE (statement that prints bytes used and bytes free) || 1 to 65535 || {{CNone|None}} || 17 defined || 16-bit [later BCD!] || ± 32767 || A–Z || DIM (two dimensions, max size of 255) || {{CNone|None}} |- ! {{verth|va=middle|{{Date table sorting|June 1976}}}} ! {{verth|va=middle|SCientific ELementary<br/>BAsic Language<br/>(SCELBAL)<ref>{{cite web|url=http://www.pestingers.net/pdfs/other-computers/mark-8/software/scelbal.pdf |archive-url=https://ghostarchive.org/archive/20221009/http://www.pestingers.net/pdfs/other-computers/mark-8/software/scelbal.pdf |archive-date=2022-10-09 |url-status=live|title=SCELBAL – A higher level language for 8008/8080 systems}}</ref><ref name="SCELBAL" />}} | Mark Arnold & Nat Wadsworth || 8008 || Interpreter || INPUT var-list || (LET) var = expression || PRINT expr-list {, / ; / } || GOTO number || IF expression relop expression GOTO line-number | THEN statement || GOSUB number || RETURN || END || RUN || LIST || {{N/A}} || SCR[atch] || REM || FOR / TO / STEP / NEXT || {{N/A}} || SAVE, LOAD || UDF [USR] || precedence, ^ || < <= = >= > <> || INT, SGN, ABS, SQR, CHR [usable only in PRINT], TAB || RND(0) 0..1 || {{N/A}} || 1 to 999999 || {{CNone|None}} || 18 defined || 32-bit operand floating or fixed point || ±134,217,727; 14E-38<N<1.7E38 || {{dunno}} || DIM (one letter name, one dimension; up to 4 arrays of up to 64 entries in total) || {{CNone|None}} |- ! {{verth|va=middle|{{Date table sorting|October 1976}}}} ! {{verth|va=middle|Apple I BASIC<ref>{{cite web|url=https://archive.org/details/applei_basicman|title=PRELIMINARY APPLE BASIC USERS MANUAL|date=October 1976}}</ref>}} | Steve Wozniak || 6502 || Interpreter || INPUT ("string",) var-list || (LET) var = expression || PRINT expr-list { , / ; } || GOTO expression || IF expression relop expression THEN line-number/statement || GOSUB expression || RETURN || END || RUN (start) || LIST (first (, last)) || {{N/A}} || SCR || REM || FOR / TO / STEP / NEXT || {{N/A}} || AUTO, DEL, POKE || TAB (command), CALL || precedence || < <= = >= > <> # AND OR NOT MOD || SGN, ABS, PEEK(), LEN() || RND(X) 0..X (or X..0!) || HIMEM, LOMEM || 1 to 32767 || {{CNone|None}} [early version, then :] || 16 defined || 16-bit || ± 32767 || A–Z followed by any number of alphanumeric || DIM (one dimension) || dimensioned |- ! {{verth|va=middle|{{Date table sorting|December 1976}}}} ! {{verth|va=middle|LLL BASIC<ref>{{cite web|url=http://bitsavers.trailing-edge.com/pdf/interfaceAge/197612/110-124.pdf |archive-url=https://ghostarchive.org/archive/20221009/http://bitsavers.trailing-edge.com/pdf/interfaceAge/197612/110-124.pdf |archive-date=2022-10-09 |url-status=live|title=Interface Age}}</ref>}} | (University of Idaho staff) || 8080 || Interpreter || INPUT var-list || (LET) var = expression || PRINT expr-list { , / ;} || GO TO number || IF expression relop expression (THEN) statement || GO SUB number || RETURN || END || RUN || LIST || {{N/A}} || SCR || REM || FOR/TO/NEXT (no STEP) || {{N/A}} || STOP || CALL, GET(), PUT() || precedence || < <= = >= > <> >< || || {{dunno|No RND?}} || {{N/A}} || 0 to 32767 || : || 14 defined || 32-bit operand floating point || {{dunno}} || A–Z, A0–Z9 || DIM (integers only, one letter name, one dimension, max size of 255) || {{CNone|None}} |- ! {{verth|va=middle|{{Date table sorting|January 1980}}}} ! {{verth|va=middle|Sinclair 4K BASIC<ref>{{cite web|url= https://cdn.hackaday.io/files/1707077303528288/ZX80_OperatingManual.pdf}}</ref>}} |John Grant|| Z-80 || Interpreter || INPUT var || LET var = expression || PRINT expr-list { , / ;} || GO TO number || IF expression THEN statement || GO SUB number || RETURN || {{N/A}} || RUN (number) || LIST || CLEAR || NEW || REM || FOR/TO/NEXT (no STEP) || {{N/A}} || STOP || POKE || precedence || < = > || ABS, CHR$, CODE, PEEK, RND, STR$, TL$, USR || RND, RANDOMISE || {{N/A}} || 1 to 9999 || {{N/A}} || 10 defined || 16-bit integer || 16-bit integer || A–Z followed by any number of alphanumeric || DIM A-Z (integers only, one letter name, one dimension, max size of 255) || A$-Z$ |} </div>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)