Dartmouth BASIC

Da Konspedia.
Vai alla navigazioneVai alla ricerca

Il Dartmouth BASIC è la versione originale del linguaggio di programmazione BASIC (acronimo di Beginner’s All-purpose Symbolic Instruction Code). Prende il nome dal Dartmouth College, l'istituto statunitense in cui i programmatori John Kemeny e Thomas Kurtz hanno progettato il BASIC nel 1964.

Il linguaggio era inizialmente progettato per funzionare su sistemi che utilizzavano lettori di schede perforate. La prima versione interattiva venne resa disponibile nel giugno 1964, seguita da una seconda nell’ottobre dello stesso anno. Le versioni successive apparvero nel 1966 (terza), nel 1969 (quarta), nel 1970 (quinta), nel 1971 (sesta) e infine nel 1979 (settima e ultima).

Storia

Il progetto era motivato dall’idea che tutti gli studenti, anche quelli non di ambito matematico o scientifico, dovessero poter accedere all’informatica. Kemeny e Kurtz volevano dunque un linguaggio semplice, comprensibile e interattivo.

Il linguaggio BASIC venne sviluppato parallelamente al suo compilatore ed al sistema operativo, permettendo già nel 1964 l’esecuzione dei primi programmi in modalità batch. Tuttavia, il 1º maggio dello stesso anno, John Kemeny e John McGeachie eseguirono i primi programmi BASIC direttamente dai terminali del sistema DTSS. Quei programmi erano estremamente semplici, costituiti da una sola istruzione: PRINT 2 + 2

La seconda versione del BASIC introdusse modifiche minime, tra cui l’aggiunta del punto e virgola al comando PRINT.

Con la terza versione furono introdotti comandi più avanzati: INPUT per l’acquisizione dei dati, MAT per le operazioni sulle matrici e RESTORE da usare insieme a READ/DATA. La quarta versione ampliò le funzionalità con la gestione del testo e delle variabili, mentre la quinta introdusse la gestione dei file.

La sesta versione permise l’uso di procedure con parametri e rappresenta la base da cui derivarono quasi tutti i dialetti successivi del BASIC. Nel 1976, Steve Garland aggiunse la programmazione strutturata al Dartmouth SBASIC, un pre-compilatore che generava programmi compatibili con la versione 6, gettando così le fondamenta per lo standard ANSI BASIC.

Infine, nel 1979, Kemeny e Kurtz commercializzarono un compilatore ANSI BASIC come settima e ultima versione del BASIC di Dartmouth, prima di lasciare il college per dedicarsi allo sviluppo dell’ANSI BASIC sotto il nome di True BASIC.

Interfaccia utente

Il DTSS offriva una forma rudimentale di ambiente di sviluppo basato su una riga di comando. Non era previsto un comando per uscire volontariamente da questo ambiente: se l’utente rimaneva inattivo per un certo periodo di tempo, il sistema terminava automaticamente la sessione. Le righe che iniziavano con un numero venivano aggiunte al programma in costruzione, mentre i comandi privi di numero di linea venivano eseguiti immediatamente.

Lista dei comandi DTSS

Di seguito è riportato un elenco dei comandi dell’ambiente DTSS che, contrariamente a quanto molti studenti credevano, non appartenevano al linguaggio BASIC. Questi comandi, infatti, venivano utilizzati anche per l’inserimento di programmi scritti in altri linguaggi di programmazione, come l'ALGOL od il FORTRAN.

  • HELLO—per accedere al DTSS
  • BASIC—modalità BASIC
  • NEW—per iniziare a scrivere un nuovo programma
  • OLD—per caricare un programma
  • LIST—mostra il programma corrente
  • SAVE—per salvare un programma
  • UNSAVE—per cancellare un programma
  • CATALOG—per mostrare i nomi dei programmi
  • SCRATCH—per cancellare il programma corrente
  • RENAME—per cambiare il nome al programma
  • RUN—per eseguire il programma corrente
  • STOP—per interrompere il programma corrente

Il linguaggio supportava anche l’aritmetica e l’uso di variabili a virgola mobile. I nomi delle variabili potevano essere composti solo da lettere dell’alfabeto, eventualmente seguite da una singola cifra: erano quindi ammessi nomi come A, B, Z, A0–A9, B0–B9, e così via, per un totale di 286 combinazioni possibili.

Gli array, invece, potevano avere come nome soltanto una lettera (da A a Z). Non era necessario dichiararne la dimensione con il comando DIM; in assenza di specifica, la dimensione predefinita era pari a 10 elementi, con indici che partivano da 1.

Lista delle istruzioni BASIC

  • DEF—definizione di funzioni a singola riga
  • DIM—definizione di un array
  • END—fine dell'esecuzione del programma
  • STOP—interruzione dell'esecuzione del programma
  • FOR / TO / STEP—gestione del ciclo
  • NEXT—fine del ciclo
  • GOSUB—salta ad una routine
  • RETURN—fine della routine e ritorna all'istruzione chiamante
  • GOTO—salta ad un numero di riga
  • IF / THEN—istruzione di condizione
  • LET / =—definizione di funzione matematica
  • PRINT—stampa di valori
  • DATA—memorizzazione di dati nel programma
  • READ—lettura di dati memorizzati con DATA
  • REM—commento

Lista di operatori

Operatore aritmetico Operatore logico
- Negazione (unario) = Uguale a
+ Addizione <> Non uguale a
- Sottrazione < Inferiore a
* Moltiplicazione <= Inferiore o uguale a
/ Divisione > Maggiore a
^ Potenza >= Maggiore o uguale a
Operatori di raggruppamento  
( ) Raggruppamento  

Lista di funzioni

  • INT—Intero
  • ABS—Assoluto
  • SQR—Radice quadrata
  • SIN—Seno
  • COS—Coseno
  • ATN—Arcotangente
  • LOG—Logaritmo
  • EXP—Esponenziale
  • RND—Valore casuale

Voci correlate

Bibliografia

  • Kemeny, John G. (1985): Back to Basic: The History, Corruption and Future of the Language. Addison-Wesley Longman Inc. ISBN 0201134330. (In inglese)
  • BASIC manual. Dartmouth College Computation center, 1964. (In inglese)