Hello world-program

Hello, world! er et simpelt computerprogram, der demonstrerer nogle af de basale elementer i et programmeringssprog. Det eneste, programmet gør, er at udskrive på skærmen teksten "Hello, world!", og programmet er ofte det første, en programmør skriver, når han/hun er ved at lære et nyt sprog.

Fra programmeringens spæde begyndelse har der altid eksisteret små programmer, som nye programmører har prøvet at skrive for at komme i gang med det aktuelle sprog. Brugen af "Hello, world!" er blevet indarbejdet med Kernighan og Ritchies klassiske bog The C Programming Language (1974), hvor programmet er det første eksempel på et program skrevet i sproget C. Udskriften i denne bog var "hello, world" (uden store bogstaver) og stammer fra Kernighans interne skrift til brug på Bell Laboratories fra samme år.

Hvis det lykkes at skrive et "Hello, world"-program og få det til at virke, er der mange ting, der er på plads:

 Syntaksen i programmet er korrekt.
 Compileren virker.
 Linkeren virker.
 Det er muligt at programmere mod ydre enheder, f.eks. en skærm.

Betegnelsen "Hello, world!" bruges også generelt om testprogrammer, der viser, at et system eller en programmeringsteknik kan bruges. Et "Hello, world!"-program i denne betydning kan for eksempel læse "Hello, world!" fra en database og dermed vise, at den virker.

Eksempler

Ada 

 with TEXT_IO;
 
 procedure HELLO is
 begin
    TEXT_IO.PUT_LINE ("Hello, world!");
 end HELLO;

Algol 
 'BEGIN'
    OUTSTRING(2,'('Hello, world!')');
 'END'

APL 

 'Hello, world!'

BASIC 
 10 PRINT "Hello world!"
 20 END

C 
 #include <stdio.h>
 #include <stdlib.h>
 
 int main(int argc, char **argv)
 {
        (void) argc;
        (void) argv;
        
        printf("Hello world!\n");
        
        return EXIT_SUCCESS;
 }

C# 
using System;
 
class Program
{
   static void Main()
   {
       Console.WriteLine("Hello world!");
   }
}

C++ 
 #include <iostream>
 
 int main()
 {
        std::cout << "Hello world!" << std::endl;
        return 0;
 }

CIL 
.assembly Hello{}
.assembly extern mscorlib {}
.method static void Main()
{
    .entrypoint
    .maxstack 1
    ldstr "Hello, world!"
    call void [mscorlib]System.Console::WriteLine(string)
    call string[mscorlib]System.Console::ReadLine()
    pop
    ret
}

COBOL 
 IDENTIFICATION DIVISION.
 PROGRAM-ID.     HELLO-WORLD.
 
 ENVIRONMENT DIVISION.
 
 DATA DIVISION.
 
 PROCEDURE DIVISION.
 DISPLAY "Hello, world!".
 STOP RUN.

Eiffel 
 class HELLO_WORLD
 
 creation
     make
 feature
     make is
     local
             io:BASIC_IO
     do
             !!io
             io.put_string("%N Hello, world!")
     end -- make
 end -- class HELLO_WORLD

FORTRAN 
    PROGRAM HELLO
      PRINT *, 'Hello, world!'
    END

Go 
import "fmt"
func main() {
    fmt.Printf("Hello, World!")
}

Java 
 public class HelloWorld {
      public static void main(String[] args) {
           System.out.println("Hello, world!");
      }
 }

Modula-2 
 MODULE Hello;
 
 FROM InOut IMPORT WriteLn, WriteString;
 
 BEGIN
    WriteString ("Hello, world!");
    WriteLn
 END Hello.

Pascal 
 program hello;
 begin
     writeln('Hello, world!')
 end.

Perl 

print "Hello world!\n";

PL/I 

 Test: proc options(main) reorder;
   put skip edit('Hello, world!') (a);
 end Test;

PHP 
 <?php
    echo "Hello, world!";
 ?>

Prolog 
 :- write('Hello world'),nl.

Python 

print "Hello, World!"

Python3 
print("Hello, World!")

Seed7 

 $ include "seed7_05.s7i";
 
 const proc: main is func
  begin
    writeln("Hello, world!");
  end func;

Simula 

 BEGIN
     OutText("Hello, world!");
     OutImage;
 END

Smalltalk 

 Transcript show: 'Hello, world!'; cr

Swift 

 print("Hello world")

Visual Basic .NET 

 Class HelloWorldApp 
     Shared Sub Main() 
         System.Console.WriteLine("Hello, World!") 
     End Sub
 End Class

Referencer

Eksterne henvisninger 

 En samling af Hello World-programmer

Software