Tiny BASIC: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m →Sintassi: Fix tecnico tag HTML obsoleto per Wikipedia:Bar/Discussioni/Passaggio da Tidy a RemexHTML: c'è del lavoro da fare using AWB |
mNessun oggetto della modifica |
||
(7 versioni intermedie di 6 utenti non mostrate) | |||
Riga 19:
|sito_web =
}}
Il '''Tiny BASIC''' è un [[dialetto (informatica)|dialetto]] del [[linguaggio di programmazione]] [[BASIC]] che è stato sviluppato tra il [[1975]]
==Sviluppo==
La struttura del linguaggio fu inizialmente teorizzata da
Allison e Albretch pubblicarono la struttura del linguaggio sulla [[newsletter]] di ''[[People's Computer Company]]'', un'organizzazione dedita alla diffusione della cultura del computer come strumento per aiutare le persone.<ref>{{cita web|url=http://www.digibarn.com/collections/newsletters/peoples-computer/index.html|titolo=Informazioni sul People's Computer Company|accesso=18 febbraio 2011}}</ref> Nel mese di dicembre del 1975 Dick Whipple e John Arnold crearono un [[interprete (informatica)|interprete]] del linguaggio che richiedeva solo 3 kB di RAM. Allison e Albretch decisero di pubblicare questo interprete e le correzioni apportate alla struttura originale del linguaggio in una newsletter chiamata
La spinta a terminare
Bill Gates, nella sua lettera, sosteneva che la [[pirateria informatica]] non solo non ripagava gli autori del software delle loro fatiche in termini di rientro economico ma scoraggiava anche i programmatori dal continuare a produrre software di qualità. Warren rispose a Gates dalle colonne di
{{citazione|C'è una valida alternativa ai problemi del "furto" del software sollevati da Bill Gates nella sua rabbiosa lettera agli appassionati di computer. Quando il software è gratuito, o poco costoso, è più facile pagarlo che duplicarlo, così che non sia "rubato".|Jim Warren,
Warren annunciava la disponibilità del Tiny BASIC, i cui sorgenti erano copiabili dalla rivista
== Sintassi ==
La [[sintassi (informatica)|sintassi]] del Tiny BASIC è elencata qui sotto, in [[Backus-Naur Form|formato Backus-Naur]]. Nell'elenco un asterisco ("<kbd>*</kbd>") denota zero o più degli oggetti alla sua sinistra — tranne che per il primo asterisco nella definizione del "<kbd>termine</kbd>", che è il segno della moltiplicazione; le parentesi raggruppano gli oggetti; la lettera epsilon ("<kbd>ε</kbd>") indica un insieme vuoto. La barra verticale ("<kbd>|</kbd>") indica delle alternative, elencate su righe separate; il simbolo "<kbd>CR</kbd>" indica un carattere di [[
linea ::= numero istruzione CR | istruzione CR
Riga 71:
Un BREAK dal terminale interrompe l'esecuzione del programma
''Fonte: "Dr. Dobb's Journal of Computer Calisthenics & Orthodontia", Volume 1, Numero 1, 1976, pag. 9.''
==Implementazione==
Riga 77:
* <code>TST etichetta, stringa</code>: se "stringa" combacia con la linea BASIC, avanza il cursore oltre "stringa" ed esegue la prossima istruzione interpretata alla linea indicata da "etichetta", altrimenti esegue l'istruzione presente a "etichetta"
* <code>CALL etichetta</code>: esegue il codice presente a "etichetta"; salva l'indirizzo dell'istruzione dopo <code>CALL</code> nello [[pila (informatica)|stack]]
* <code>RTN</code>: riprende l'esecuzione dal punto specificato nel valore contenuto in cima allo stack;
* <code>JUMP etichetta</code>: continua l'esecuzione del programma dal punto indicato da "etichetta";
Riga 100:
* {{cita web|http://www.IttyBittyComputers.com/IttyBitty/TinyBasic/TBuserMan.htm|Manuale utente del Tiny BASIC}}
* {{cita web|http://www.IttyBittyComputers.com/IttyBitty/TinyBasic/TBEK.txt|Esempi di codice in Tiny BASIC}}
* [https://web.archive.org/web/20110107204656/http://www.swtpc.com/mholley/BASIC_2/Uiterwyk.htm Micro BASIC], una versione per [[Motorola 6800|MC6800]] venduta da Robert Uiterwyk con i computer [[SWTPC]] 6800
* [http://www.multicians.org/raf-tbl-definition.html Linguaggio TBL], un linguaggio che usa un interprete su macchina virtuale come il Tiny BASIC
* [http://members.shaw.ca/gbrandly/68ktinyb.html Il 68000 Tiny BASIC], versione per il [[Motorola 68000]] del Tiny BASIC, pubblicato sul 100° numero della rivista "Dr. Dobb's Journal"
* [http://www.aldweb.com/articles.php?lng=en&pg=7407 Tiny BASIC per Palm], implementazione del linguaggio scritta in [http://www.aldweb.com/articles.php?lng=en&pg=5350 iziBasic]
* [https://web.archive.org/web/20110715213426/http://www.runbasic.com/?_page=tinybasic.bas Tiny BASIC per web], una implementazione del Tiny BASIC scritto per girare su web in {{Collegamento interrotto|1=[http://www.runbasic.com/seaside/go/runbasic?_s=CPdbnQcuHfQqPOdy&_k=ufhcDZto Run BASIC] |data=marzo 2020 |bot=InternetArchiveBot }}
* [http://www.tinybasic.de Tiny BASIC per microcontrollori], una implementazione per i moderni [[microcontrollore|microcontrollori]] ad 8/16 bit
* [http://rosettacode.org/wiki/Category:Tiny_BASIC Category:Tiny BASIC] Attività implementate in Tiny BASIC in [http://rosettacode.org rosettacode.org]
* [http://rosettacode.org/wiki/Category:Palo_Alto_Tiny_BASIC Category:Palo Alto Tiny BASIC] Attività implementate in Palo Alto Tiny BASIC in [http://rosettacode.org rosettacode.org]
{{portale|informatica}}
|