Skąd się wzięło „Hello world”?


109

hello, world” jest zwykle pierwszym przykładem dowolnego języka programowania. Zawsze się zastanawiałem, skąd wzięło się to zdanie i gdzie zostało użyte po raz pierwszy.

Kiedyś powiedziano mi, że było to pierwsze zdanie, które zostało wyświetlone na ekranie komputera, ale nie udało mi się znaleźć żadnego odniesienia do tego.

Zatem moje pytanie brzmi:
skąd bierze się praktyka używania „ hello, world” jako pierwszego przykładu języków komputerowych?
Gdzie został użyty po raz pierwszy?

Aktualizacja
Chociaż odpowiedzi są dość interesujące, powinienem był zauważyć, że przeczytałem artykuł w Wikipedii. Odpowiada na pytanie o pierwsze użycie w literaturze, ale nie udziela odpowiedzi, kiedy po hello worldraz pierwszy użyto słowa „ ” .
Myślę więc, że można bezpiecznie stwierdzić, że nie było to pierwsze zdanie, które zostało wyświetlone na ekranie komputera i że nie ma żadnej wzmianki o tym, kiedy zostało użyte po raz pierwszy?

Odpowiedzi:


97

Brian Kernighan faktycznie napisał pierwszy program „witaj, świecie” jako część dokumentacji języka programowania BCPL opracowanego przez Martina Richardsa. BCPL był używany, gdy C było rozwijane w Bell Labs kilka lat przed publikacją książki Kernighan and Ritchie's C w 1972 roku.

W ramach poszukiwań do książki, którą pisałem o środowisku programistycznym Alice, korespondowałem zarówno z prof. Kernighanem z Princeton, jak iz Martinem Richardsem z Cambridge (kiedy prowadziłem tam seminarium w latach 90-tych). Pomogli mi wyśledzić pierwsze udokumentowane użycie kodu do wydrukowania wiadomości „Hello, World!” Brian Kernighan przypomniał sobie, jak pisał kod dla części sekcji I / O podręcznika BCPL.Martin Richards - który wydaje się mieć skarb w postaci notatek, starych dokumentów itp. - odnalazł instrukcję i potwierdził, że to oryginał wygląd programu.Kod został użyty do wczesnego testowania kompilatora C i trafił do książki Kernighana i Ritchiego, a później był jednym z pierwszych programów używanych do testowania kompilatora C ++ Bjarne'a Stroustrupa.

Stał się standardem dla nowych programistów po tym, jak pojawił się w Kernighan and Ritchie, który jest prawdopodobnie najlepiej sprzedającym się wprowadzeniem do programowania wszechczasów.


Patrząc na (ten?) Podręcznik BCPL cm.bell-labs.com/cm/cs/who/dmr/bcpl.pdf Nie widzę tego
barlop

1
Książka C nie powstała w 1972 r. Książka B była w 1972 r. Pierwsza edycja książki C została opublikowana w 1978 r. En.wikipedia.org/wiki/The_C_Programming_Language_(book) Było „wewnętrzne memorandum Bell Laboratories z 1974 r. Brian Kernighan, Programming in C: A Tutorial " en.wikipedia.org/wiki/Hello_world_program
barlop

1
Istnieje sekcja I / O w jego samouczku C z 1974 r. Za pośrednictwem lysator.liu.se/c/bwk-tutor.html printf ("witaj, świecie \ n"); a powyżej, w sekcji 2, bez \ n oraz w programie. main( ) { printf("hello, world"); }Ciekawie będzie zobaczyć coś z B i BCPL.
barlop

3
Dobra robota za faktyczną rozmowę z samym człowiekiem i „potwierdzenie” wyglądu, znalezionego w „skarbcu notatek”, ale czy możesz przedstawić w swojej odpowiedzi rzeczywisty program?
barlop

1
Znalazłem obraz na wikipedii, obraz - en.wikipedia.org/wiki/Computer_program#/media/… . Strona źródłowa - en.wikipedia.org/wiki/Computer_program
Daryn

48

Według Wikipedii :

Chociaż od czasu opracowania komputerów programowalnych istniały małe programy testowe, tradycja używania wyrażenia „Hello world!” na wiadomość testową miał wpływ przykładowy program w nowatorskiej książce The C Programming Language. Przykładowy program z tej książki drukuje „hello, world” (bez wielkich liter i wykrzyknika) i został odziedziczony z wewnętrznego memorandum Briana Kernighana z 1974 r., Programming in C: A Tutorial, który zawiera pierwszą znaną wersję:

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

Pierwszy znany przypadek użycia razem słów „cześć” i „świat” w literaturze komputerowej pojawił się wcześniej, w podręczniku Wprowadzenie do języka B Kernighana z 1972 r. [1], z następującym kodem:

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

wygląda na to, że tutorial w języku C z 1974 roku jest tutaj cprogramming.com/cgi-bin/cdir/… co wskazuje na lysator.liu.se/c/bwk-tutor.html Zauważyłem, że miejsce, w którym napisałeś, main()jest na stronie html, o której wspomniałem jako main( )tj. odstęp między ().
barlop

10

Pierwszym programem w języku C w książce „The C Programming Language” był wydruk „hello world!” na ekranie.

Od tego czasu jest pierwszym programem, który wprowadza podstawowe informacje o języku programowania.


7

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

Pierwszy znany przypadek użycia razem słów „cześć” i „świat” w literaturze komputerowej pojawił się wcześniej, w podręczniku Wprowadzenie do języka B Kernighana z 1972 r. [1], z następującym kodem:

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

5

Powinienem był bardziej uważać na język w moim oryginalnym poście na ten temat -

Oczywiście Barlop ma rację, K&R został opublikowany w 1978 roku. W moim poście brakowało śpiączki. Miałem na myśli, że podręcznik BCPL z kodem Hello World dr Kernighana był datowany na 1972. Memorandum z odniesieniem do tego pochodzi z 1974 roku.

Martin Richards ma te dokumenty. Mam kiepską kserokopię instrukcji i kopię memorandum.

Myślę, że oryginał nie miał interpunkcji.

Kod BCPL i kod B pojawiły się prawie w tym samym czasie. Zawsze myślałem, że cytowany przez niego kod B jest pierwszy, ale Martin Richards wydawał się uważać, że kod BCPL był pierwszy. W obu przypadkach „Hello Word!” poprzedza K&R, a jego pierwsze udokumentowane użycie w kodzie wydaje się być napisane przez Briana Kernighana z Bell Labs.


0

Pierwszy raz, kiedy natknąłem się na to w druku, było (jak sądzę) pierwszą edycją K&R, więc byłoby to około 1982 roku, ale pisałem własne programy „Hello world” dużo wcześniej, jak wszyscy inni.


0

Z Wikipedii

Chociaż od czasu opracowania komputerów programowalnych istniały małe programy testowe, tradycja używania wyrażenia „Hello world!” na wiadomość testową miał wpływ przykładowy program w nowatorskiej książce The C Programming Language. Przykładowy program z tej książki drukuje „hello, world” (bez wielkich liter i wykrzyknika) i został odziedziczony z wewnętrznego memorandum Briana Kernighana z 1974 r., Programming in C: A Tutorial, który zawiera pierwszą znaną wersję:

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

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.