Liste von Hallo-Welt-Programmen/Sonstige
# Liste von Hallo-Welt-Programmen/Sonstige

Dies ist eine Liste von Hallo-Welt-Programmen für grafische Benutzeroberflächen, Web-Technologien, esoterische Programmiersprachen und Textauszeichnungssprachen. Weitere Beispiele für gebräuchliche Programmiersprachen sind unter Liste von Hallo-Welt-Programmen/Höhere Programmiersprachen aufgeführt. Beispiele für Assembler Programme finden sich unter Liste von Hallo-Welt-Programmen/Assembler.

## Grafische Benutzeroberflächen als traditionelle Anwendungen

### FOCAL

wobei der Apostroph für das HP41-spezifische Anfangszeichen einer Zeichenkette steht.

### hpl (Hewlett-Packard Language um 1975)

oder

### Jass

oder

oder

Das ganze jetzt noch für eine bestimmte Zeit:

oder

### Lingo

In das Message-Fenster:

In ein Dialogfenster:

In ein gestaltbares Dialogfenster mittels MUI Xtra:

### Maschinensprache (DOS-COM-Programm auf Intel 80x86)

Eingabe dieses Programmstücks (nur das Fettgedruckte = Mnemotechnischer 1:1-Code) unter DOS - Anfrage C:\Debug -a 0D78:0100 mov dx,10b 0D78:0103 mov ah,9 0D78:0105 int 21 0D78:0107 mov ah,4c 0D78:0109 int 21 0D78:010B db "Hallo Welt!" d a 24 0D78:0118 - Eine Überprüfung des eigentlichen Programmstücks ist möglich durch u[nassemble]: -u 100 109 0D78:0100 BA0b01 MOV DX,010B 0D78:0103 B409 MOV AH,09 0D78:0105 CD21 INT 21 0D78:0107 B44C MOV AH,4C 0D78:0109 CD21 INT 21 - ... und des Text-/Datenstückes durch d[ump] -d 10b 118 ... oder des ganzen Maschinenprogramms, ebenfalls durch d[ump] -d 100 118 0D78:0100 BA 0B 01 B4 09 CD 21 B4-4C-CD 21 48 61 6C 6C 6F ......!.L.!Hallo 0D78:0110 20 57 65 6C 74 21 0D 0A-24 Welt!..$ - Unter DOS-DEBUG lässt man das Programm laufen mit g[o], sofern man es nicht als eigenständige laufendes Program als *.COM-Datei abspeichert -g Hallo Welt!

Ein einfachster Assembler übersetzt die in einem Textprogramm eingegebenen mnemotechnischen Codes im Verhältnis 1:1 (EIN Code entspricht EINEM Wort des Maschinenprogramms) in das Maschinenprogramm, mit der Vereinfachung, dass Adressen für Speicherangaben und Programmsprünge symbolisch angegeben werden können.

### Nemerle

oder:

### OPAL

Erzeugung einer denotation (Opal-Zeichenkette):

Funktion, die die Bildschirmausgabe erzeugt:

### POW!

alternativ:

### PowerScript

In einem vorher definierten Fenster mit einem Textfeld:

Als Dialogfenster:

### Profan² / XProfan

oder

oder

oder

### Promela

oder

### Pure Data

Patch als ASCII-art

Patch im Quelltext:

### RPG

RPG 3:

RPG 4:

RPG 4 (Free):

### TI-Basic

TI-Basic auf dem TI-83 Plus oder TI-84 Plus:

oder

TI-Basic auf dem TI-89, TI-92 und ähnliche:

oder

TI-Basic auf dem TI-Nspire (mit oder ohne CAS):

## Web-Technologien

### JavaServer Pages (JSP)

oder verkürzt

### Microsoft Silverlight

VB.NET:

Oder:

C#:

### X++

oder

## Esoterische Programmiersprachen

### Befunge

Oder:

### HQ9+

Zweck der Sprache ist unter anderem das einfache Schreiben von Hallo-Welt-Programmen.

### Java2K

Da es sich bei Java2K um eine wahrscheinlichkeitstheoretische Sprache handelt, lässt sich auch nur zu einer gewissen Wahrscheinlichkeit ein "Hello World" schreiben.

### MorsedC

MorsedC Programme sind einfache C Programme ins Morse-Alphabet übersetzt. (Das "#" wird als "#" geschrieben, Klammern "\", Kommentare "//")

### Ook!

**Hohoho!**

Variante von Ook!, die speziell auf den Wortschatz des Weihnachtsmanns zugeschnitten ist.

### Piet

Bei Piet ist der Quelltext eine GIF-Bilddatei.

### Shakespeare Programming Language

Das folgende Programm ist 1:1 das Hello World Programm, das sich im Anhang 1 der offiziellen Sprachdokumentation findet:

### Turingmaschine

Die folgende Turingmaschine schreibt "Hallo, Welt!" auf das Band und hält dann. Die Turingmaschine akzeptiert jede Eingabe. Das leere Feld wird durch ein Leerzeichen dargestellt. Die Turingmaschine beginnt mit dem Zustand 1 und hält beim Erreichen des Zustandes 13. Das Bandalphabet besteht aus den Symbolen !,HWaelot.

Es gelten folgende Übergangsrelationen

| Zustand | lesen | schreiben | Kopfbewegung | neuer Zustand |
| - | - | - | - | - |
| 1 | beliebig | H | rechts | 2 |
| 2 | beliebig | a | rechts | 3 |
| 3 | beliebig | l | rechts | 4 |
| 4 | beliebig | l | rechts | 5 |
| 5 | beliebig | o | rechts | 6 |
| 6 | beliebig | , | rechts | 7 |
| 7 | beliebig | | rechts | 8 |
| 8 | beliebig | W | rechts | 9 |
| 9 | beliebig | e | rechts | 10 |
| 10 | beliebig | l | rechts | 11 |
| 11 | beliebig | t | rechts | 12 |
| 12 | beliebig | ! | keine | 13 |

### Whitespace

… und in übersichtlicher Form als Leerzeichen und Tab (ACHTUNG: die Leerzeichen zwischen den einzelnen Zeichen dienen der Übersichtlichkeit und gehören nicht zum Quellcode!):

## Textauszeichnungssprachen

Die folgenden Sprachen sind keine Programmier-, 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. Analog zum Hallo-Welt-Programm ist ein Hallo-Welt-Dokument in einer dieser Sprachen ein Beispieldokument, das nur den Text "Hallo Welt!" enthält.

### Graphviz

digraph G {Hallo->Welt}

### HTML

Die folgenden Beispiele verwenden HTML5, andere HTML-Versionen unterscheiden sich leicht in der Syntax. Dies betrifft die Angabe des Dokumenttyps und der Zeichenkodierung.

**Ohne Tag-Auslassung**

In HTML-Versionen, die auf XML basieren (also den neueren), darf das schließende Tag nicht ausgelassen werden. Bei Elementen ohne Inhalt wird das schließende Tag quasi durch ein / vor der schließenden spitzen Klammer ersetzt.

**XHTML**

Im folgenden Beispiel wird ausdrücklich deklariert, dass das HTML auf XML basiert; hier wäre das Auslassen von Tags also vom Standard schlicht verboten:

**Mit Tag-Auslassung**

Bei HTML-Versionen, die noch auf SGML basieren (d. h. die älteren) ist die Auslassung bestimmter Tags (hier: <html>…</html>, <head>…</head>, <body>…</body> und das schließende </p>-Tag) formal zulässig, sofern sich das Ende des Elements zwingend aus dem Kontext ergibt. Der SGML-Standard erlaubte das, weil das ganze Markup noch von Hand getippt werden musste und so eine Menge Tipperei entfiel. Heutzutage fügen alle HTML-Editoren Markup automatisch ein, deshalb wird dieses Feature eigentlich nicht mehr benutzt, kann sich aber in älteren Seiten noch finden.

Der XML-Standard (die Weiterentwicklung von SGML) hat dieses Feature konsequenterweise abgeschafft, so dass die heutigen HTML-Versionen, die alle auf XML basieren (auch XHTML genannt), das End-Tag verlangen (s. o.).

Ohne die erklärenden Kommentare wird deutlich, wie viel Tipparbeit früher mit diesem Feature gespart werden konnte:

### PostScript

PostScript findet primär Anwendung als Seitenbeschreibungssprache. Trotzdem ist es eine Stack-basierte, Turing-vollständige Programmiersprache.

