a - číselná v plovoucí desetinné čárce (float nebo real)
a% - celočíselná (integer)
a$ - řetězcová (string)
Můžou tak současně v jednom programu existovat proměnné různých typů se stejnými názvy, což ve většině programovacích jazyků není možné.
Některé dialekty BASICu mají jen číselné a řetězcové, jiné dalších pár typů navíc, například s dvojitou přesností... Těch dialektů existují stovky a programy jsou mezi nimi někdy velmi těžko přenosné

Nevýhoda BASICu je to, že se při každé běhové chybě zastaví, a tak se ti ani nemůže vrátit zpátky do té dávky, musel bys ručně napsat příkaz SYSTEM. To by šlo obejít tímhle:
Kód: Vybrat vše
10 ON ERROR GOTO 50
20 INPUT "Zadej nazev aplikace: ",r$
30 r$="set aplikace="+r$
40 SHELL r$
50 SYSTEM
P.S. Teď koukám že jsem to uhodl, v tom prvním programu máš na konci řádku místo $ znak "
20 s$ = "set cesta=" + s"
Změň to s" na s$ a uvidíme.