Speedcoding: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
m Corretto la formattazione
Collegamenti esterni: Aggiunto il template "Portale"
 
(4 versioni intermedie di uno stesso utente non sono mostrate)
Riga 1:
{{TmpS|linguaggiolinguaggi di programmazione}}
{{Linguaggio di programmazione
{{W|informatica|novembre 2019}}<!-- agg. fonti -->
|autore = [[John Backus]]
|data =
|utilizzo =
|paradigmi =
|tipizzazione =
|influenzato_da = [[Linguaggio assembly]] e [[linguaggio macchina]]
|ha_influenzato = [[Fortran]], [[ALGOL 58]], [[BASIC]], [[C (linguaggio di programmazione)|C]], [[PL/I]], [[PACT I]], [[MUMPS]], [[Ratfor]]
}}
 
Lo '''Speedcoding''' o '''Speedcode''' è stato il primo [[linguaggio di programmazione ad alto livello]] creato per un computer [[IBM]]. Il linguaggio fu sviluppato da [[John Backus]] nel 1953 per l'[[IBM 701]] per supportare il calcolo con [[Numero in virgola mobile|numeri in virgola mobile]]. Qui ad alto livello significa simbolico e mira all'espressività del linguaggio naturale come obiettivo rispetto alla codifica orientata alle istruzioni macchina o hardware.
 
L'idea nacque dalla difficoltà di programmare la macchina [[IBM SSEC]] quando Backus fu assunto per calcolare le posizioni astronomiche all'inizio del 1950. Il sistema di speedcoding era un interprete e focalizzato sulla facilità d'uso a scapito delle risorse di sistema. Forniva pseudo-istruzioni per funzioni matematiche comuni: logaritmi, esponenziazione e operazioni trigonometriche. Il software residente ha analizzato le pseudo-istruzioni una alla volta e ha chiamato la subroutine appropriata. Lo speedcoding è stata anche la prima implementazione di operazioni decimale di input / output. Sebbene abbia sostanzialmente ridotto lo sforzo di scrivere molti lavori, il tempo di esecuzione di un programma che è stato scritto con l'aiuto di Speedcoding era di solito da dieci a venti volte quello del codice macchina. L'interprete prese 310 parole di memoria, circa il 30% della memoria disponibile su un 701.
 
== Collegamenti esterni ==
* {{FOLDOC}}
 
{{Portale|informatica}}
 
[[Categoria:Linguaggi di programmazione]]