Da dove viene "Hello world"?


109

' hello, world' è solitamente il primo esempio per qualsiasi linguaggio di programmazione. Mi sono sempre chiesto da dove venisse questa frase e dove fosse usata per la prima volta.

Una volta mi è stato detto che era la prima frase in assoluto ad essere visualizzata sullo schermo di un computer, ma non sono stato in grado di trovare alcun riferimento a questo.

Quindi la mia domanda è: da
dove hello, worldproviene la pratica di usare " " come primo esempio di linguaggi per computer?
Dove è stato utilizzato per la prima volta?

Aggiornamento
Sebbene le risposte siano piuttosto interessanti, avrei dovuto notare di aver letto l'articolo di Wikipedia. Risponde alla domanda sul primo utilizzo in letteratura, ma non risponde quando " hello world" è stato utilizzato per la prima volta .
Quindi penso che sia sicuro concludere che non è stata la prima frase in assoluto ad essere visualizzata sullo schermo di un computer e che non c'è traccia di quando è stata usata per la prima volta?

Risposte:


97

Brian Kernighan ha effettivamente scritto il primo programma "hello, world" come parte della documentazione per il linguaggio di programmazione BCPL sviluppato da Martin Richards. BCPL è stato utilizzato durante lo sviluppo del C presso i Bell Labs alcuni anni prima della pubblicazione del libro C di Kernighan e Ritchie nel 1972.

Come parte della ricerca per un libro che stavo scrivendo sull'ambiente di programmazione Alice, ho corrisposto sia al Prof. Kernighan a Princeton che a Martin Richards a Cambridge (quando insegnavo lì in un seminario negli anni '90). Mi hanno aiutato a monitorare il primo utilizzo documentato del codice per stampare il messaggio "Hello, World!" Brian Kernighan ha ricordato di aver scritto il codice per una parte della sezione I / O del manuale BCPL. Martin Richards - che sembra avere un tesoro di note, vecchi documenti, ecc. - ha trovato il manuale e ha confermato che questo era l'originale aspetto del programma Il codice è stato utilizzato per i primi test del compilatore C ed è stato inserito nel libro di Kernighan e Ritchie In seguito, è stato uno dei primi programmi utilizzati per testare il compilatore C ++ di Bjarne Stroustrup.

È diventato uno standard per i nuovi programmatori dopo essere apparso in Kernighan e Ritchie, che è probabilmente l'introduzione alla programmazione più venduta di tutti i tempi.


Guardando (il?) Manuale BCPL cm.bell-labs.com/cm/cs/who/dmr/bcpl.pdf non lo vedo
barlop

1
Il libro C non era nel 1972. Il libro B era il 1972. La prima edizione del libro C, è stata pubblicata nel 1978 en.wikipedia.org/wiki/The_C_Programming_Language_(book) C'era un "memorandum interno 1974 Bell Laboratories di Brian Kernighan, Programming in C: A Tutorial " en.wikipedia.org/wiki/Hello_world_program
barlop

1
C'è una sezione I / O nel suo tutorial C del 1974 sebbene lysator.liu.se/c/bwk-tutor.html printf ("hello, world \ n"); e soprattutto, nella sezione 2, senza \ ne in un programma. main( ) { printf("hello, world"); }Sii interessante vedere qualcosa da B e BCPL.
barlop

3
ben fatto per aver effettivamente conversato con l'uomo stesso e "confermare" l'aspetto, trovato in un "tesoro di appunti", ma puoi presentare il programma vero e proprio nella tua risposta?
barlop

1
Ho trovato un'immagine su wikipedia, immagine - en.wikipedia.org/wiki/Computer_program#/media/… . Pagina di origine - en.wikipedia.org/wiki/Computer_program
Daryn

48

Secondo wikipedia :

Sebbene piccoli programmi di test esistessero sin dallo sviluppo dei computer programmabili, la tradizione di utilizzare la frase "Hello world!" come messaggio di prova è stato influenzato da un programma di esempio nel libro fondamentale The C Programming Language. Il programma di esempio di quel libro stampa "hello, world" (senza lettere maiuscole o punto esclamativo) ed è stato ereditato da un memorandum interno dei Bell Laboratories del 1974 di Brian Kernighan, Programming in C: A Tutorial, che contiene la prima versione conosciuta:

 main() {
        printf("hello, world");
 }

Il primo caso noto dell'uso delle parole "ciao" e "mondo" insieme nella letteratura informatica si è verificato prima, nel Tutorial Introduction to the Language B di Kernighan del 1972 [1], con il seguente codice:

main( ) {
  extrn a, b, c;
  putchar(a); putchar(b); putchar(c); putchar('!*n');
}
a 'hell';
b 'o, w';
c 'orld';

sembra che il tutorial C del 1974 sia qui cprogramming.com/cgi-bin/cdir/… che punta a lysator.liu.se/c/bwk-tutor.html Ho notato che dove hai scritto main()è sulla pagina html che ho menzionato elencato come main( )ie uno spazio tra il ().
barlop

10

Il primo programma in C nel libro "The C Programming Language" era di stampare "ciao mondo!" sullo schermo.

Da allora viene utilizzato come primo programma per introdurre i dettagli di base di un linguaggio di programmazione.


7

Da http://en.wikipedia.org/wiki/Hello_world_program :

Il primo caso noto dell'uso delle parole "ciao" e "mondo" insieme nella letteratura informatica si è verificato prima, nel Tutorial Introduction to the Language B di Kernighan del 1972 [1], con il seguente codice:

main( ) {
  extrn a, b, c;
  putchar(a); putchar(b); putchar(c); putchar('!*n');
}
a 'hell';
b 'o, w';
c 'orld';

5

Avrei dovuto essere più attento con il linguaggio nel mio post originale su questo -

Ovviamente Barlop ha ragione, K&R è stato pubblicato nel 1978. Nel mio post mancava un coma. Volevo dire che il manuale BCPL con il codice Hello World del Dr. Kernighan era datato 1972. Il memorandum con un riferimento a questo è del 1974.

Martin Richards ha questi documenti. Ho una brutta fotocopia del manuale e una copia del memorandum.

Credo che l'originale non avesse punteggiatura.

Il BCPL e il codice B sono apparsi quasi contemporaneamente. Ho sempre pensato che il codice B citato da venisse per primo, ma Martin Richards sembrava pensare che il codice BCPL fosse il primo. In entrambi i casi, "Hello Word!" è antecedente a K&R, e il suo primo utilizzo documentato nel codice sembra essere stato scritto da Brian Kernighan dei Bell Labs.


0

La prima volta che l'ho visto in stampa è stata (credo) la prima edizione di K&R, quindi sarebbe stato intorno al 1982, ma avevo scritto i miei programmi "Hello world" molto prima, come tutti gli altri.


0

Da Wikipedia

Sebbene piccoli programmi di test esistessero sin dallo sviluppo dei computer programmabili, la tradizione di utilizzare la frase "Hello world!" come messaggio di prova è stato influenzato da un programma di esempio nel libro fondamentale The C Programming Language. Il programma di esempio di quel libro stampa "hello, world" (senza lettere maiuscole o punto esclamativo) ed è stato ereditato da un memorandum interno dei Bell Laboratories del 1974 di Brian Kernighan, Programming in C: A Tutorial, che contiene la prima versione conosciuta:

http://en.wikipedia.org/wiki/Hello_world_program

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.