Zum Inhalt springen

„Hallo-Welt-Programm“ – Versionsunterschied

aus Wikipedia, der freien Enzyklopädie
[ungesichtete Version][gesichtete Version]
Inhalt gelöscht Inhalt hinzugefügt
K Vorlagenfehler korrigiert, Nachweise präzisiert
 
Zeile 1: Zeile 1:
[[Datei:Hello world c.svg|mini|hochkant=1.4|''Hello-world''-Quelltext in [[C (Programmiersprache)|C]] aus dem Handbuch ''Programming in C – A Tutorial'' von 1974.<ref name="tutorial">{{cite web|url=https://www.bell-labs.com/usr/dmr/www/ctut.pdf |author=Brian W. Kernighan|title=Programming in C – A Tutorial|publisher=[[Bell Laboratories]]|language=en |year=1974|format=PDF}}</ref>]]
'''Hallo Welt!''' ist ein bekanntes Beispielprogramm, das am Anfang fast jedes Programmierkurses vorkommt.
[[Datei:PSP-Homebrew.jpeg|mini|''Hello world'' eines [[Homebrew]]-Programms auf [[PlayStation Portable]]]]


Das fertige [[Computerprogramm]] gibt lediglich den Text "Hallo Welt!" (oder etwas ähnliches) auf dem [[Bildschirm]] aus. Dieses Programm soll dem angehenden [[Programmierer]] zeigen, was alles für ein vollständiges Programm (in der betreffenen [[Programmiersprache]]) benötigt wird, und einen ersten Einblick in die [[Syntax]] geben. Dies gelingt je nach verwendeter Sprache nur mäßig. Auf jeden Fall ist das Programm aber geeignet zu prüfen, ob die Installation einer Programmiersprache gelungen ist und man die grundsätzliche Verwendung (Aufruf, eventuell [[Kompilierung]]) verstanden hat.
Ein '''Hallo-Welt-Programm''' ist ein kleines [[Computerprogramm]], das auf möglichst einfache Weise zeigen soll, welche Anweisungen oder Bestandteile für ein vollständiges Programm in einer [[Programmiersprache]] benötigt werden, und somit einen ersten Einblick in die [[Syntax]] gibt. Aufgabe des Programms ist, den Text ''Hallo Welt!'' oder auf Englisch ''Hello World!'' auszugeben. Wegen der einfachen Aufgabenstellung eignen sich solche Programme insbesondere für didaktische Zwecke. Deshalb wird es in vielen Programmier-Lehrbüchern als Einsteigerprogramm verwendet.


== Geschichte ==
Der Ausruf "Hello, world!" ist ein englischer Ausdruck, der in der Praxis oft durch einen anderen kurzen, meist bedeutungslosen Text ersetzt wird.
Die Verwendung des Textes „Hello World!“ ist eine Tradition und geht auf ''Programming in C – A Tutorial''<ref name="tutorial" /> zurück, ein internes Programmierhandbuch der [[Bell Laboratories]] über die Programmiersprache [[C (Programmiersprache)|C]], das [[Brian W. Kernighan|Brian Kernighan]] 1974 verfasste, nachdem er dort schon ein Jahr zuvor die Wörter „hello“ und „world“ in einer Einführung in die Programmiersprache [[B (Programmiersprache)|B]] verwendet hatte.<ref>{{Literatur |Autor=Brian W. Kernighan |Titel=A Tutorial Introduction to the Language B|Sammelwerk=The Programming Language B |Sprache=en |Ort=Murray Hill, NJ |Datum=1973-01 |Reihe=Bell Laboratories Computing Science Technical Report |BandReihe=8 |Online=https://www.bell-labs.com/usr/dmr/www/bintro.html}}</ref> Bekanntheit erlangte der Text jedoch erst durch die 1978 erfolgte Veröffentlichung in dem Buch ''[[The C Programming Language]]'' ({{deS|''Programmieren in&nbsp;C''}}) von [[Brian W. Kernighan|Brian Kernighan]] und [[Dennis Ritchie]].<ref>{{Literatur |Autor=Brian W. Kernighan, Dennis M. Ritchie |Titel=The C Programming Language |Auflage=1 |Verlag=[[Prentice Hall]] |Ort=Englewood Cliffs, NJ |Datum=1978-02 |Sprache=en |ISBN=0-13-110163-3}}</ref>
==Zeilenorientiert ([[Konsole]])==


Auch wenn in beiden Veröffentlichungen noch die Schreibweise ''hello, world'' (ohne Großbuchstaben und Ausrufezeichen) verwendet wurde, hat sich heute ''Hello World!'' durchgesetzt.
=== [[ABAP]] ===


== Siehe auch ==
REPORT Z_HALLO_WELT.
* [[Liste von Hallo-Welt-Programmen/Höhere Programmiersprachen]]
WRITE 'Hallo Welt!'.
* [[Liste von Hallo-Welt-Programmen/Assembler]]

* [[Liste von Hallo-Welt-Programmen/Sonstige]]
=== [[Ada (Programmiersprache)|Ada]] ===

with Ada.Text_IO;
procedure Hallo is
begin
Ada.Text_IO.Put_Line ("Hallo Welt!");
end Hallo;

Für eine Erkärung des Programmes siehe [[wikibooks:Programming:Ada:Basic]].

=== [[ALGOL]] ===

'BEGIN'
OUTSTRING(2,'('HALLO, WELT')');
'END'

=== [[APL (Programmiersprache)|APL]] ===
'Hallo, Welt!'

=== [[Assemblersprache|Assembler]] ===
[[x86]]-CPU, [[DOS (Betriebssystem)|DOS]]
MOV DX, OFFSET HW
MOV AH, 09H
INT 21H
MOV AX, 4C00H
INT 21H
HW DB 'Hallo Welt!$'

[[PowerPC]]-CPU, [[Linux]]
# Kompilieren mit "gcc -nostdlib -s hallo.s"
.section .rodata
.align 2
.s:
.string "Hallo Welt!\n"
.section ".text"
.align 2
.globl _start
_start:
li 0,4 # SYS_write
li 3,1 # fd = 1 (stdout)
lis 4,.s@ha # buf = .s
la 4,.s@l(4)
li 5,12 # len = 12
sc # syscall
li 0,1 # SYS_exit
li 3,0 # returncode = 0
sc # syscall

[[Motorola_68000er_Familie|680x0]]-CPU, [[Amiga]]
; Getestet mit AMS-One V1.01
move.l 4.w,a6
lea dosn(pc),a1
jsr -408(a6) ; OldOpenLibrary
move.l d0,a6
lea s(pc),a0
move.l a0,d1
jsr -948(a6) ; PutStr
move.l a6,a1
move.l 4.w,a6
jsr -414(a6) ; CloseLibrary
moveq #0,d0
rts
dosn: dc.b "dos.library",0
s: dc.b "Hallo Welt",10,0

[[PA-RISC]]-CPU, [[HP-UX]]
; Kompiliert und getestet mit
; "as hallo.s ; ld hallo.o /usr/ccs/lib/crt0"
; unter HP-UX 11.0 auf einer HP9000/L2000
.LEVEL 1.1
.SPACE $TEXT$
.SUBSPA $LIT$,ACCESS=0x2c
s .STRING "Hallo Welt\x0a"
.SPACE $TEXT$
.SUBSPA $CODE$,ACCESS=0x2c,CODE_ONLY
.EXPORT _start,ENTRY,PRIV_LEV=3
.EXPORT __errno
.EXPORT __sys_atexit
_start
__errno
__sys_atexit
ldil L'0xC0000000,%r18
ldi 4,%r22 ; SYS_write
ldi 1,%r26 ; fd = stdout
ldil LR's,%r4
ldo RR's(%r4),%r25 ; buf = s
be,l 4(%sr7,%r18) ; Syscall
ldi 12,%r24 ; len = 12 (Branch delay slot)
ldi 1,%r22 ; SYS_exit
be,l 4(%sr7,%r18) ; Syscall
ldi 0,%r26 ; returncode = 0 (Branch delay slot)

=== [[Active Server Pages|ASP (Active Server Pages)]] ===

<%
Response.Write("Hallo Welt!")
%>

oder

<%
Response.Write "Hallo Welt!"
%>

die mit dem kleinsten Aufwand ;-):

<%="Hallo Welt"%>

auch nett:

<%String halloWelt = "Hallo Welt!";%>
<%=halloWelt%>

=== [[awk]] ===

BEGIN { print "Hallo Welt!" }

=== [[B (Programmiersprache)|B]] ===

main() {
printf("Hallo Welt");
}

=== [[bash]] ===

echo Hallo Welt

=== [[BASIC]] ===

Traditionelles, unstrukturiertes BASIC:
10 PRINT "Hallo Welt!"
20 END

Eher modernes, strukturiertes BASIC
print "Hallo Welt!"

Noch kürzer mit MS-Dos-Qbasic oder [[FreeBASIC]]:
?"Hallo Welt!"

=== [[BCPL]] ===
GET "LIBHDR"
&nbsp;
LET START () BE
$(
WRITES ("Hallo Welt!*N")
$)

=== [[BeanShell]] ===
print("Hallo Welt!");

=== [[Boo (Programmiersprache)|Boo]] ===
print "Hallo Welt!"

=== [[C (Programmiersprache)|C]] ===

#include <stdio.h>
&nbsp;
int main(void)
{
puts("Hallo Welt!");
return 0; <!-- Rückgabewert darf (im Unterschied zu C++) nicht fehlen!-->
}

Erklärung siehe: [[C (Programmiersprache)#Hallo-Welt-Programm in C|Hallo-Welt-Programm in C]]

=== [[C-Plusplus|C++]] ===

#include <iostream>
&nbsp;
int main()
{
std::cout << "Hallo Welt!" << std::endl;
<!-- Rückgabewert ist (im Unterschied zu C) implizit vorhanden, fehlt also nicht!-->
}

=== [[C-Plusplus/CLI|C++/CLI]] ===

int main()
{
System::Console::WriteLine("Hallo Welt!");
<!-- Rückgabewert ist (im Unterschied zu C) implizit vorhanden, fehlt also nicht!-->
}

=== [[C-Sharp|C#]] ===

using System;
&nbsp;
class MainClass
{
public static void Main()
{
Console.WriteLine("Hallo Welt!");
}
}

=== [[Chrome (Programmiersprache)|Chrome]] ===

namespace Hallo;
&nbsp;
interface
implementation
&nbsp;
method Main;
begin
Console.WriteLine('Hallo Welt!');
end.



=== [[Common LISP]] ===

(format t "Hallo Welt!~%")

=== [[dBase]]/[[Foxpro]] ===
? "Hallo Welt!"

=== [[E_(Programmiersprache)|E]] ===

PROC main()
WriteF('Hallo Welt')
ENDPROC


=== [[EASY]] ===

in der Variante tdbengine:

module helloworld
procedure Main
cgiclosebuffer
cgiwriteln("content-type: text/html")
cgiwriteln("")
cgiwriteln("Hallo Welt!")
endproc

=== [[Eiffel (Programmiersprache)|Eiffel]] ===

class HALLO_WELT
&nbsp;
create
make
feature
make is
do
io.put_string("Hallo Welt!%N")
end
end

=== [[Emacs]] Lisp ===

(print "Hallo Welt")

=== [[Erlang (Programmiersprache)|Erlang]] ===

-module(Hallo).
-export([Hallo_Welt/0]).
&nbsp;
Hallo_Welt() -> io:fwrite("Hallo Welt!\n").

=== [[Forth (Programmiersprache)|Forth]] ===

: halloforth ( -- ) ." Hallo Welt!" ;

=== [[Fortran]] ===

PROGRAM HALLO
PRINT *, "Hallo Welt!"
END PROGRAM

=== [[Haskell (Programmiersprache)|Haskell]] ===

main = putStrLn "Hallo Welt!"

=== [[Io (Programmiersprache)|Io]] ===
"Hallo Welt" print

=== Iptscrae ===

ON ENTER {
"Hallo " "Welt!" & SAY
}

=== [[Java (Programmiersprache)|Java]] ===

public class Hallo {
public static void main(String[] args) {
System.out.println("Hallo Welt!");
}
}

=== [[Lua]] ===

print "Hallo Welt!"


=== [[Logo (Programmiersprache)|Logo]] ===

print word "Hallo Welt!"

=== [[ Mirc | mIRC Script]] ===

/echo Hallo Welt!
oder
//echo -a Hallo Welt!

=== MIXAL ===

TERM EQU 19 the MIX console device number
ORIG 1000 start address
START OUT MSG(TERM) output data at address MSG
HLT halt execution
MSG ALF "MIXAL"
ALF " HELL"
ALF "O WOR"
ALF "LD "
END START end of the program

=== [[MS-DOS]] [[Stapelverarbeitung|Batch]] ===

@echo Hallo Welt!

=== [[Mumps (Programmiersystem)|Mumps]] ===
W "Hallo Welt",!

=== [[Natural (Programmiersprache)|Natural]] ===

WRITE 'Hallo Welt'
*
END
=== [[Oberon (Programmiersprache)|Oberon]] ===
MODULE HalloWelt;
IMPORT Write;
BEGIN
Write.Line("Hallo Welt!");
END HalloWelt.

=== [[Objective CAML|OCaml]] ===
print_endline "Hallo Welt!"

=== [[Objective C]] ===
void main()
{
puts ("Hello World");
}

=== [[Object Pascal|Object Pascal (Delphi)]] ===

program HalloWelt;
{$APPTYPE CONSOLE}
&nbsp;
begin
writeln('Hallo Welt!');
end.

=== [[Open Programming Language|OPL]] ===
PROC Hallo:
PRINT "Hallo Welt"
ENDP

=== [[Pascal (Programmiersprache)|Pascal]] ===
program Hallo ( output );
begin
writeln('Hallo Welt!')
end.

=== [[Pascal (Programmiersprache)|Turbo-Pascal]] ===
begin
writeln('Hallo Welt!');
end.

=== [[Perl]] ===

print "Hallo Welt!\n";

=== [[PHP]] ===

<?php
echo( "Hallo Welt!" );
?>

oder

<?="Hallo Welt!"?>

=== [[Pike (Programmiersprache)|Pike]] ===
int main() {
write("MIMIMIMIMIMI!\n");
return 0;
}

=== [[PocketC]] ===
Konsole:
main() {
puts("Hallo Welt!");
}
Dialogfenster:
main() {
alert("Hallo Welt!");
}
In einer Textbox:
main() {
box=createctl("EDIT","Test",ES_MULTILINE,0x000,30,30,100,30,3000);
editset(box,"Hallo Welt!");
}

=== [[PL/1]] ===

Test: procedure options(main);
put skip list("Hallo Welt!");
end Test;

=== [[PL/SQL]] ===
BEGIN
DBMS_OUTPUT.PUT_LINE('Hallo Welt!');
END;

=== [[Prolog (Programmiersprache)|Prolog]] ===

?- write('Hallo Welt!'), nl.

=== [[Pure_Basic|PureBasic]] ===
; In der Konsole
OpenConsole()
Print("Hallo Welt!")
CloseConsole()
;Im Dialogfenster
MessageRequester("Hallo Welt","Hallo Welt",0) ; By Marc-Sven Rudolf (PureBasic-Lounge.de)
;Im Fenster
If OpenWindow (1,0,0,300,50,#PB_Window_ScreenCentered|#PB_Window_SystemMenu,"Hallo Welt")
If CreateGadgetList(WindowID(1))
TextGadget(1,10,10,280,20,"Hallo Welt!!!",#PB_Text_Border)
EndIf
Repeat
event.l = WaitwindowEvent()
Until event.l = #PB_Event_CloseWindow
End
EndIf ; By Marc-Sven Rudolf (PureBasic-Lounge.de)

=== [[Python (Programmiersprache)|Python]] ===

print "Hallo Welt!"

=== [[GNU R|R]] ===
Gibt folgendes aus: [1] "Hallo Welt!"

print ("Hallo Welt!")

=== [[REXX]] ===

say "Hallo Welt!"

=== [[RPG (Programmiersprache) | RPG]] ===

D HALLO S 10A
C EVAL HALLO = 'Hallo Welt'
C DSPLY HALLO
C EVAL *INLR = *ON

=== [[RPL]] ===

<< "Hallo Welt!" 1 Disp>>

=== [[Ruby]] ===

puts "Hallo Welt!"

=== [[Scheme]] ===
(display "Hallo Welt!")
(newline)

=== [[sed]] ===
Benötigt mindestens eine Zeile als Eingabe:

sed -ne '1s/.*/Hallo Welt!/p'

=== [[Smalltalk (Programmiersprache)|Smalltalk]] ===

Transcript show: 'Hallo Welt!'

=== [[SML]] ===

print "Hallo Welt!\n"

=== [[SNOBOL4]] ===

OUTPUT = "Hallo Welt!"
END

=== STARLET ===

RACINE: HELLO_WORLD.
&nbsp;
NOTIONS:
HELLO_WORLD : ecrire("Hallo Welt!").

=== [[SQL]] ===

select 'Hallo Welt!' as message;

Für [[Oracle]]-[[Datenbanken]]

select 'Hallo Welt!' from dual;

Für [[DB2|IBM-DB2]]

select 'Hallo Welt!' from sysibm.sysdummy1;

oder

values('Hallo Welt!');

Für [[MSSQL]]

select 'Hallo Welt!'

oder galanter
print 'Hallo Welt'

=== StarOffice Basic ===

sub main
print "Hallo Welt!"
end sub

=== [[Tcl]] ===

puts "Hallo Welt!"

=== TI-BASIC ===

:Disp "Hallo Welt!"

=== Turing ===

put "Hallo Welt!"

=== [[Unix-Shell]] ===

echo 'Hallo Welt!'

=== [[Visual Basic .NET]] ===

Imports System
&nbsp;
Module Main
Sub Main()
Console.WriteLine("Hallo Welt!")
End Sub
End Module

==Grafische Benutzeroberflächen – als traditionelle Anwendungen==

=== [[AppleScript]] ===
display dialog "Hallo Welt!"

=== [[C-Plusplus|C++]]-Bindungen für [[GTK]] ===

#include <iostream>
#include <gtkmm/main.h>
#include <gtkmm/button.h>
#include <gtkmm/window.h>
using namespace std;
&nbsp;
class HalloWelt : public Gtk::Window {
public:
HalloWelt();
virtual ~HalloWelt();
protected:
Gtk::Button m_button;
virtual void on_button_clicked();
};
&nbsp;
HalloWelt::HalloWelt()
: m_button("Hallo Welt!") {
set_border_width(10);
m_button.signal_clicked().connect(SigC::slot(*this,
&HalloWelt::on_button_clicked));
add(m_button);
m_button.show();
}
&nbsp;
HalloWelt::~HalloWelt() {}
&nbsp;
void HalloWelt::on_button_clicked() {
cout << "Hallo Welt!" << endl;
}
&nbsp;
&nbsp;
int main (int argc, char *argv[]) {
Gtk::Main kit(argc, argv);
HalloWelt HalloWelt;
Gtk::Main::run(HalloWelt);
return 0;
}

=== [[C-Plusplus|C++]] mit [[Qt-Toolkit|Qt]] ===

#include <qapplication.h>
#include <qpushbutton.h>
int main( int argc, char **argv )
{
QApplication a( argc, argv );
QPushButton hallo( "Hallo Welt!", 0 );
hallo.resize( 100, 30 );
a.setMainWidget( &hallo );
hallo.show();
return a.exec();
}

=== [[C-Sharp|C#]] ===
using System;
using System.Windows.Forms;
&nbsp;
namespace Hallo_Welt {
public class HalloWelt : Form {
&nbsp;
[STAThread]
public static void Main() {
Application.Run(new HalloWelt());
}
&nbsp;
public HalloWelt() {
Label label;
(label = new Label()).Text = "Hallo Welt";
Controls.Add(label);
}
&nbsp;
}
}

=== [[Clarion (Programmiersprache)|Clarion]] ===
program
window WINDOW('Hallo Welt'),AT(,,300,200),STATUS,SYSTEM,GRAY,DOUBLE,AUTO
END
code
open(window)
show(10,10,'Hallo Welt')
accept
end
close(window)

=== [[Delphi (Programmiersprache)|Delphi]] ===
program HalloWelt;
&nbsp;
uses Dialogs;
&nbsp;
begin
ShowMessage('Hallo Welt!');
end.

=== [[EASY]] ===
in der Variante VDP:

module helloworld
procedure Main
Message("Hallo Welt!")
endproc

=== [[Gambas (Computer)|Gambas]] ===
PUBLIC SUB Form_Enter()
PRINT "Hallo Welt"
END

=== [[Java (Programmiersprache)|Java]] ===
*[[AWT]]:
import java.awt.Frame;
import java.awt.Label;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
&nbsp;
public class HalloWeltFenster extends Frame {
&nbsp;
public HalloWeltFenster() {
super("Hallo Welt!");
Label halloWeltLabel = new Label("Hallo Welt!");
add(halloWeltLabel);
&nbsp;
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
&nbsp;
setResizable(false);
setLocation(350, 320);
setSize(160, 60);
setVisible(true);
}
&nbsp;
public static void main(String[] args) {
new HalloWeltFenster();
}
}
*[[Swing (Java)|Swing]]:
import javax.swing.JFrame;
import javax.swing.JLabel;
&nbsp;
public class HelloWorld extends JFrame {
&nbsp;
public HelloWorld() {
super("Hallo Welt!");
JLabel halloWeltLabel = new JLabel("Hallo Welt!");
getContentPane().add(halloWeltLabel);
&nbsp;
setDefaultCloseOperation(EXIT_ON_CLOSE);
&nbsp;
setResizable(false);
setLocation(350, 320);
setSize(160, 60);
setVisible(true);
}
&nbsp;
public static void main(String[] args) {
new HelloWorld();
}
}

=== [[LISP]] ===
(alert "Hallo Welt!")

=== Profan² / XProfan² ===
Print "Hallo Welt"
WaitKey
End

oder einfach nur

Messagebox "Hallo Welt","",0

=== PureBasic ===
MessageRequester("","Hallo Welt")

=== [[Tk|TclTk]] ===
label .label1 -text "Hallo Welt"
pack .label1
oder kürzer (unter Ausnutzung, dass das Label-Kommando den Namen zurückgibt):
pack [label .label1 -text "Hallo Welt"]

=== [[Visual Basic .NET]] ===
MessageBox.Show("Hallo Welt!")



=== [[Waba]] / SuperWaba ===
import waba.ui.*;
import waba.fx.*;
&nbsp;
public class HelloWorld extends MainWindow
{
&nbsp;
public void onPaint(Graphics g)
{
g.setColor(0, 0, 0);
g.drawText("Hallo Welt!", 0, 0);
}
}

=== [[Windows API]] (in C) ===
#include <windows.h>
&nbsp;
LRESULT CALLBACK WindowProcedure(HWND, UINT, WPARAM, LPARAM);
&nbsp;
char szClassName[] = "MainWnd";
HINSTANCE hInstance;
&nbsp;
int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
HWND hwnd;
MSG msg;
WNDCLASSEX wincl;
&nbsp;
hInstance = hInst;
&nbsp;
wincl.cbSize = sizeof(WNDCLASSEX);
wincl.cbClsExtra = 0;
wincl.cbWndExtra = 0;
wincl.style = 0;
wincl.hInstance = hInstance;
wincl.lpszClassName = szClassName;
wincl.lpszMenuName = NULL; //No menu
wincl.lpfnWndProc = WindowProcedure;
wincl.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1); //Color of the window
wincl.hIcon = LoadIcon(NULL, IDI_APPLICATION); //EXE icon
wincl.hIconSm = LoadIcon(NULL, IDI_APPLICATION); //Small program icon
wincl.hCursor = LoadCursor(NULL, IDC_ARROW); //Cursor
&nbsp;
if (!RegisterClassEx(&wincl))
return 0;
&nbsp;
hwnd = CreateWindowEx(0, //No extended window styles
szClassName, //Class name
"", //Window caption
WS_OVERLAPPEDWINDOW & ~WS_MAXIMIZEBOX,
CW_USEDEFAULT, CW_USEDEFAULT, //Let Windows decide the left and top positions of the window
120, 50, //Width and height of the window,
NULL, NULL, hInstance, NULL);
&nbsp;
//Make the window visible on the screen
ShowWindow(hwnd, nCmdShow);
&nbsp;
//Run the message loop
while (GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return msg.wParam;
}
&nbsp;
LRESULT CALLBACK WindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
PAINTSTRUCT ps;
HDC hdc;
switch (message)
{
case WM_PAINT:
hdc = BeginPaint(hwnd, &ps);
TextOut(hdc, 15, 3, "Hallo Welt!", 13);
EndPaint(hwnd, &ps);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hwnd, message, wParam, lParam);
}
return 0;
}

== Grafische Benutzeroberflächen – [[Webbrowser]]-basiert==

=== [[Coldfusion]] ===

<cfoutput>Hallo Welt!</cfoutput>


=== [[cURL]] ===
{curl (Version)applet}
Hello world

=== [[Java-Applet]] ===

Java-Applets funktionieren in Verbindung mit [[HTML]].

Die Java-Datei:

import java.applet.*;
import java.awt.*;
&nbsp;
public class HalloWelt extends Applet {
public void paint(Graphics g) {
g.drawString("Hallo Welt!", 100, 50);
}
}

Nachfolgend der Code zum Einbau in eine HTML-Seite.

Vom [[W3C]] empfohlen:
<object classid="java:HalloWelt.class"
codetype="application/java-vm"
width="600" height="100">
</object>

Für [[Kompatibilität]] zu sehr alten [[Webbrowser|Browsern]] (nicht empfohlen):

<applet code="HalloWelt.class"
width="600" height="100">
</applet>

=== [[JavaScript]] ===

JavaScript ist ein Skriptsprache, die insbesondere in [[HTML]]-Dateien verwendet wird. Der nachfolgende Code kann in HTML-Quelltext eingebaut werden:

<script type="text/javascript">
alert("Hallo Welt!");
</script>

Oder als direkte Ausgabe:

<script type="text/javascript">
document.write("Hallo Welt!");
</script>

=== [[VBScript]] ===

<script language="VBScript">
MsgBox "Hallo Welt!"
</script>

=== [[XUL]] ===

<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<label value="Hallo Welt!"/>
</window>

=== [[XAML]] ===

<?Mapping ClrNamespace="System" Assembly="mscorlib" XmlNamespace=" http://www.gotdotnet.com/team/dbox/mscorlib/System" ?>
<Object xmlns=" http://www.gotdotnet.com/team/dbox/mscorlib/System" xmlns:def="Definition" def:Class="MyApp.Hello">
<def:Code>
<![CDATA[
Shared Sub Main()
'{
System.Console.WriteLine("Hallo Welt!")' ;
'}
End Sub
]]>
</def:Code>
</Object>

==[[Exotik|Exotische]] Programmiersprachen (auch [[esoterische_Programmiersprache|esoterisch]] genannt)==

=== 23 ===

30,14,16,101,16,108,16,32,16,111,16,108,1,12,16,72,16,108,16,111,16,87,16,114,16,100,16,33

=== 4DL ===

''Siehe [http://www.cliff.biffle.org/esoterica/4dl-hello.gif] für ein Hallo-Welt-Programm in 4DL.''

=== Ale ===

\/>>>>>>\+\<<<\+!\>>\+\<<<<\-\<\-!\>>>\+\<<<\-!!+++!\/\-\/>>>>>\+\<<\+\<\+!---!\>>>
\+\>\+\<<<\-\<<<\-!\>>>\-!\<<\+\<\+!\>\-\>\-!\>\-!\/\-/>>>>>\+\<<<<<\+!\/\-\/>>>\+\<<\+!



=== BDAMD ===

Anmerkung: Dies gibt "HI" statt "Hallo Welt" aus.

84 > 84 > 84 > 84 > 84 > 84 > 84 > 85
\/
85 < 86 < 86 < 86 < 86 < 86 < 0E < 66
\/ /\
84 > 84 > 0C > 8C > E5 > 0F 84 > 85
\/ /\ \/
85 < 86 < 86 < 3E < 0E 84 > 83 < 86
\/ /\ \/
84 > 84 > 84 > 84 > 84 > 0F 84 > 85
\/
00 < 00 < 00 < B6 < 0E < B6 < 0E < 86

=== [[Beatnik (Programmiersprache)|Beatnik]] ===

Anmerkung: Das folgende Programm gibt "Hi" statt "Hallo Welt" aus.

Baa, badassed areas!
Jarheads' arses
queasy nude adverbs!
Dare address abase adder? *bares baser dadas* HA!
Equalize, add bezique, bra emblaze.
He (quezal), aeons liable. Label lilac "bulla," ocean sauce!
Ends, addends,
duodena sounded amends.

=== [[Befunge]] ===

"!tleW ollaH">,:v
^ _@

=== Borg ===

main: "Hallo Welt!\n">out :

=== [[Brainfuck]] ===

++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<
+++++++++++++++.>.+++.------.--------.>+.>.
Eine Erklärung des Programmes findet sich unter [[Brainfuck#Beispielprogramme in Brainfuck]].

==== [[Brainfuck2D]] ====
Informationen zur "Abart" von Brainfuck sind unter [http://www.freakx.net/bf2d/] erhältlich. Das Programm gibt "Hello World!" aus.
* *0**************
* * *
* * *
*9******************* * * *7***************
* * ** *
* * * * *
* * * * *
* * * * *
* **********0* * *
* ********** *
* * *
* * *
*44**************************** * *
* * *
* * *
***********0* * 0 *
* * *3*** * *
* * * 0 *
* * 2 * *
* * *7*********** * *
* * * * *
0 * * * *4***********
* * * * *
* * * * *0**** *
* 0 * * * * *
* *****************************BRAINFUCK******************************************
* * * * *
********************** * * *
* *0*** *
** *
* * *
* * *
* *********************
* * *
* * *
* * *8****************
* *26**** *
* * *
* * *0****** *
* * * * * *
* ** * * * * *
* * * * * ** * *4*******
* * * * * * * * *
* * * * * * * * *
* * * * *****0* *****************************
* * * * *
* * * * *
******0* * * *
* * *92***********
* *3****** *
* * *
* * * *
* ** * *
* * * * *0***** *
* * * * * 0 *
* * ********* * * *5****
* * * * *
* 0 *3******** * *
* * * * *
**************************************************************
* * *
* * *****8* *
* * 0 * * *
** * * * **
* * ***6* * * *
* * * * *
** *0********* * *
* * * *
* * * *
* * * *
* * * *
************************************** *
* 0
* *91*************
*2222***************************** *
* *
* *
*0************************************** *
* * * * **
* * * * * *
* * * * * *
* * * * * *
* * * ***** *
* *31******* * *
* * * *
* * ***************
* *
***********************

=== [[Chef_(Programmiersprache)|Chef]] ===

Ingredients.
72 g haricot beans
101 eggs
108 g lard
111 cups oil
32 zucchinis
119 ml water
114 g red salmon
100 g dijon mustard
33 potatoes
Method.
Put potatoes into the mixing bowl. Put dijon mustard into the mixing bowl. Put lard into the mixing bowl.
Put red salmon into the mixing bowl. Put oil into the mixing bowl. Put water into the mixing bowl. Put
zucchinis into the mixing bowl. Put oil into the mixing bowl. Put lard into the mixing bowl. Put lard
into the mixing bowl. Put eggs into the mixing bowl. Put haricot beans into the mixing bowl. Liquefy
contents of the mixing bowl. Pour contents of the mixing bowl into the baking dish.
Serves 1.

=== Choon ===

AGb-A#A#+A+%A#DF-AC#

=== Condit ===

when a=0 then put "Hallo Welt!" set a=1

=== Homespring ===

Universe of bear hatchery says Hallo. Welt!.
It powers the marshy things;
the power of the snowmelt overrides...

=== [http://www.cliff.biffle.org/esoterica/hq9plus.html HQ9+] ===

Zweck der Sprache ist vor allem das einfache Schreiben von "Hello World"-Programmen.

H

=== [[INTERCAL]] ===

PLEASE DO ,1 <- #13
DO ,1 SUB #1 <- #238
DO ,1 SUB #2 <- #112
DO ,1 SUB #3 <- #112
DO ,1 SUB #4 <- #0
DO ,1 SUB #5 <- #64
DO ,1 SUB #6 <- #238
DO ,1 SUB #7 <- #26
&nbsp;
DO ,1 SUB #8 <- #248
DO ,1 SUB #9 <- #168
DO ,1 SUB #10 <- #24
DO ,1 SUB #11 <- #16
DO ,1 SUB #12 <- #158
DO ,1 SUB #13 <- #52
PLEASE READ OUT ,1
PLEASE GIVE UP

=== [[Java2K]] ===

Da es sich bei [[Java2K]] um eine wahrscheinlichkeitstheoretische Sprache handelt, lässt sich auch nur ein "Wahrscheinlich Hello World" schreiben.

1 1 /125 /131 /119 /125 /11 6/*/_\/_\/125 /13 2
/*/_\/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2
/*/_\/_\\/119 /125 /11 6/*/_\/_\/125 /13 2/*/_\
/_\\\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/
_\/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/
_\/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/
_\/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/
_\/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/
_\/_\\/119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\
\\\\\\\/*\1 1 /125 /119 /11 6/*/_\/13 2/*/_\\/
125 /131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\
/_\\/119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\\
/125 /131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_
\/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_
\/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_
\/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_
\/_\\/119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\
\\\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\
/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\
/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\
/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\
/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\
/_\\/119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\\
\\\\\\\/*\1 1 /125 /131 /119 /125 /11 6/*/_\/_\
/125 /13 2/*/_\/_\\/119 /125 /11 6/*/_\/_\/
125 /13 2/*/_\/_\\\/125 /131 /119 /125 /11 6/*/
_\/_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/*/
_\/_\/125 /13 2/*/_\/_\\/119 /125 /11 6/*/_\/_\
/125 /13 2/*/_\/_\\\\/125 /131 /119 /125 /11 6/
*/_\/_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/
*/_\/_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/
*/_\/_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/
*/_\/_\/125 /13 2/*/_\/_\\/119 /125 /11 6/*/_\/
_\/125 /13 2/*/_\/_\\\\\\/131 /119 /125 /11 6/*
/_\/_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/*
/_\/_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/*
/_\/_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/*
/_\/_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/*
/_\/_\/125 /13 2/*/_\/_\\/119 /125 /11 6/*/_\/_
\/125 /13 2/*/_\/_\\\\\\\\\\/*\1 1 /125 /131 /
119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\/119 /
125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\\/125 /
131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\/
131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\/
119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\\\/
125 /131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\
/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\
/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\
/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\
/_\\/119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\\
\\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/
_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/
_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/
_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/
_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/
_\\/119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\\\
\\\\\\/*\1 1 /125 /119 /11 6/*/_\/13 2/*/_\\/
125 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\/
125 /131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\
/_\\/119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\\
/125 /131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_
\/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_
\/_\\/119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\
\\/125 /131 /119 /125 /11 6/*/_\/_\/125 /13 2/*
/_\/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*
/_\/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*
/_\/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*
/_\/_\\/119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_
\\\\\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/
_\/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/
_\/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/
_\/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/
_\/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/
_\/_\\/119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\
\\\\\\\\\\\/*\1 1 /125 /131 /119 /125 /11 6/*/_
\/_\/125 /13 2/*/_\/_\\/119 /125 /11 6/*/_\/_\/
125 /13 2/*/_\/_\\\/125 /131 /119 /125 /11 6/*/
_\/_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/*/
_\/_\/125 /13 2/*/_\/_\\/119 /125 /11 6/*/_\/_\
/125 /13 2/*/_\/_\\\\/131 /119 /125 /11 6/*/_\/
_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/*/_\/
_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/*/_\/
_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/*/_\/
_\/125 /13 2/*/_\/_\\/119 /125 /11 6/*/_\/_\/
125 /13 2/*/_\/_\\\\\\\\/*\1 1 /131 /119 /125 /
11 6/*/_\/_\/125 /13 2/*/_\/_\\/131 /119 /125 /
11 6/*/_\/_\/125 /13 2/*/_\/_\\/131 /119 /125 /
11 6/*/_\/_\/125 /13 2/*/_\/_\\/131 /119 /125 /
11 6/*/_\/_\/125 /13 2/*/_\/_\\/119 /125 /11 6/
*/_\/_\/125 /13 2/*/_\/_\\\\\\/*\1 1 /125 /
119 /11 6/*/_\/13 2/*/_\\/125 /119 /125 /11 6/*
/_\/_\/125 /13 2/*/_\/_\\/125 /131 /119 /125 /
11 6/*/_\/_\/125 /13 2/*/_\/_\\/119 /125 /11 6/
*/_\/_\/125 /13 2/*/_\/_\\\/125 /131 /119 /
125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\/131 /119 /
125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\/131 /119 /
125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\/119 /125 /
11 6/*/_\/_\/125 /13 2/*/_\/_\\\\\/131 /119 /
125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\/131 /119 /
125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\/131 /119 /
125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\/131 /119 /
125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\/131 /119 /
125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\/119 /125 /
11 6/*/_\/_\/125 /13 2/*/_\/_\\\\\\\\\\\/*\
1 1 /125 /119 /11 6/*/_\/13 2/*/_\\/125 /119 /
125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\/125 /131 /
119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\/119 /
125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\\/125 /
131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\/
131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\/
119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\\\/
125 /131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\
/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\
/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\
/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\
/_\\/119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\\
\\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/
_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/
_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/
_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/
_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/
_\\/119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\\\
\\\\\\\\/*\1 1 /125 /119 /125 /11 6/*/_\/_\/
125 /13 2/*/_\/_\\/125 /131 /119 /125 /11 6/*/_
\/_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/*/_
\/_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/*/_
\/_\/125 /13 2/*/_\/_\\/119 /125 /11 6/*/_\/_\/
125 /13 2/*/_\/_\\\\\/125 /131 /119 /125 /11 6/
*/_\/_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/
*/_\/_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/
*/_\/_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/
*/_\/_\/125 /13 2/*/_\/_\\/119 /125 /11 6/*/_\/
_\/125 /13 2/*/_\/_\\\\\\/131 /119 /125 /11 6/*
/_\/_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/*
/_\/_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/*
/_\/_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/*
/_\/_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/*
/_\/_\/125 /13 2/*/_\/_\\/119 /125 /11 6/*/_\/_
\/125 /13 2/*/_\/_\\\\\\\\\\/*\1 1 /125 /131 /
119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\/119 /
125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\\/125 /
131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\/
131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\/
119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\\\/
125 /131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\
/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\
/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\
/_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\
/_\\/119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\\
\\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/
_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/
_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/
_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/
_\\/131 /119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/
_\\/119 /125 /11 6/*/_\/_\/125 /13 2/*/_\/_\\\\
\\\\\\/*\1 1 /125 /131 /119 /125 /11 6/*/_\/_\/
125 /13 2/*/_\/_\\/119 /125 /11 6/*/_\/_\/125 /
13 2/*/_\/_\\\/125 /131 /119 /125 /11 6/*/_\/_\
/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/*/_\/_\
/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/*/_\/_\
/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/*/_\/_\
/125 /13 2/*/_\/_\\/119 /125 /11 6/*/_\/_\/
125 /13 2/*/_\/_\\\\\\/131 /119 /125 /11 6/*/_\
/_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/*/_\
/_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/*/_\
/_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/*/_\
/_\/125 /13 2/*/_\/_\\/131 /119 /125 /11 6/*/_\
/_\/125 /13 2/*/_\/_\\/119 /125 /11 6/*/_\/_\/
125 /13 2/*/_\/_\\\\\\\\\/*\

=== [[Malbolge]] ===

(=<`:9876Z4321UT.-Q+*)M'&%$H"!~}|Bzy?=|{z]KwZY44Eq0/{mlk**hKs_dG5
[m_BA{?-Y;;Vb'rR5431M}/.zHGwEDCBA@98\6543W10/.R,+O<

=== Mouse ===

"HELLO, WORLD.!"
$$

=== nouse ===

#0<a>0:0#0>e>0:0#0>f>0>0:0#0^f>0:0#0+4>0:0#0#h>0:0#0^f>0:0#0<g>0:0#0>f
>0:0#0<e>0:0#0?4>0:0#0^1>0:0#0>1>0:0^0

=== [[Ook!]] ===

Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook.
Ook! Ook. Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook?
Ook! Ook! Ook? Ook! Ook? Ook. Ook. Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook! Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook.
Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook.
Ook? Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook! Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook.
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook. Ook! Ook.

=== Oroogu ===

d / ("Hallo Welt!")

=== Orthogonal ===

0 'd' 'l' 'r' 'o' 'w' ' ' ',' 'o' 'l' 'l' 'e' 'h' s 0 c 0 ret

=== Pandora ===

Hallo Welt
&nbsp;
forget
&nbsp;
come from "Hallo" print "Hallo " return
&nbsp;
come from "Welt" print "Welt!" return

=== reMorse ===

Beachten Sie, dass dies kein komplettes Hallo-Welt-Programm ist.

- - - ..- ...-.---.;newline
- - - .-. - ..-.- ...-. ---.;!
- - - ...- . . -.---.;d
----. . . -.---.;l
----. . -...---.;r
----. -...---.;o
----...-.- ..-. ---.;W
<!--
<i didn't feel like doing this part>
-..............;output all characters

(macht den Text kaputt (tb)

-->

=== RUBE ===

0a21646c726f77202c6f6c6c6548
, :::::::::::::::::::::::::::: ,
)
==============================
F
O F
c
=

=== Sally ===

sidefxio
void main
print 'H
print 'e
print 'l
print 'l
print 'o
print ',
&nbsp;
print as char 32
print 'w
print 'o
print 'r
print 'l
print 'd
print '!

=== Sansism ===

G GGG
>++++++++++>!+++++++!++++++++++!+++!+##!!!!##-G+G
G.+++++++++++++++##!!##.++!.+++..+++++++.+!.++! G
G!.+++.------.--------.!+.!.G GG

=== Shelta ===

[ `Hallo, _32 `Welt! _13 _10 ] \15 outs \0 halt

=== SMITH ===


; Hallo Welt in SMITH - version 2 (loop)
; R0 -> index into string (starts at R10)
; R2 -> -1
MOV R0, 10
MOV R2, 0
SUB R2, 1
MOV R[R0], "Hallo Welt!"
MOV TTY, R[R0]
SUB R0, R2
MOV R1, R0
SUB R1, 23
NOT R1
NOT R1
MUL R1, 8
COR +1, -7, R1

=== [[Toadskin (Programmiersprache)|Toadskin]] ===

:V+++++;:XVV;:v-----;:xvv;XXXXXXX++.<XXXXXXXXXX+.V
++..+++.<XXX++.>>XV.XX++++.+++.v-.x++.<XXX+++.<X.>

=== Unlambda ===

`
``si`k``s.H``s.e``s.l``s.l``s.o``s.
``s.w``s.o``s.r``s.l``s.d``s.!``sri
``si``si``si``si``si``si``si``si`ki

=== var'aq ===

Anmerkung: Gibt "Was möchtest du, Universum?" auf [[Klingonisch]] aus.

~ nuqneH { ~ 'u' ~ nuqneH disp disp } name
nuqneH

=== *W ===

Functions:
|| No functions for this program !!
Stuff:
1/Hallo is chrs!
1/Sz, 1/Total are all cplx!
Text:
|| Initialize the data !!
Hallo < "Hallo Welt!"!
Size Hallo > Sz!
Total < 0!
|| Take the string length and multiply by 100 !!
- Size - 0 Total > Total %10000!
|| Print and delete a character that many times !!
& WELT < FCHRS (Hallo)!
& Hallo < - Hallo FCHRS (Hallo)!
&& %Total!
|| Add a newline !!
WELT < nl!
:Endtext

=== Whenever ===

1 print("Hallo Welt!");

=== [[Whitespace (Programmiersprache)|Whitespace]] ===

''In [ http://compsoc.dur.ac.uk/whitespace/hworld.ws [1]] finden sie ein "Hallo Welt" Programm in Whitespace.''

=== XS ===

<print>Hallo Welt</print>



=== [[Zer0 Tolerance|ZT - Zer0 Tolerance]] ===
<pre>
48<>>>>>ZT<>ZT<> Hello |
<>ZT>>ZT<>ZT<>ZT World!|
<<<<65<>6F<>6F<>6C<>>>>>
>>>2<>ZT<>ZT<>ZT<>ZT<<<8
ZT<<<<<<6C<>20<>72<>64<<
><ZT<<<<<>ZT<>ZT<>ZT><<5
>>>>ZT><<<<<6C<>57<>ZT<<
>>ZT><ZT><<<<<ZT<<ZT><<7
ZT<<21<>ZT><ZT>>ZT<<<<<|
><ZT<>ZT><42<<<<<>ZT by|
>>>>ZT><21<>>>> Philipp|
>>>>><ZT<<ZT Winterberg|
-------EXIT--[ ZT ]----|
-[www.winterbergs.de]-/
</pre>

== Textauszeichnungssprachen ==
Die folgenden Sprachen sind keine Programmiersprachen, sondern [[Textauszeichnungssprachen]], also Sprachen, mit denen man einen im Computer gespeicherten Text für die Ausgabe auf dem Bildschirm oder mit dem Drucker formatieren kann. (Allerdings kann man PostScript und TeX durchaus auch als vollwertige Programmiersprachen ansehen.) Analog zum "Hallo Welt!"-Programm ist ein "Hallo Welt!"-Dokument in einer dieser Sprachen ein Beispieldokument, das nur den Text "Hallo Welt" enthält.

=== [[Groff]] ===

\f(CW
Hallo Welt

=== [[HTML]] ===
&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "<nowiki>http://www.w3.org/TR/html4/strict.dtd</nowiki>"&gt;
&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Hallo Welt!&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;p>Hallo Welt!&lt;/p&gt;
&lt;/body&gt;
&lt;/html&gt;

=== [[LaTeX]] ===
\documentclass[a4paper]{article}
\usepackage{german}
\begin{document}
Hallo, Welt!
\end{document}

=== [[PostScript]] ===

/Courier findfont
24 scalefont
setfont
100 100 moveto
(Hallo Welt!) show
showpage

=== [[Rich Text Format|RTF]] ===

{\rtf1\ansi\deff0
{\fonttbl {\f0 Courier New;}}
\f0\fs20 Hallo Welt!
}

=== [[TeX]] ===

\font\HW=cmr10 scaled 3000
\leftline{\HW Hallo Welt}
\bye

=== [[WikiWiki]] ===

Hallo Welt!


== Weblinks ==
== Weblinks ==
{{Commonscat|Hello World}}
* [http://www.wikiservice.at/dse/wiki.cgi?HelloWorld Eine weitere Liste von "Hallo Welt!" Programmen]
* [http://helloworldcollection.de/ Hello-World-Sammlung] mit über 500 Programmiersprachen und über 70 natürlichen Sprachen.
* [http://www.99-bottles-of-beer.net 99 Bottles Of Beer]: Eine Liste mit über 600 Beispielprogrammen für die Ausgabe des gleichnamigen Liedes
* [http://www.ntecs.de/old-hp/uu9r/lang/html/lang.de.html Hello World in 132 Programmier-Sprachen]
* [http://www.roesler-ac.de/wolfram/hello.htm Sammlung mit über 200 Programmen] sowie "Hallo Welt" in einigen menschlichen Sprachen


== Einzelnachweise ==
[[Kategorie:Programmierung]]
<references/>


{{SORTIERUNG:Halloweltprogramm}}
[[bg:Hello, world]]
[[Kategorie:Programmiersprachklasse]]
[[cs:Hello world]]
[[da:Hello world-program]]
[[en:Hello world program]]
[[es:Hola mundo]]
[[et:Hello world]]
[[fr:Hello world]]
[[he:תוכנית Hello world]]
[[hu:Helló, Világ!-program]]
[[ia:Hello World]]
[[id:Hello world]]
[[it:Hello world]]
[[ja:Hello world]]
[[ko:Hello world 프로그램]]
[[nb:Hello World]]
[[nl:Hello world]]
[[pl:Hello world]]
[[pt:Programa Olá Mundo]]
[[ro:Program Hello, world!]]
[[ru:Программа Hello world]]
[[sl:PozdravljenSvet]]
[[sv:Hello, World!]]
[[vi:Chào thế giới!]]
[[zh:Hello World程序]]

Aktuelle Version vom 20. Dezember 2024, 22:17 Uhr

Hello-world-Quelltext in C aus dem Handbuch Programming in C – A Tutorial von 1974.[1]
Hello world eines Homebrew-Programms auf PlayStation Portable

Ein Hallo-Welt-Programm ist ein kleines Computerprogramm, das auf möglichst einfache Weise zeigen soll, welche Anweisungen oder Bestandteile für ein vollständiges Programm in einer Programmiersprache benötigt werden, und somit einen ersten Einblick in die Syntax gibt. Aufgabe des Programms ist, den Text Hallo Welt! oder auf Englisch Hello World! auszugeben. Wegen der einfachen Aufgabenstellung eignen sich solche Programme insbesondere für didaktische Zwecke. Deshalb wird es in vielen Programmier-Lehrbüchern als Einsteigerprogramm verwendet.

Die Verwendung des Textes „Hello World!“ ist eine Tradition und geht auf Programming in C – A Tutorial[1] zurück, ein internes Programmierhandbuch der Bell Laboratories über die Programmiersprache C, das Brian Kernighan 1974 verfasste, nachdem er dort schon ein Jahr zuvor die Wörter „hello“ und „world“ in einer Einführung in die Programmiersprache B verwendet hatte.[2] Bekanntheit erlangte der Text jedoch erst durch die 1978 erfolgte Veröffentlichung in dem Buch The C Programming Language (deutsch Programmieren in C) von Brian Kernighan und Dennis Ritchie.[3]

Auch wenn in beiden Veröffentlichungen noch die Schreibweise hello, world (ohne Großbuchstaben und Ausrufezeichen) verwendet wurde, hat sich heute Hello World! durchgesetzt.

Commons: Hello World – Sammlung von Bildern, Videos und Audiodateien

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten]
  1. a b Brian W. Kernighan: Programming in C – A Tutorial. (PDF) Bell Laboratories, 1974; (englisch).
  2. Brian W. Kernighan: A Tutorial Introduction to the Language B. In: The Programming Language B (= Bell Laboratories Computing Science Technical Report. Band 8). Murray Hill, NJ Januar 1973 (englisch, bell-labs.com).
  3. Brian W. Kernighan, Dennis M. Ritchie: The C Programming Language. 1. Auflage. Prentice Hall, Englewood Cliffs, NJ 1978, ISBN 0-13-110163-3 (englisch).