Knowledge (XXG)

thinBasic

Source 📝

22: 695:
A programmer can define custom functions and procedures (called Subs); they can have up to 32 parameters. Both functions and procedures do not need to be declared before use. Parameters can be marked as optional, and they can also be initialized to default values. Each parameter can be specified to
1040: 687:
To better structure the code, thinBASIC provides the functions and procedures functionality. There is one function with special treatment, called TBMAIN, which is guaranteed to be executed first. It represents the same function as main() function in
1023:
The development team puts strong focus on documentation of the language and on the learning resources. The language itself is documented in extensive help file and the default installation contains tutorial and much example code too.
1273:. Another strength of the language is a wide range of commands covering various areas of interest and for BASIC traditionally - strong focus on string handling. The language is under continuous development and maintenance. 638:, with specific structure. This allows the module to contain not just typical functions and procedures, but also for example constants and user-defined types definitions, immediately available for script without need for 1276:
The fact that thinBASIC is designed for Windows only can be seen as disadvantage as well, for those who seek cross-platform tools. The speed of execution without the use of optimizations is lower compared to output of
273:
with a central core engine architecture surrounded by many specialized modules. Although originally designed mainly for computer automation, thanks to its modular structure it can be used for wide range of tasks.
1269:. Although interpreted, thinBASIC is considered to have usually fast execution. When the interpreter nature of the language hits the limits, it is possible to perform optimizations using partial 456:, WHILE/WEND, DO/LOOP WHILE ..., DO/LOOP UNTIL ...) and it also puts very strong effort on providing wide range of built-in functions for number crunching and especially string handling. 1624: 921:
ThinBASIC does not support any form of project files at the moment, but it encourages splitting code to units by providing multiple file extensions for different use:
2433: 310:. Thanks to this, thinBASIC optionally allows use of implicit line continuation, simplified addition, subtraction, multiplication and division operators, shortened 2701: 138: 287:
As the name suggests, the biggest influence on the syntax of this language was the BASIC language. But, unlike traditional BASICs, as known from the
46:
of the topic and provide significant coverage of it beyond a mere trivial mention. If notability cannot be shown, the article is likely to be
2320: 894:
ThinBASIC supports calling functions from third-party DLLs; programmer needs to declare them first to be able to access the functionality.
314: 117: 43: 2183: 1651: 2696: 2315: 569: 2388: 2298: 1931: 642:. The only thing needed is to explicitly mention the usage of module in the code – for file handling it would look like: 39: 2083: 1612: 1373: 318: 98: 55: 2243: 2058: 1856: 1850: 1618: 608:
Besides the Core module, thinBASIC offers other modules, each covering a specific area of functionality, for example:
311: 159: 70: 1399: 2537: 2532: 2188: 2093: 1606: 1600: 1412: 444:
ThinBASIC does offer the main flow control statements, such as SELECT CASE, IF ... THEN/ELSEIF/ELSE/END IF, loops (
2580: 2193: 2063: 1012: 77: 593:
Variables can be defined in global, local or static scope. ThinBASIC supports arrays of up to three dimensions.
1861: 1270: 1008: 996: 689: 573: 303: 1490: 1516: 1464: 1451: 1282: 84: 32: 2630: 2414: 2033: 1665: 1558: 1262: 731:' This will print 10 20 30, because unused optional parameters #2 and #3 are initialized to 20 and 30 2517: 2360: 2327: 1890: 1699: 1425: 886:
The functions can be called directly, as in the listing above, or by composing their name at run-time.
656:' Function File_Load comes from the module, it returns the content of passed file in form of String 51: 66: 2585: 2449: 2401: 2340: 2254: 2158: 2045: 1763: 1758: 1753: 1594: 1588: 1266: 910: 635: 267: 264: 229: 206: 1629: 47: 2665: 2555: 2429: 1773: 1706: 1644: 1329: 1052: 137: 779:' This will print 10 3 5, because we specify all the parameters, so the defaults are discarded 294:
For example, it requires the programmer to declare variables and it does not feature the infamous
1846: 145: 2542: 2378: 2178: 2014: 1729: 1716: 1441:. Proceedings of the 1st international conference Robotics in Education, RiE2010. 2010. p. 202 1305: 1294: 1254: 270: 190: 1971: 2370: 2004: 1814: 1781: 1258: 928:.tBasicI - include file, containing declaration of functions from 3rd party DLLs for example 449: 197: 185: 1257:
platform and this is why it makes a good use of resources provided by this system, such as
935:
The main code can reference these files using #include directive, which can use wildcards:
2575: 2565: 2507: 2365: 2309: 1988: 1745: 1689: 302:
statements. Some aspects of the syntax are even inspired in non-BASIC languages, such as
752:' This will print 10 3 30, because unused optional parameter #3 is initialized to 30 2670: 2650: 2522: 2267: 2123: 2009: 1900: 1842: 1637: 1162:' If length of username is 0 then no name is specified, else program will say hello 967:' This would include all files matching the wildcard dialog_*.tBasicU, when present 91: 1047:
ThinBASIC comes with own IDE, called thinAir, in the default installation. It offers:
1039: 2690: 2675: 2560: 2463: 2088: 1809: 1796: 1786: 1695: 1321: 1031:
and on the homepage of the programming language as well (please see external links).
445: 2590: 2502: 2392: 2103: 2019: 1876: 1829: 1313: 493: 434: 404:' New syntax introduced in 1.9.10.0 allows defining type from string expression 1079:
This component is called thinDebug and can be watched on the image linked below.
2570: 2512: 2409: 2350: 2277: 2143: 2133: 2078: 1936: 1921: 1895: 1735: 639: 1439:
Parallelizing the Precomputed Scan Matching Method for Graphics Card processing
586:
static members (members whose value is shared among all variables of given UDT)
2660: 2655: 2640: 2287: 2203: 2138: 2113: 2073: 2053: 1956: 1916: 1885: 1866: 1804: 1353: 1347: 1343: 1337: 1317: 1301: 1297: 1000: 438: 248: 1573: 1568: 1083: 2625: 2605: 2595: 2550: 2527: 2478: 2467: 2355: 2168: 2148: 2118: 1951: 1681: 1333: 1325: 1278: 1004: 979:' -- Main code goes here, and can use functionality from #included files 583:
the possibility to inherit members from one or more other user-defined types
1532: 1503: 1477: 1386: 2615: 2610: 2600: 2419: 2303: 2198: 2173: 2098: 1926: 1837: 1724: 601:
The elemental functionality of the language is provided by the so-called
453: 202: 791:' User defined function with optional parameters with default values 433:
Another source of inspiration are the modern versions of BASIC, such as
2645: 2272: 2228: 2213: 2108: 1996: 1976: 1819: 1563: 1553: 897:
Thanks to this mechanism, thinBASIC allows using technologies such as
2635: 2620: 2473: 2424: 2282: 2262: 2223: 2218: 2068: 1966: 1961: 1946: 1941: 902: 898: 579:
The special features related to user-defined types in thinBASIC are:
1027:
Various articles on use of thinBASIC have been published in form of
568:
Besides those mentioned in the table above, a programmer can define
605:
module, which is loaded by default, and takes care of parsing too.
307: 1661: 1038: 464:
ThinBASIC supports a wide range of numeric and string data types.
288: 260: 236: 1094:
Console program, which asks user about name and then greets him:
38:
Please help to demonstrate the notability of the topic by citing
2439: 2208: 509: 1633: 2459: 1099:' Specifies program will use functions from console module 906: 612: 15: 1578: 1548: 1583: 1528: 217: 1597:, March 15, 2007, 3D graphics in ThinBASIC, Petr Schreiber. 995:
The language can be enhanced by module development using
1437:
SCHREIBER, P.; ONDROUŠEK, V.; VĚCHET, S.; KREJSA, J..
1234:' Waits for any key from user before program ends 291:
era, thinBASIC does differ in few important points.
2495: 2448: 2400: 2387: 2339: 2253: 2241: 2157: 2044: 2032: 1987: 1909: 1875: 1828: 1795: 1772: 1744: 1715: 1680: 1673: 242: 228: 212: 196: 184: 158: 144: 1069:Creation of independent executable from the script 931:.tBasicU - code unit containing auxiliary routines 1591:, November 16, 2007, About ThinBasic, Eros Olmi. 1108:' TBMain represents main body of the program 374:' C/C++ inspired syntax allowed in thinBASIC 1063:Ability to view one source using multiple views 692:programming language, but its use is optional. 696:be passed by value (default) or by reference. 1645: 326:' Traditional syntax allowed in thinBASIC 8: 1060:Multiple source files opened at once in tabs 707:' Program body starts in TBMain function 130: 2397: 2250: 2041: 1677: 1652: 1638: 1630: 1077:thinAir allows using the debugger as well. 129: 118:Learn how and when to remove this message 1120:' Creates variable to hold user name 1035:Integrated development environment (IDE) 466: 1613:MovieFX: Combining photo with 3D object 1365: 1261:, user interface, work with processes, 1625:ThinBasic review at basics.mindteq.com 1195:"No user name specified..." 634:Each module is represented by single 7: 1293:thinBASIC has been developed under 647:' This loads the module for use 165:v1.12 / January 28, 2024 14: 2702:BASIC programming language family 1515:Olmi, E. ThinBASIC Help Manual. 1489:Olmi, E. ThinBASIC Help Manual. 1463:Olmi, E. ThinBASIC Help Manual. 1450:Olmi, E. ThinBASIC Help Manual. 1424:Olmi, E. ThinBASIC Help Manual. 1411:Olmi, E. ThinBASIC Help Manual. 1398:Olmi, E. ThinBASIC Help Manual. 1372:Olmi, E. ThinBASIC Help Manual. 1144:"What is your name?: " 946:"MyDLLWrapper.tBasicI" 136: 20: 1569:thinAir, thinBasic official IDE 1253:ThinBASIC was designed for the 31:may not meet Knowledge (XXG)'s 955:"MyRoutines.tBasicU" 1: 1619:MovieFX: Blending based bokeh 1574:thinDebug, thinBasic Debugger 1084:thinDebug, thinBasic Debugger 1312:Extensively tested: Windows 1135:' Asks user for the name 964:"dialog_*.tBasicU" 33:general notability guideline 1857:Data General Extended BASIC 1584:thinBASIC Adventure Builder 1150:' Stores it to variable 1066:Optional script obfuscation 890:Binding to third-party APIs 389:' a is initialized to 1 341:' a is initialized to 0 2718: 1342:Partly supported: Windows 40:reliable secondary sources 29:The topic of this article 2581:Disk Extended Color BASIC 2194:Open Programming Language 1529:http://www.powerbasic.com 572:, user-defined types and 247: 235: 180: 154: 135: 2479:WinFBE, Visual FB Editor 1862:Southampton BASIC System 1609:, November 26, 2008, PDF 1096: 937: 698: 683:Functions and procedures 644: 538:UDT (user-defined type) 460:Variables and data types 323: 1308:version 5.50 or above. 1072:Access to the help file 674:"C:\text.txt" 2631:MS BASIC for Macintosh 2415:Visual Basic (classic) 1725:TI-BASIC (calculators) 1664:programming language ( 1535:. Retrieved 2011-09-21 1533:Built with PowerBASIC! 1519:. Retrieved 2017-07-29 1506:. Retrieved 2013-02-15 1493:. Retrieved 2011-09-21 1480:. Retrieved 2013-02-15 1467:. Retrieved 2011-09-21 1454:. Retrieved 2011-09-21 1428:. Retrieved 2011-09-21 1415:. Retrieved 2011-09-21 1402:. Retrieved 2011-09-21 1389:. Retrieved 2013-02-15 1376:. Retrieved 2011-09-21 1044: 1043:thinAir, thinBasic IDE 401:' a now contains 2 371:' a now contains 2 353:' a now contains 1 167:; 7 months ago 2697:Programming languages 2518:Atari Microsoft BASIC 2361:Microsoft Small Basic 2328:Embedded Visual Basic 1891:VSI BASIC for OpenVMS 1374:Introducing thinBASIC 1281:, thanks to language 1042: 2586:Extended Color BASIC 1759:Rocky Mountain BASIC 1754:HP Time-Shared BASIC 1607:ThinBasic Journal #2 1601:ThinBasic Journal #1 999:for many languages ( 265:computer programming 2666:TI BASIC (TI 99/4A) 2556:Benton Harbor BASIC 1774:Locomotive Software 1615:, September 1, 2010 1603:, July 5, 2008, PDF 1502:basic.mindteq.com. 1491:thinTools/thinDebug 1476:basic.mindteq.com. 1385:basic.mindteq.com. 1105:"Console" 1053:syntax highlighting 925:.tBasic - main code 704:"Console" 416:"INTEGER" 132: 1579:Graphics tutorials 1210:"Hello " 1045: 35: 2684: 2683: 2544:BASIC Programming 2491: 2490: 2487: 2486: 2430:Visual Basic .NET 2237: 2236: 2028: 2027: 2015:Super Expander 64 1730:TI Extended BASIC 1717:Texas Instruments 1621:, January 1, 2011 1549:Official web site 1400:Numeric variables 1306:Internet Explorer 1295:Microsoft Windows 1204:Console_PrintLine 1189:Console_PrintLine 1029:ThinBasic Journal 917:Code organization 913:and many others. 566: 565: 254: 253: 128: 127: 120: 102: 30: 2709: 2398: 2371:OpenOffice Basic 2251: 2042: 1980: 1815:North Star BASIC 1782:Locomotive BASIC 1678: 1660:Dialects of the 1654: 1647: 1640: 1631: 1595:PCOPY! Issue #50 1589:PCOPY! Issue #40 1536: 1526: 1520: 1513: 1507: 1500: 1494: 1487: 1481: 1474: 1468: 1461: 1455: 1448: 1442: 1435: 1429: 1422: 1416: 1413:String variables 1409: 1403: 1396: 1390: 1383: 1377: 1370: 1244: 1241: 1238: 1235: 1232: 1229: 1226: 1223: 1220: 1217: 1214: 1211: 1208: 1205: 1202: 1199: 1196: 1193: 1190: 1187: 1184: 1181: 1178: 1175: 1172: 1169: 1166: 1163: 1160: 1159:Console_ReadLine 1157: 1154: 1151: 1148: 1145: 1142: 1139: 1136: 1133: 1130: 1127: 1124: 1121: 1118: 1115: 1112: 1109: 1106: 1103: 1100: 986: 983: 980: 977: 974: 971: 968: 965: 962: 959: 956: 953: 950: 947: 944: 941: 882: 879: 876: 873: 870: 867: 864: 861: 858: 855: 852: 849: 846: 843: 840: 837: 834: 831: 828: 825: 822: 819: 816: 813: 810: 807: 804: 801: 798: 795: 792: 789: 786: 783: 780: 777: 774: 771: 768: 765: 762: 759: 756: 753: 750: 747: 744: 741: 738: 735: 732: 729: 726: 723: 720: 717: 714: 711: 708: 705: 702: 678: 675: 672: 669: 666: 663: 660: 657: 654: 653:"File" 651: 648: 618:console handling 467: 429: 426: 423: 420: 417: 414: 411: 408: 405: 402: 399: 396: 393: 390: 387: 384: 381: 378: 375: 372: 369: 366: 363: 360: 357: 354: 351: 348: 345: 342: 339: 336: 333: 330: 327: 301: 297: 224: 221: 219: 175: 173: 168: 140: 133: 123: 116: 112: 109: 103: 101: 60: 24: 23: 16: 2717: 2716: 2712: 2711: 2710: 2708: 2707: 2706: 2687: 2686: 2685: 2680: 2576:Dartmouth BASIC 2566:Commodore BASIC 2508:Applesoft BASIC 2483: 2451: 2444: 2391: 2383: 2342: 2335: 2310:Microsoft Excel 2246: 2233: 2160: 2153: 2037: 2024: 1983: 1974: 1905: 1871: 1824: 1791: 1768: 1746:Hewlett-Packard 1740: 1711: 1694:TRS-80 BASICs ( 1690:Microsoft BASIC 1669: 1658: 1554:Community forum 1545: 1540: 1539: 1527: 1523: 1514: 1510: 1501: 1497: 1488: 1484: 1475: 1471: 1462: 1458: 1449: 1445: 1436: 1432: 1423: 1419: 1410: 1406: 1397: 1393: 1384: 1380: 1371: 1367: 1362: 1314:2000 and Server 1304:, and requires 1298:XP Professional 1291: 1271:JIT compilation 1251: 1246: 1245: 1242: 1239: 1237:Console_WaitKey 1236: 1233: 1230: 1227: 1224: 1221: 1218: 1215: 1212: 1209: 1206: 1203: 1200: 1197: 1194: 1191: 1188: 1185: 1182: 1179: 1176: 1173: 1170: 1167: 1164: 1161: 1158: 1155: 1152: 1149: 1146: 1143: 1140: 1137: 1134: 1131: 1128: 1125: 1122: 1119: 1116: 1113: 1110: 1107: 1104: 1101: 1098: 1092: 1078: 1076: 1037: 1021: 993: 988: 987: 984: 981: 978: 975: 972: 969: 966: 963: 960: 957: 954: 951: 948: 945: 942: 939: 919: 892: 884: 883: 880: 877: 874: 871: 868: 865: 862: 859: 856: 853: 850: 847: 844: 841: 838: 835: 832: 829: 826: 823: 820: 817: 814: 811: 808: 805: 802: 799: 796: 793: 790: 787: 784: 782:Console_WaitKey 781: 778: 775: 772: 769: 766: 763: 760: 757: 754: 751: 748: 745: 742: 739: 736: 733: 730: 727: 724: 721: 718: 715: 712: 709: 706: 703: 700: 685: 680: 679: 676: 673: 670: 667: 664: 661: 658: 655: 652: 649: 646: 599: 589:dynamic strings 473:Floating point 462: 431: 430: 427: 424: 421: 418: 415: 412: 409: 406: 403: 400: 397: 394: 391: 388: 385: 382: 379: 376: 373: 370: 367: 364: 361: 358: 355: 352: 349: 346: 343: 340: 337: 334: 331: 328: 325: 299: 295: 285: 280: 216: 176: 171: 169: 166: 124: 113: 107: 104: 61: 59: 37: 25: 21: 12: 11: 5: 2715: 2713: 2705: 2704: 2699: 2689: 2688: 2682: 2681: 2679: 2678: 2673: 2671:Turbo-BASIC XL 2668: 2663: 2658: 2653: 2651:Sinclair BASIC 2648: 2643: 2638: 2633: 2628: 2623: 2618: 2613: 2608: 2603: 2598: 2593: 2588: 2583: 2578: 2573: 2568: 2563: 2558: 2553: 2548: 2540: 2535: 2530: 2525: 2523:Atari ST BASIC 2520: 2515: 2510: 2505: 2499: 2497: 2493: 2492: 2489: 2488: 2485: 2484: 2482: 2481: 2476: 2471: 2456: 2454: 2446: 2445: 2443: 2442: 2437: 2427: 2422: 2417: 2412: 2406: 2404: 2395: 2385: 2384: 2382: 2381: 2376: 2373: 2368: 2363: 2358: 2353: 2347: 2345: 2337: 2336: 2334: 2333: 2330: 2325: 2324: 2323: 2318: 2306: 2301: 2296: 2293: 2290: 2285: 2280: 2275: 2270: 2268:Chipmunk Basic 2265: 2259: 2257: 2248: 2239: 2238: 2235: 2234: 2232: 2231: 2226: 2221: 2216: 2211: 2206: 2201: 2196: 2191: 2186: 2181: 2176: 2171: 2165: 2163: 2155: 2154: 2152: 2151: 2146: 2141: 2136: 2131: 2126: 2121: 2116: 2111: 2106: 2101: 2096: 2091: 2086: 2081: 2076: 2071: 2066: 2061: 2056: 2050: 2048: 2039: 2030: 2029: 2026: 2025: 2023: 2022: 2017: 2012: 2010:Super Expander 2007: 2002: 2001:Graphics BASIC 1999: 1993: 1991: 1985: 1984: 1982: 1981: 1969: 1964: 1959: 1954: 1949: 1944: 1939: 1934: 1929: 1924: 1919: 1913: 1911: 1907: 1906: 1904: 1903: 1901:CALL/360:BASIC 1898: 1893: 1888: 1882: 1880: 1873: 1872: 1870: 1869: 1864: 1859: 1854: 1843:Business Basic 1840: 1834: 1832: 1826: 1825: 1823: 1822: 1817: 1812: 1807: 1801: 1799: 1797:Microcomputers 1793: 1792: 1790: 1789: 1784: 1778: 1776: 1770: 1769: 1767: 1766: 1761: 1756: 1750: 1748: 1742: 1741: 1739: 1738: 1733: 1727: 1721: 1719: 1713: 1712: 1710: 1709: 1703: 1692: 1686: 1684: 1675: 1671: 1670: 1659: 1657: 1656: 1649: 1642: 1634: 1628: 1627: 1622: 1616: 1610: 1604: 1598: 1592: 1586: 1581: 1576: 1571: 1566: 1561: 1556: 1551: 1544: 1543:External links 1541: 1538: 1537: 1521: 1508: 1495: 1482: 1469: 1456: 1443: 1430: 1417: 1404: 1391: 1378: 1364: 1363: 1361: 1358: 1357: 1356: 1350: 1340: 1290: 1287: 1250: 1247: 1097: 1091: 1088: 1087: 1086: 1074: 1073: 1070: 1067: 1064: 1061: 1058: 1057:Code templates 1055: 1036: 1033: 1020: 1017: 992: 989: 938: 933: 932: 929: 926: 918: 915: 891: 888: 854:Console_PrintL 699: 684: 681: 645: 632: 631: 628: 625: 622: 619: 616: 598: 595: 591: 590: 587: 584: 564: 563: 560: 558: 556: 552: 551: 548: 546: 544: 540: 539: 536: 534: 533:EXTENDED, EXT 531: 527: 526: 523: 520: 517: 513: 512: 507: 504: 501: 497: 496: 491: 488: 485: 481: 480: 477: 474: 471: 461: 458: 324: 319:initialization 284: 281: 279: 276: 252: 251: 245: 244: 240: 239: 233: 232: 226: 225: 214: 210: 209: 200: 194: 193: 188: 182: 181: 178: 177: 164: 162: 160:Stable release 156: 155: 152: 151: 148: 142: 141: 126: 125: 28: 26: 19: 13: 10: 9: 6: 4: 3: 2: 2714: 2703: 2700: 2698: 2695: 2694: 2692: 2677: 2676:Vilnius BASIC 2674: 2672: 2669: 2667: 2664: 2662: 2659: 2657: 2654: 2652: 2649: 2647: 2644: 2642: 2639: 2637: 2634: 2632: 2629: 2627: 2624: 2622: 2619: 2617: 2614: 2612: 2609: 2607: 2604: 2602: 2599: 2597: 2594: 2592: 2589: 2587: 2584: 2582: 2579: 2577: 2574: 2572: 2569: 2567: 2564: 2562: 2561:Chinese BASIC 2559: 2557: 2554: 2552: 2549: 2547: 2545: 2541: 2539: 2536: 2534: 2531: 2529: 2526: 2524: 2521: 2519: 2516: 2514: 2511: 2509: 2506: 2504: 2501: 2500: 2498: 2494: 2480: 2477: 2475: 2472: 2469: 2465: 2464:Basic4android 2461: 2458: 2457: 2455: 2453: 2447: 2441: 2438: 2435: 2431: 2428: 2426: 2423: 2421: 2418: 2416: 2413: 2411: 2408: 2407: 2405: 2403: 2399: 2396: 2394: 2390: 2386: 2380: 2377: 2374: 2372: 2369: 2367: 2364: 2362: 2359: 2357: 2354: 2352: 2349: 2348: 2346: 2344: 2338: 2332:WinWrap Basic 2331: 2329: 2326: 2322: 2319: 2317: 2314: 2313: 2311: 2307: 2305: 2302: 2300: 2297: 2294: 2291: 2289: 2286: 2284: 2281: 2279: 2276: 2274: 2271: 2269: 2266: 2264: 2261: 2260: 2258: 2256: 2252: 2249: 2245: 2240: 2230: 2227: 2225: 2222: 2220: 2217: 2215: 2212: 2210: 2207: 2205: 2202: 2200: 2197: 2195: 2192: 2190: 2187: 2185: 2182: 2180: 2177: 2175: 2172: 2170: 2167: 2166: 2164: 2162: 2156: 2150: 2147: 2145: 2142: 2140: 2137: 2135: 2132: 2130: 2127: 2125: 2122: 2120: 2117: 2115: 2112: 2110: 2107: 2105: 2102: 2100: 2097: 2095: 2092: 2090: 2089:Liberty BASIC 2087: 2085: 2082: 2080: 2077: 2075: 2072: 2070: 2067: 2065: 2062: 2060: 2057: 2055: 2052: 2051: 2049: 2047: 2043: 2040: 2035: 2031: 2021: 2018: 2016: 2013: 2011: 2008: 2006: 2005:Simons' BASIC 2003: 2000: 1998: 1995: 1994: 1992: 1990: 1986: 1978: 1973: 1970: 1968: 1965: 1963: 1960: 1958: 1955: 1953: 1950: 1948: 1945: 1943: 1940: 1938: 1935: 1933: 1930: 1928: 1925: 1923: 1920: 1918: 1915: 1914: 1912: 1908: 1902: 1899: 1897: 1894: 1892: 1889: 1887: 1884: 1883: 1881: 1878: 1874: 1868: 1865: 1863: 1860: 1858: 1855: 1852: 1848: 1844: 1841: 1839: 1836: 1835: 1833: 1831: 1830:Minicomputers 1827: 1821: 1818: 1816: 1813: 1811: 1810:Integer BASIC 1808: 1806: 1803: 1802: 1800: 1798: 1794: 1788: 1787:Mallard BASIC 1785: 1783: 1780: 1779: 1777: 1775: 1771: 1765: 1762: 1760: 1757: 1755: 1752: 1751: 1749: 1747: 1743: 1737: 1734: 1731: 1728: 1726: 1723: 1722: 1720: 1718: 1714: 1708: 1704: 1701: 1697: 1693: 1691: 1688: 1687: 1685: 1683: 1679: 1676: 1672: 1667: 1663: 1655: 1650: 1648: 1643: 1641: 1636: 1635: 1632: 1626: 1623: 1620: 1617: 1614: 1611: 1608: 1605: 1602: 1599: 1596: 1593: 1590: 1587: 1585: 1582: 1580: 1577: 1575: 1572: 1570: 1567: 1565: 1564:Download page 1562: 1560: 1557: 1555: 1552: 1550: 1547: 1546: 1542: 1534: 1530: 1525: 1522: 1518: 1512: 1509: 1505: 1499: 1496: 1492: 1486: 1483: 1479: 1473: 1470: 1466: 1460: 1457: 1453: 1447: 1444: 1440: 1434: 1431: 1427: 1421: 1418: 1414: 1408: 1405: 1401: 1395: 1392: 1388: 1382: 1379: 1375: 1369: 1366: 1359: 1355: 1352:Unsupported: 1351: 1349: 1345: 1341: 1339: 1335: 1331: 1327: 1323: 1319: 1315: 1311: 1310: 1309: 1307: 1303: 1299: 1296: 1289:Compatibility 1288: 1286: 1284: 1280: 1274: 1272: 1268: 1264: 1260: 1256: 1249:Pros and cons 1248: 1222:"!" 1138:Console_Print 1095: 1089: 1085: 1082: 1081: 1080: 1071: 1068: 1065: 1062: 1059: 1056: 1054: 1051:Customizable 1050: 1049: 1048: 1041: 1034: 1032: 1030: 1025: 1019:Documentation 1018: 1016: 1014: 1010: 1006: 1002: 998: 991:Customization 990: 936: 930: 927: 924: 923: 922: 916: 914: 912: 908: 904: 900: 895: 889: 887: 697: 693: 691: 682: 643: 641: 637: 629: 626: 623: 621:file handling 620: 617: 614: 611: 610: 609: 606: 604: 596: 594: 588: 585: 582: 581: 580: 577: 575: 571: 561: 559: 557: 554: 553: 549: 547: 545: 542: 541: 537: 535: 532: 529: 528: 524: 521: 518: 515: 514: 511: 508: 505: 502: 499: 498: 495: 492: 489: 486: 483: 482: 478: 475: 472: 469: 468: 465: 459: 457: 455: 451: 447: 442: 440: 436: 322: 320: 316: 313: 309: 305: 292: 290: 282: 278:Main features 277: 275: 272: 269: 266: 262: 258: 250: 246: 243:Influenced by 241: 238: 234: 231: 227: 223: 215: 211: 208: 204: 201: 199: 195: 192: 189: 187: 183: 179: 163: 161: 157: 153: 149: 147: 143: 139: 134: 122: 119: 111: 100: 97: 93: 90: 86: 83: 79: 76: 72: 69: –  68: 64: 63:Find sources: 57: 53: 49: 45: 41: 34: 27: 18: 17: 2591:Family BASIC 2546:(Atari 2600) 2543: 2503:Altair BASIC 2128: 2104:Mobile BASIC 2020:YS MegaBasic 1877:Time-sharing 1851:Data General 1732:(aka XBasic) 1700:Level II/III 1524: 1511: 1498: 1485: 1472: 1459: 1446: 1438: 1433: 1420: 1407: 1394: 1381: 1368: 1292: 1275: 1252: 1093: 1090:Code samples 1075: 1046: 1028: 1026: 1022: 994: 934: 920: 896: 893: 885: 694: 686: 633: 607: 602: 600: 592: 578: 567: 463: 443: 435:Visual Basic 432: 293: 286: 256: 255: 114: 105: 95: 88: 81: 74: 62: 2571:Color BASIC 2513:Atari BASIC 2452:open source 2410:CA-Realizer 2402:Proprietary 2375:ScriptBasic 2343:open source 2278:LotusScript 2255:Proprietary 2189:Indic BASIC 2161:open source 2144:Turbo Basic 2134:Tiger-BASIC 2079:FutureBASIC 2046:Proprietary 1975: [ 1937:Casio BASIC 1922:Astro BASIC 1896:SUPER BASIC 1736:TI-BASIC 83 1559:Online help 1330:Server 2003 1283:interpreter 640:header file 624:3D graphics 522:ASCIIZ * n 506:STRING * n 450:conditional 315:declaration 271:interpreter 207:Proprietary 67:"ThinBasic" 44:independent 2691:Categories 2661:SuperBASIC 2656:STOS BASIC 2641:QuickBASIC 2366:Mono-Basic 2288:PowerBASIC 2247:extensions 2204:SmallBASIC 2139:True BASIC 2124:SmileBASIC 2114:PowerBASIC 2074:Beta BASIC 2059:AMOS BASIC 2054:AmigaBASIC 1957:Tiny BASIC 1917:AlphaBasic 1886:BASIC-PLUS 1867:Wang BASIC 1805:Atom BASIC 1517:What's new 1465:How to use 1452:How to use 1360:References 1354:Windows 95 1338:Windows 10 1302:PowerBASIC 1001:PowerBASIC 797:MyFunction 755:MyFunction 734:MyFunction 719:MyFunction 627:networking 562:iDispatch 439:PowerBASIC 249:Powerbasic 220:.thinbasic 172:2024-01-28 78:newspapers 52:redirected 2626:MSX BASIC 2606:IBM BASIC 2596:GFA BASIC 2551:BBC BASIC 2468:Basic4ppc 2393:designers 2356:FreeBASIC 2308:VB 5 for 2295:Run BASIC 2179:DarkBASIC 2169:Basic-256 2149:WordBASIC 2129:ThinBasic 2119:PureBasic 2034:Procedure 1989:Extenders 1952:SDS BASIC 1879:computers 1707:BASIC 1.0 1682:Microsoft 1504:THINBASIC 1478:THINBASIC 1387:THINBASIC 1334:Windows 8 1326:Windows 7 1279:compilers 1005:FreeBASIC 668:File_Load 519:CURRENCY 257:thinBasic 150:Eros Olmi 146:Developer 131:ThinBasic 108:July 2012 42:that are 2616:MacBASIC 2611:JR-BASIC 2601:GW-BASIC 2538:BASIC XL 2533:BASIC XE 2528:BASIC A+ 2450:Free and 2420:NS Basic 2351:BlitzMax 2341:Free and 2304:VBScript 2292:ProvideX 2199:SdlBasic 2184:Euphoria 2174:Basic4GL 2159:Free and 2099:MapBasic 2038:oriented 1927:BASICODE 1838:BASIC-11 1764:HP Basic 1705:Thomson 1285:nature. 1259:registry 1243:function 1216:UserName 1174:UserName 1153:UserName 1126:UserName 1111:function 985:Function 970:Function 881:Function 815:Optional 794:Function 788:Function 710:Function 615:creation 570:pointers 530:INTEGER 525:BOOLEAN 470:Integer 446:infinite 312:variable 268:language 230:Dialects 203:Freeware 2646:S-BASIC 2496:Defunct 2434:Mercury 2273:GLBasic 2229:Yabasic 2214:wxBasic 2109:OWBasic 1997:BASIC 8 1972:ETBASIC 1820:SCELBAL 1696:Level I 1674:Classic 1255:Windows 961:include 952:include 943:include 662:sBuffer 597:Modules 550:UNIONS 503:DOUBLE 494:VARIANT 490:STRING 487:SINGLE 476:String 377:INTEGER 338:INTEGER 213:Website 198:License 191:Windows 170: ( 92:scholar 56:deleted 2636:QBasic 2621:MBASIC 2474:Gambas 2425:RapidQ 2379:Roslyn 2283:Morfik 2263:AutoIt 2244:object 2224:Xblite 2219:XBasic 2069:BasicX 1967:ZBasic 1962:UBASIC 1947:PBASIC 1942:CBASIC 1300:using 1132:string 1114:TBMain 973:TBMain 903:OpenCL 899:OpenGL 842:Number 824:Number 809:Number 713:TBMain 659:String 574:unions 516:DWORD 479:Other 407:STRING 283:Syntax 263:-like 94:  87:  80:  73:  65:  48:merged 2242:With 2084:GRASS 1979:] 1910:Other 1662:BASIC 1344:98 SE 1322:Vista 1123:local 555:QUAD 543:LONG 500:WORD 484:BYTE 428:sType 410:sType 300:GOSUB 289:8-bit 261:BASIC 259:is a 237:BASIC 99:JSTOR 85:books 54:, or 2440:Xojo 2321:VSTA 2316:VSTO 2312:5.0 2209:QB64 2064:ASIC 1666:list 1426:Type 1267:DLLs 1201:else 1186:then 1102:uses 1013:MASM 701:Uses 650:Uses 603:Core 510:GUID 425:LIKE 317:and 298:and 296:GOTO 222:.com 71:news 2460:B4X 2389:RAD 2299:VBA 2094:LSE 1932:BAL 1847:B32 1263:COM 1240:end 1228:end 1168:len 1015:). 997:SDK 982:End 911:ODE 907:XML 878:End 785:End 636:DLL 630:... 613:GUI 454:FOR 437:or 419:DIM 329:DIM 308:C++ 218:www 2693:: 2466:, 1977:zh 1849:, 1698:, 1531:. 1348:Me 1346:, 1336:, 1332:, 1328:, 1324:, 1320:, 1318:XP 1316:, 1265:, 1231:if 1165:if 1129:as 1117:() 1011:, 1007:, 1003:, 976:() 909:, 905:, 901:, 848:30 839:As 830:20 821:As 806:As 761:10 740:10 725:10 716:() 576:. 452:, 448:, 441:. 395:+= 335:AS 321:: 205:/ 186:OS 50:, 2470:) 2462:( 2436:) 2432:( 2036:- 1853:) 1845:( 1702:) 1668:) 1653:e 1646:t 1639:v 1225:) 1219:+ 1213:+ 1207:( 1198:) 1192:( 1183:0 1180:= 1177:) 1171:( 1156:= 1147:) 1141:( 1009:C 958:# 949:# 940:# 875:) 872:c 869:, 866:b 863:, 860:a 857:( 851:) 845:= 836:c 833:, 827:= 818:b 812:, 803:a 800:( 776:) 773:5 770:, 767:3 764:, 758:( 749:) 746:3 743:, 737:( 728:) 722:( 690:C 677:) 671:( 665:= 422:a 413:= 398:1 392:a 386:1 383:= 380:a 368:1 365:+ 362:a 359:= 356:a 350:1 347:= 344:a 332:a 306:/ 304:C 174:) 121:) 115:( 110:) 106:( 96:· 89:· 82:· 75:· 58:. 36:.

Index

general notability guideline
reliable secondary sources
independent
merged
redirected
deleted
"ThinBasic"
news
newspapers
books
scholar
JSTOR
Learn how and when to remove this message
ThinBasic Logo
Developer
Stable release
OS
Windows
License
Freeware
Proprietary
www.thinbasic.com
Dialects
BASIC
Powerbasic
BASIC
computer programming
language
interpreter
8-bit

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