荔园在线
荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀
[回到开始]
[上一篇][下一篇]
发信人: bakey (猪朋狗友), 信区: Program
标 题: Hello World plus 40 programming language
发信站: 荔园晨风BBS站 (Thu May 18 13:08:29 2006), 站内
http://www.roesler-ac.de/wolfram/hello.htm
---------------
The Hello World Collection
"Hello World" is the first program one usually writes when learning a new pr
ogra
mming language. This collection includes 263 Hello World programs in many mo
re-o
r-less well known programming languages, plus 40 human languages.
The list was compiled by Wolfram R?sler with help from many people around th
e wo
rld. It was started on 03-Oct-1994, put on the Internet on 30-Dec-1999, and
exce
eded 200 entries on 14-Jul-2005. It is administered as a bunch of text files
whi
ch are
compiled into this single HTML file by a bash script executed under the Cygw
in e
nvironment, run on Windows.
Click here for a list of all contributors.
Click here for related links.
Last update: Apr 24, 2006.
Please send all comments and contributions to wolfram@roesler-ac.de. Begin y
our
contribution with a comment in the respective language, and put "Hello World
" in
to the subject line to make your message pass the spam filter. (Don't use a
subj
ect line of
"Hello" alone since that's what lots of spam does!)
Index
The latest additions are shown in bold.
1C-Enterprise ABAP4 Actionscript-Flash5 Actionscript-FlashMX Ada Algol-
60
Algol-68 Amiga-E APL AppleScript ASP-JavaScript ASP-VBE ASP-VBS Assem
bler
-6502 Assembler-68000-Amiga Assembler-68000-AtariST Assembler-68008 Asse
mble
r-DG-Nova
Assembler-IBM-370 Assembler-Intel Assembler-Linux Assembler-MIPS Assembl
er-M
MIX Assembler-PDP11 Assembler-PDP8 Assembler-VP Assembler-Win32 Assembl
er-Z
80-Console Assembler-ZX81 Asterisk AutoIT3 AviSynth awk Axel
B BAL BASIC bc BCPL Beta BrainFxxx BS2000
C++ C++-Epoc C++-ISO C++-MFC C++-Qt C-AL C-Ansi C-Curses C-GEM C-In
tuit
ion C-K+R C-Objective C-PresManager C-Sharp C-Windows C-X11-Athena CA
ML-L
ight Clean Clipper Cobol Cocoa ColdFusion CommandScript Console-Posts
crip
t
D Darkbasic Dataflex dBase dc Delphi Dialect DML Dylan DynaMorph
Eiffel Elan Elliott Erlang Euphoria
Fj?lnir Focal Forth Fortran Fortran77 FortranIV Frink
G-Code Gentee-simple Gentee Gofer Groovy GynkoSoft
Haskell HDX HP-41C HP-48 HQ9+ HTML Human HyperTalk
IBM-Exec IBM-Exec2 ici Icon IDC Inform Informix-4GL Ingres-ABF Insta
llSc
ript Intercal
Jako Java Java-Mobile Java-Server-Pages Java-Servlet Java-Swing JavaSc
ript
JCL JudoScript
Kylix
LabVIEW LaTeX LibertyBASIC Limbo Lingo Lisp Lisp-Emacs Logo Logo-gra
phic
al LSL lua
m4 MACRO-10 MACRO-11 Macromedia-Flex MAMASH Maple Mathematica MATLAB
MEL
mIRC-Alias mIRC-Commandline mIRC-Script Modula-2 MPD MSDOS MSIL MuL
isp
Mumps
Natural NewtonScript Nice
Oberon.oberon Oberon.std OCaml Occam Octave Ook OpenVMS OPL.dialog O
PL.s
imple OZ
Pascal Pascal-Windows PDF Perl PHP Piet Pike PL-SQL PL1 Pocket-Calc
ulat
or POP-11 Postscript POV-Ray PowerScript Profan Prograph Progress Pr
olog
PureBasic-Console PureBasic-Messagebox PureBasic-Window Python
qore QuakeC QuickBASIC
R ratfor REALbasic RealText Rebol-view Redcode REFAL-2 Regular-Expres
sion
Rexx.simple Rexx.window RPG-IV RSL Ruby
S-Plus SAL SApp Sather Scheme Seed7 Self SenseTalk Setl2 Shakespear
e S
ilverBasic SIMPLE Simula Smalltalk.simple Smalltalk.window SMIL SML S
nobo
l Spiral SPL SQL-Advantage SQL-Oracle SQL sqlplus ST-Guide SVG
TACL TAL Tcl TECO TeX Texinfo TI-59 TI-8x TI-BASIC-Extended TI-BASI
C T
k troff TSO-CLIST Turing-Machine
Unix-Shell unlambda UnrealScript
Vatical VAX-11-Macro VAX-Macro Verilog Visual-FoxPro VisualBasic Visua
lBas
ic.NET VMS-DCL VRML
Whitespace WSH
X++ XHTML XML XQuery XSL-FO XSLT XUL
1C-Enterprise
// Hello World in 1C:Enterprise built-in script language
Message("Hello, World!");
Back to index
ABAP4
REPORT ZHB00001.
*Hello world in ABAP/4 *
WRITE: 'Hello world'.
Back to index
Actionscript-Flash5
// Hello World in Actionscript (up to Flash 5, IDE only)
trace ("Hello World");
Back to index
Actionscript-FlashMX
// Hello World in Actionscript (Flash MX onwards)
_root.createTextField("mytext",1,100,100,300,100);
mytext.multiline = true;
mytext.wordWrap = true;
mytext.border = false;
myformat = new TextFormat();
myformat.color = 0xff0000;
myformat.bullet = false;
myformat.underline = true;
mytext.text = "Hello World!";
mytext.setTextFormat(myformat);
Back to index
Ada
-- Hello World in Ada
with Text_IO;
procedure Hello_World is
begin
Text_IO.Put_Line("Hello World!");
end Hello_World;
Back to index
Algol-60
'BEGIN'
'COMMENT' Hello World in Algol 60;
OUTPUT(4,'(''('Hello World!')',/')')
'END'
Back to index
Algol-68
( # Hello World in Algol 68 # print(("Hello World!",newline)))
Back to index
Amiga-E
-> Hello World in Amiga-E
PROC main() IS WriteF('Hello World\n')
Back to index
APL
Hello World for APL. "[]" and "<-" are a single character in APL.
Comment character is Alt-comma.
[]<-'Hello World!'
Back to index
AppleScript
-- "Hello World" in AppleScript:
display dialog "Hello World"
Back to index
ASP-JavaScript
Hello World for Microsoft ASP (in JavaScript)
<%@ language="javascript" %>
<html><body>
<%
Response.Write('Hello World!');
%>
</body></html>
Back to index
ASP-VBE
<!-- Hello World in ASP-VBE (Visual Basic Script Encided) -->
<html>
<script language="VBScript.Encode">#@~^HQAAAA==@#@&HdTAK6PrCsVKP WMV[Zr@#
@&Hw
cAAA==^#~@</script>
</html>
Back to index
ASP-VBS
Hello World for Microsoft ASP (in VBScript)
<%@ language="vbscript" %>
<html><body>
<%
Response.write "Hello World!"
%>
</body></html>
Back to index
Assembler-6502
; Hello World for 6502 Assembler (C64)
ldy #0
beq in
loop:
jsr $ffd2
iny
in:
lda hello,y
bne loop
rts
hello: .tx "Hello World!"
.by 13,10,0
Back to index
Assembler-68000-Amiga
; Hello World in 68000 Assembler for dos.library (Amiga)
move.l #DOS
move.l 4.w,a6
jsr -$0198(a6) ;OldOpenLibrary
move.l d0,a6
beq.s .Out
move.l #HelloWorld,d1
A) moveq #13,d2
jsr -$03AE(a6) ;WriteChars
B) jsr -$03B4 ;PutStr
move.l a6,a1
move.l 4.w,a6
jsr -$019E(a6) ;CloseLibrary
.Out rts
DOS dc.b 'dos.library',0
HelloWorld dc.b 'Hello World!',$A,0
Back to index
Assembler-68000-AtariST
; Hello World in 68000 Assembler (Atari ST)
move.l #helloworld,-(A7)
move #9,-(A7)
trap #1
addq.l #6,A7
move #0,-(A7)
trap #1
helloworld:
dc.b "Hello World!",$0d,$0a,0
Back to index
Assembler-68008
; Hello World in 68008 Assembler (Sinclar QL)
move.l #0,a0
lea.l mess,a1
move.w $d0,a2
jsr (a2)
rts
mess dc.w 12
dc.b 'Hello World!',10
end
Back to index
Assembler-DG-Nova
.TITL HELLO
02 ; "HELLO, WORLD" FOR NOVA RUNNING RDOS
03 ; USES PCHAR SYSTEM CALL
04 .NREL
05 .ENT START
06
07 START:
08 00000'022424 DOCHAR: LDA 0,@PMSG ; LOAD AC0 WITH NEXT CHARACTER,
09 00001'101015 MOV# 0,0,SNR ; TEST AC0;
10 00002'000412 JMP DONE ; SKIPPED IF NONZERO
11 00003'006017 .SYSTM
12 00004'010000 .PCHAR ; PRINT FIRST
13 00005'000413 JMP ER ; SKIPPED IF OK
14 00006'101300 MOVS 0,0 ; SWAP BYTES
15 00007'006017 .SYSTM
16 00010'010000 .PCHAR ; PRINT SECOND
17 00011'000407 JMP ER ; SKIPPED IF OK
18 00012'010412 ISZ PMSG ; POINT TO NEXT WORD
19 00013'000765 JMP DOCHAR ; GO AROUND AGAIN
20
21 00014'006017 DONE: .SYSTM ; NORMAL EXIT
22 00015'004400 .RTN
23 00016'000402 JMP ER
24 00017'063077 HALT
25 00020'006017 ER: .SYSTM ; ERROR EXIT
26 00021'006400 .ERTN
27 00022'063077 HALT
28 00023'063077 HALT
29
30 00024'000025'PMSG: .+1 ; ADDRESS OF FIRST WORD OF TEXT
31 ; NOTE BYTES ARE PACKED RIGHT-TO-LEFT BY DEFAULT
32 00025'042510 .TXT /HELLO, WORLD!<15><12>/ ; THAT'S CR LF
33 046114
34 026117
35 053440
36 051117
37 042114
38 006441
39 000012
40 00035'000000 0 ; FLAG WORD TO END STRING
41
42 .END START
Back to index
Assembler-IBM-370
ITLE 'Hello World for IBM Assembler/370 (VM/CMS)'
HELLO START
BALR 12,0
USING *,12
*
WRTERM 'Hello World!'
*
SR 15,15
BR 14
*
END HELLO
Back to index
Assembler-Intel
; Hello World for Intel Assembler (MSDOS)
mov ax,cs
mov ds,ax
mov ah,9
mov dx, offset Hello
int 21h
xor ax,ax
int 21h
Hello:
db "Hello World!",13,10,"$"
Back to index
Assembler-Linux
;; Hello World for the nasm Assembler (Linux)
SECTION .data
msg db "Hello, world!",0xa ;
len equ $ - msg
SECTION .text
global main
main:
mov eax,4 ; write system call
mov ebx,1 ; file (stdou)
mov ecx,msg ; string
mov edx,len ; strlen
int 0x80 ; call kernel
mov eax,1 ; exit system call
mov ebx,0
int 0x80 ; call kernel
Back to index
Assembler-MIPS
## Hello Word in Assemlber for the MIPS Architecture
.globl main
main: jal hwbody #call Hello Word Procedure
trap 10 #exit
hwbody: addi $30, $30,-4 #we need to preserve
sw $4, 0($30) #existing values in register 4
addi $4,$0,72 # H
trap 101
addi $4,$0,101 # e
trap 101
addi $4,$0,108 # l
trap 101
trap 101 # l
addi $4,$0,111 # o
trap 101
addi $4,$0,32 # <space>
trap 101
addi $4,$0,87 # W
trap 101
addi $4,$0,111 # o
trap 101
addi $4,$0,114 # r
trap 101
addi $4,$0,108 # l
trap 101
addi $4,$0,100 # d
trap 101
addi $4,$0,33 # !
trap 101
addi $4,$0,10 # \n
trap 101
done: lw $4, 0($30) #restore values
addi $30, $30, 4 #in register 4
jr $31 #return to the main
Back to index
Assembler-MMIX
* Hello World in Assembler
* for the MMIX Computer
LOC #100
Main GETA $255,String
TRAP 0,Fputs,StdOut
TRAP 0,Halt,0
String BYTE "Hello, world!",#a,0
Back to index
Assembler-PDP11
; Hello World in Assembler for the DEC PDP-11 with the
; RSX-11M-PLUS operating system
;
.title Hello
.ident /V0001A/
.mcall qiow$s, exit$s
.psect $code,ro,i
start: qiow$s #5,#5,,,,<#str, #len, #40>
exit$s
.psect $data,ro,d
str: .ascii / Hello World!/
len=.-str
.end start
Back to index
Assembler-PDP8
/ Hello World in Assembler for the DEC PDP-8
*200
hello, cla cll
tls / tls to set printer flag.
tad charac / set up index register
dca ir1 / for getting characters.
tad m6 / set up counter for
dca count / typing characters.
next, tad i ir1 / get a character.
jms type / type it.
isz count / done yet?
jmp next / no: type another.
hlt
type, 0 / type subroutine
tsf
jmp .-1
tls
cla
jmp i type
charac, . / used as initial value of ir1
310 / H
305 / E
314 / L
314 / L
317 / O
254 / ,
240 /
327 / W
317 / O
322 / R
314 / L
304 / D
241 / !
m6, -15
count, 0
ir1 = 10
$
Back to index
Assembler-VP
; Hello World in VP Assembler for intent (Amiga Anywhere)
.include 'tao'
tool 'home/hello',VP,TF_MAIN,8192,0
ent (-:-)
qcall lib/print,(hello_world.p : i~)
ret ()
entend
data
hello_world:
dc.b "Hello World!",ASCII_LF,0
toolend
Back to index
Assembler-Win32
; Hello world in Assembler for the Win32 architecture
TITLE Hello world in win32. Tasm
VERSION T310
Model use32 Flat,StdCall
start_code segment byte public 'code' use32
begin:
Call MessageBox, 0, offset sHallo, offset caption, 0
Call ExitProcess, 0
start_code Ends
start_data segment byte public 'data' use32
sHallo db 'Hello world',0
caption db "Hi",0
start_data Ends
End begin
Back to index
Assembler-Z80-Console
; This is a "Hello World" program for Z80 and TMS9918 / TMS9928 / TMS9929 /
; V9938 or V9958 VDP.
; That means that this should work on SVI, MSX, Colecovision, Memotech,
; and many other Z80 based home computers or game consoles.
;
; Because we don't know what system is used, we don't know where RAM
; is, so we can't use stack in this program.
;
; This version of Hello World was written by Timo "NYYRIKKI" Soilamaa
; 17.10.2001
;
;----------------------------------------------------------------------
; Configure this part:
DATAP: EQU #98 ; VDP Data port #98 works on all MSX models
; (TMS9918/TMS9929/V9938 or V9958)
; #80 works on SVI
; (for other platforms you have to figure this out by your self)
CMDP: EQU #99 ; VDP Command port #99 works on all MSX models
; (TMS9918/TMS9929/V9938 or V9958)
; #81 works on SVI
; (for other platforms you have to figure this out by your self)
;-----------------------------------------------------------------------
; Program starts here:
ORG 0 ; Z80 starts always from here when power is turned on
DI ; We don't know, how interrupts works in this system, so we disable them.
; Let's set VDP write address to #0000
XOR A
OUT (CMDP),A
LD A,#40
OUT (CMDP),A
; Now let's clear first 16Kb of VDP memory
LD B,0
LD HL,#3FFF
LD C,DATAP
CLEAR:
OUT (C),B
DEC HL
LD A,H
OR L
NOP ; Let's wait 8 clock cycles just in case VDP is not quick enough.
NOP
JR NZ,CLEAR
; Now it is time to set up VDP registers:
;----------------------------------------
; Register 0 to #0
;
; Set mode selection bit M3 (maybe also M4 & M5) to zero and
; disable external video & horizontal interrupt
LD C,CMDP
LD E,#80
OUT (C),A
OUT (C),E
;----------------------------------------
; Register 1 to #50
;
; Select 40 column mode, enable screen and disable vertical interrupt
LD A,#50
INC E
OUT (C),A
OUT (C),E
;----------------------------------------
; Register 2 to #0
;
; Set pattern name table to #0000
XOR A
INC E
OUT (C),A
OUT (C),E
;----------------------------------------
; Register 3 is ignored as 40 column mode does not need color table
;
INC E
;----------------------------------------
; Register 4 to #1
; Set pattern generator table to #800
INC A
INC E
OUT (C),A
OUT (C),E
;----------------------------------------
; Registers 5 (Sprite attribute) & 6 (Sprite pattern) are ignored
; as 40 column mode does not have sprites
INC E
INC E
;----------------------------------------
; Register 7 to #F0
; Set colors to white on black
LD A,#F0
INC E
OUT (C),A
OUT (C),E
;----------------------------------------
; Let's set VDP write address to #808 so, that we can write
; character set to memory
; (No need to write SPACE it is clear char already)
LD A,8
OUT (C),A
LD A,#48
OUT (C),A
; Let's copy character set
LD HL,CHARS
LD B, CHARS_END-CHARS
COPYCHARS:
LD A,(HL)
OUT (DATAP),A
INC HL
NOP ; Let's wait 8 clock cycles just in case VDP is not quick enough.
NOP
DJNZ COPYCHARS
; Let's set write address to start of name table
XOR A
OUT (C),A
LD A,#40
OUT (C),A
; Let's put characters to screen
LD HL,ORDER
LD B,ORDER_END-ORDER
COPYORDER:
LD A,(HL)
OUT (DATAP),A
INC HL
JR OVERNMI
NOP
NOP
; Here is address #66, that is entry for NMI
RETN ;Return from NMI
OVERNMI:
DJNZ COPYORDER
; The end
HALT
; Character set:
; --------------
ORDER:
DEFB 1,2,3,3,4,0,5,4,6,3,7
ORDER_END:
CHARS:
; H
DEFB %10001000
DEFB %10001000
DEFB %10001000
DEFB %11111000
DEFB %10001000
DEFB %10001000
DEFB %10001000
DEFB %00000000
; e
DEFB %00000000
DEFB %00000000
DEFB %01110000
DEFB %10001000
DEFB %11111000
DEFB %10000000
DEFB %01110000
DEFB %00000000
; l
DEFB %01100000
DEFB %00100000
DEFB %00100000
DEFB %00100000
DEFB %00100000
DEFB %00100000
DEFB %01110000
DEFB %00000000
; o
DEFB %00000000
DEFB %00000000
DEFB %01110000
DEFB %10001000
DEFB %10001000
DEFB %10001000
DEFB %01110000
DEFB %00000000
; W
DEFB %10001000
DEFB %10001000
DEFB %10001000
DEFB %10101000
DEFB %10101000
DEFB %11011000
DEFB %10001000
DEFB %00000000
; r
DEFB %00000000
DEFB %00000000
DEFB %10110000
DEFB %11001000
DEFB %10000000
DEFB %10000000
DEFB %10000000
DEFB %00000000
; d
DEFB %00001000
DEFB %00001000
DEFB %01101000
DEFB %10011000
DEFB %10001000
DEFB %10011000
DEFB %01101000
DEFB %00000000
chars_end:
Back to index
Assembler-ZX81
; Hello World in Assembler for the ZX81 (Zilog Z80)
CALL SPRINT
DEFM HELLO WORLD.
DEFB FF
RET
SPRINT POP HL
LD A,(HL)
INC HL
PUSH HL
CP FF
RET Z
CALL PRINT
JR SPRINT
Back to index
Asterisk
;; Hello World application for an Asterisk dial plan. Asterisk is a
;; GNU GPL telephony server. More details at http://www.asterisk.org
;; Displays Hello World at the Asterisk console if in verbose mode
exten => _X.,1,NoOp(Hello World)
Back to index
AutoIT3
;Hello, World for AutoIT3 http://www.autoitscript.com
msgbox(0,"Hello World",0)
Back to index
AviSynth
Hello World for AviSynth Video Editor.
Requires AVI and WAV file.
video = AVISource("someoneSayingHelloWorld.avi")
sound_track = WAVSource("someoneSayingHelloWorld.wav")
AudioDub(video, sound_track)
subtitle("Hello World!")
Back to index
awk
# Hello World in awk
BEGIN {
print "Hello World!"
exit
}
Back to index
Axel
Hello World in AXEL (lip-synched speech)
... too large for this page, can be found here:
http://medieskolan.avc.edu.stockholm.se/axel/index.htm
Back to index
B
/* Hello World in B */
main() {
extern a, b, c;
putchar (a); putchar (b); putchar (c); putchar ('!*n');
}
a 'hell' ;
b 'o, w' ;
c 'orld' ;
Back to index
BAL
Hello World in IBM mainframe Basic Assembler Language (BAL)
HELLO CSECT
STM R14,R12,12(R13)
LR R12,R15
USING HELLO,R12
LA R10,SAVEAREA
ST R13,4(R10)
ST R10,8(R13)
LR R13,R10
*
WTO 'HELLO WORLD',ROUTCDE=1
*
L R13,4(R13)
LM R14,R12,12(R13)
SR R15,R15
BCR B'1111',R14
*
SAVEAREA DS 18F
LTORG
R0 EQU 0
R1 EQU 1
R2 EQU 2
R3 EQU 3
R4 EQU 4
R5 EQU 5
R6 EQU 6
R7 EQU 7
R8 EQU 8
R9 EQU 9
R10 EQU 10
R11 EQU 11
R12 EQU 12
R13 EQU 13
R14 EQU 14
R15 EQU 15
END HELLO
Back to index
BASIC
10 REM Hello World in BASIC
20 PRINT "Hello World!"
Back to index
bc
#!/usr/bin/bc -q
# Hello World for the Unix "bc" calculator
print "Hello World!\n"
Back to index
BCPL
// Hello world in BCLP
GET "libhdr"
LET start() = VALOF
$( writes("Hello world*N")
RESULTIS 0
$)
Back to index
Beta
{ *** Hello World in BETA ***}
(#
do
'Hello World!'->putLine
#)
Back to index
BrainFxxx
Hello World in BrainF***.
++++++++++[->+++++++>++++++++++>+++++++++++>
+++++++++++>++++>+++>+++++++++>+++++++++++>+
+++++++++>+++<<<<<<<<<<]>++.>+.>--..>+.>++++
.>++.>---.<<<.>>>>++++.<<<<<.>>>>>>.>+++.
Back to index
BS2000
/BEGIN-PROCEDURE LOGGING=N
/REMARK "HELLO WORLD" IN BS2000 (SDF)
/ASSIGN-SYSDTA TO-FILE=*SYSCMD
/WRITE-TEXT 'HELLO WORLD!'
/SET-JOB-STEP
/ASSIGN-SYSDTA TO-FILE=*PRIMARY
/END-PROCEDURE
Back to index
C++
// Hello World in C++
#include <iostream.h>
main()
{
cout << "Hello World!" << endl;
return 0;
}
Back to index
C++-Epoc
// Hello World in C++, Epoc style (for Symbian OS)
#include <eikapp.h>
#include <eikdoc.h>
#include <eikappui.h>
class CHelloWorldAppUi;
class CEikApplication;
class CHelloWorldAppView;
class CHelloWorldApplication : public CEikApplication
{
public:
TUid AppDllUid() const;
protected:
CApaDocument* CreateDocumentL();
};
class CHelloWorldDocument : public CEikDocument
{
public:
static CHelloWorldDocument* NewL(CEikApplication& aApp);
static CHelloWorldDocument* NewLC(CEikApplication& aApp);
~CHelloWorldDocument(){};
public:
CEikAppUi* CreateAppUiL();
private:
void ConstructL() {};
CHelloWorldDocument(CEikApplication& aApp){};
};
class CHelloWorldAppUi : public CEikAppUi
{
public:
void ConstructL();
CHelloWorldAppUi(){};
~CHelloWorldAppUi(){};
};
static const TUid KUidHelloWorldApp = {0x10005B91};
GLDEF_C TInt E32Dll(TDllReason )
{
return KErrNone;
}
EXPORT_C CApaApplication* NewApplication()
{
return (new CHelloWorldApplication);
}
CApaDocument* CHelloWorldApplication::CreateDocumentL()
{
CApaDocument* document = CHelloWorldDocument::NewL(*this);
return document;
}
TUid CHelloWorldApplication::AppDllUid() const
{
return KUidHelloWorldApp;
}
CHelloWorldDocument* CHelloWorldDocument::NewL(CEikApplication& aApp)
{
CHelloWorldDocument* self = NewLC(aApp);
CleanupStack::Pop(self);
return self;
}
CHelloWorldDocument* CHelloWorldDocument::NewLC(CEikApplication& aApp)
{
CHelloWorldDocument* self = new (ELeave) CHelloWorldDocument(aApp);
CleanupStack::PushL(self);
self->ConstructL();
return self;
}
CEikAppUi* CHelloWorldDocument::CreateAppUiL()
{
CEikAppUi* appUi = new (ELeave) CHelloWorldAppUi;
return appUi;
}
void CHelloWorldAppUi::ConstructL()
{
BaseConstructL();
_LIT(message,"Hello!");
CAknInformationNote* informationNote = new (ELeave) CAknInformationNote;
informationNote->ExecuteLD(message);
}
Back to index
C++-ISO
// Hello World in ISO C++
#include <iostream>
int main()
{
std::cout << "Hello World!" << std::endl;
}
Back to index
C++-MFC
// Hello World in C++ for Microsoft Foundation Classes
// (Microsoft Visual C++).
#include <afxwin.h>
class CHello : public CFrameWnd
{
public:
CHello()
{
Create(NULL,_T("Hello World!"),WS_OVERLAPPEDWINDOW,rectDefault);
}
};
class CHelloApp : public CWinApp
{
public:
virtual BOOL InitInstance();
};
BOOL CHelloApp::InitInstance()
{
m_pMainWnd = new CHello();
m_pMainWnd->ShowWindow(m_nCmdShow);
m_pMainWnd->UpdateWindow();
return TRUE;
}
CHelloApp theApp;
Back to index
C++-Qt
// Hello World in C++ for the Qt framework
#include <qapplication.h>
#include <qlabel.h>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QLabel l("Hello World!", 0);
l.setCaption("Test");
l.setAlignment(Qt::AlignCenter);
l.resize(300, 200);
a.setMainWidget(&l);
l.show();
return(a.exec());
}
Back to index
C-AL
OBJECT Codeunit 50000 HelloWorld
{
PROPERTIES
{
OnRun=BEGIN
//Hello World in C/AL (Microsoft Business Solutions-Navision)
MESSAGE(Txt001);
END;
}
CODE
{
VAR
Txt001@1000000000 : TextConst 'ENU=Hello World';
BEGIN
END.
}
}
Back to index
C-Ansi
/* Hello World in C, Ansi-style */
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
puts("Hello World!");
return EXIT_SUCCESS;
}
Back to index
C-Curses
/* Hello World in C for Curses */
#include <curses.h>
main()
{
initscr();
addstr("Hello World!\n");
refresh();
endwin();
return 0;
}
Back to index
C-GEM
/* Hello World for C with GEM */
#include <aes.h>
main()
{
appl_init();
form_alert(1,"[0][Hello World!][Ok]");
appl_exit();
return 0;
}
Back to index
C-Intuition
/* Hello World in C for Intution (Amiga GUI) */
#include <intuition/intuition.h>
struct IntuitionBase *IntuitionBase = NULL;
struct IntuiText hello_text = {-1,-1,JAM1,0,0,NULL,"Hello World!",NULL };
struct IntuiText ok_text = {-1,-1,JAM1,0,0,NULL,"Ok",NULL };
void main(void)
{
IntuitionBase = (struct IntuitionBase *)
OpenLibrary("intuition.library", 0);
AutoRequest(NULL, &hello_text, NULL, &ok_text, NULL, NULL, 100, 50);
CloseLibrary(IntuitionBase);
}
Back to index
C-K+R
/* Hello World in C, K&R-style */
main()
{
puts("Hello World!");
return 0;
}
Back to index
C-Objective
/* Hello World in Objective-C.
** Since the standard implementation is identical to K&R C,
** a version that says hello to a set of people passed on
** the command line is shown here.
*/
#include <stdio.h>
#include <objpak.h>
int main(int argc,char **argv)
{
id set = [Set new];
argv++;while (--argc) [set add:[String str:*argv++]];
[set do:{ :each | printf("hello, %s!\n",[each str]); }];
return 0;
}
Back to index
C-PresManager
/* Hello World for C with PresentationManager / OS/2 2.11 */
#define INCL_WIN
#include <os2.h>
int main( void )
{
HMQ hmq;
hmq = WinCreateMsgQueue( 0, 0 );
WinMessageBox( HWND_DESKTOP, HWND_DESKTOP, (PSZ)"Hello World!",
(PSZ)"", 0, MB_OK );
WinDestroyMsgQueue( hmq );
return 0;
}
Back to index
C-Sharp
// Hello World in Microsoft C# ("C-Sharp").
using System;
class HelloWorld
{
public static int Main(String[] args)
{
Console.WriteLine("Hello, World!");
return 0;
}
}
Back to index
C-Windows
/* Hello world in C for MS-Windows */
#include <windows.h>
int PASCAL WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance, LPSTR CmdLine, int Show)
{
MessageBox(GetActiveWindow(), "Hello World!", "Hello Windows World", MB_OK
);
return 0;
}
Back to index
C-X11-Athena
/* Hello World in C with X11 using Athena widgets */
#include <X11/Intrinsic.h>
#include <X11/StringDefs.h>
#include <X11/Xaw/Label.h>
main(int argc,char **argv)
{
XtAppContext app_context;
Widget toplevel,hello;
toplevel = XtVaAppInitialize(&app_context,"XHello",NULL,0,
&argc,argv,NULL,NULL);
hello = XtVaCreateManagedWidget("Hello World!",labelWidgetClass,
toplevel,(void*)0);
XtRealizeWidget(toplevel);
XtAppMainLoop(app_context);
return 0;
}
Back to index
CAML-Light
(* Hello World in CAML Light *)
let hello =
print_string "Hello World!";
;;
Back to index
Clean
// Hello World in Clean
module hello
Start :: String
Start = "Hello World!\n"
Back to index
Clipper
// Hello World in Clipper
@ "Hello World"
Back to index
Cobol
* Hello World in Cobol
*****************************
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
ENVIRONMENT DIVISION.
DATA DIVISION.
PROCEDURE DIVISION.
MAIN SECTION.
DISPLAY "Hello World!"
STOP RUN.
****************************
Back to index
Cocoa
// Hello World in Cocoa Obj-C (OS X)
#import <Foundation/Foundation.h>
int main (int argc, const char * argv[]) {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
NSLog(@"Hello, World!");
[pool release];
return 0;
}
Back to index
ColdFusion
<!---Hello world in ColdFusion--->
<cfset message = "Hello World">
<cfoutput> #message#</cfoutput>
Back to index
CommandScript
#Hello World in Command Script 3.1
#Meta.Name: "Hello World"
#Block(Main).Start
echo "Hello World!"
#Block(Main).End
Back to index
Console-Postscript
%% Hello World in Console PostScript
serverdict begin 0 exitserver
/Courier findfont
48 scalefont setfont
22 22 moveto
(Hello World!) show
showpage
%% End
Back to index
D
// Hello World in D
void main()
{
printf("Hello World!\n");
}
Back to index
Darkbasic
` Hello World in Darkbasic
print "Hello World!"
wait key
Back to index
Dataflex
// Hello World in Dataflex Procedural
/tela
Hello world
/*
clearscreen
page tela
Back to index
dBase
* Hello World in dBase IV
? "Hello World!"
Back to index
dc
#!/usr/bin/dc
# Hello world! in dc (Unix desk calculator)
[Hello world!]p
Back to index
Delphi
// Hello World in Delphi
Program Hello_World;
{$APPTYPE CONSOLE}
Begin
WriteLn('Hello World');
End.
Back to index
Dialect
# Hello World in Dialect
print "Hello World"
Back to index
DML
! Hello World in DML (Gembase database language)
PROCEDURE_FORM MAIN
PRINT/NOWAIT ("Hello world")
END_FORM
Back to index
Dylan
module: hello-world
author: Homer
copyright: (c) 1994 Homer
version: 1.0
// Hello World in DYLAN
define method main (#rest args)
princ("Hello world!");
end;
main();
Back to index
DynaMorph
<<!! Hello World in DynaMorph >>
<#setString foo {Hello World!}#>
<html>
<head>
<title>DynaMorph</title>
</head>
<body>
<#getString foo#>
</body>
</html>
Back to index
Eiffel
indexing "Hello World in Eiffel"
class HELLO
creation
run
feature
run is
local
io : BASIC_IO;
do
!!io;
io.put_string("Hello World!");
io.put_newline;
end; -- run
end; -- class HELLO
Back to index
Elan
(* Hello World in ELAN *)
putline ("Hello World!");
Back to index
Elliott
:: Hello World in Elliott Autocode
SETF PUNCH
SETR 1
1)TELEPRINTER
LINE
TITLE Hello World.;
STOP
START 1
Back to index
Erlang
%% Hello World in Erlang
-module(hello).
-export([hello/0]).
hello() ->
io:format("Hello World!~n", []).
Back to index
Euphoria
-- Hello World in Euphoria
puts(1, "Hello World!\n")
Back to index
Fj?lnir
;; Hello World in Fj鰈nir (Icelandic programming language)
"hello" < main
{
main ->
stef(;)
stofn
skrifastreng(;"Hall? Ver鰈d!"),
stofnlok
}
*
"GRUNNUR"
;
Back to index
Focal
1.01 COMMENT HELLO WORLD IN FOCAL
1.02 TYPE "HELLO WORLD", !
1.03 QUIT
Back to index
Forth
' Hello World in Forth
: HELLO
." Hello World!" CR
;
Back to index
Fortran
C Hello World in Fortran
PROGRAM HELLO
WRITE (*,100)
STOP
100 FORMAT (' Hello World! ' /)
END
Back to index
Fortran77
C Hello World in Fortran 77
PROGRAM HELLO
PRINT*, 'Hello World!'
END
Back to index
FortranIV
PROGRAM HELLO
c
C Hello World in Fortran IV (supposedly for a TR440)
c
WRITE (6,'('' Hello World!'')')
END
Back to index
Frink
// Hello World in Frink
println["Hello World!"]
Back to index
G-Code
Hello World in "G Code" for CNC machines.
Click here for a preview.
%
O1000
(PROGRAM NAME - HELLOWORLD)
(DATE=DD-MM-YY - 30-06-05 TIME=HH:MM - 19:37)
N10G20
N20G0G17G40G49G80G90
/N30G91G28Z0.
/N40G28X0.Y0.
/N50G92X0.Y0.Z0.
( 1/16 FLAT ENDMILL TOOL - 1 DIA. OFF. - 1 LEN. - 1 DIA. - .0625)
(CONTOUR)
N60T1M6
N70G0G90X0.Y1.A0.S5000M3
N80G43H1Z.5
N90Z.25
N100G1Z-.005F2.
N110Y0.F20.
N120G0Z.5
N130X.5
N140Z.25
N150G1Z-.005F2.
N160Y1.F20.
N170G0Z.5
N180Y.6106
N190Z.25
N200G1Z-.005F2.
N210X0.F20.
N220G0Z.5
N230X.6157Y.4712
N240Z.25
N250G1Z-.005F2.
N260X.6039Y.4135F20.
N270X.6Y.351
N280X1.1
N290G3X1.0098Y.6202R.4333
N300X.8941Y.6971R.2625
N310X.7255Y.6538R.1837
N320X.6157Y.4712R.332
N330G0Z.5
N340X.6Y.351
N350Z.25
N360G1Z-.005F2.
N370X.6039Y.2885F20.
N380G3X.7255Y.0481R.385
N390X.9745R.1853
N400X1.0843Y.2308R.332
N410G0Z.5
N420X1.2039Y0.
N430Z.25
N440G1Z-.005F2.
N450Y1.F20.
N460G0Z.5
N470X1.3098
N480Z.25
N490G1Z-.005F2.
N500Y0.F20.
N510G0Z.5
N520X1.4706Y.125
N530Z.25
N540G1Z-.005F2.
N550X1.502Y.0817F20.
N560G3X1.6176Y.0048R.2625
N570X1.7863Y.0481R.1837
N580X1.9118Y.351R.3957
N590X1.8216Y.6202R.4333
N600X1.7059Y.6971R.2625
N610X1.5373Y.6538R.1837
N620X1.4157Y.4135R.358
N630X1.4706Y.125R.4611
N640G0Z.5
N650X1.9853Y0.
N660Z.25
N670G1Z-.005F2.
N680X2.0422Y.1442F20.
N690G0Z.5
N700X2.5706Y1.
N710Z.25
N720G1Z-.005F2.
N730X2.6961Y0.F20.
N740X2.8216Y1.
N750X2.9451Y0.
N760X3.0706Y1.
N770G0Z.5
N780X3.2961Y.6538
N790Z.25
N800G1Z-.005F2.
N810X3.2608Y.6202F20.
N820G3X3.1745Y.2885R.4408
N830X3.2961Y.0481R.385
N840X3.5451R.1853
N850X3.6706Y.351R.3957
N860X3.5804Y.6202R.4333
N870X3.4647Y.6971R.2625
N880X3.2961Y.6538R.1837
N890G0Z.5
N900X3.7461Y.7019
N910Z.25
N920G1Z-.005F2.
N930Y0.F20.
N940G0Z.5
N950Y.3654
N960Z.25
N970G1Z-.005F2.
N980X3.7637Y.4663F20.
N990G2X3.8422Y.6587R.4948
N1000X3.9167Y.7019R.0929
N1010G1X4.0755
N1020G2X4.15Y.6587R.0929
N1030X4.1951Y.5769R.246
N1040G0Z.5
N1050X4.3255Y1.
N1060Z.25
N1070G1Z-.005F2.
N1080Y0.F20.
N1090G0Z.5
N1100X4.9275
N1110Z.25
N1120G1Z-.005F2.
N1130Y1.F20.
N1140G0Z.5
N1150X5.0314
N1160Z.25
N1170G1Z-.005F2.
N1180Y.2981F20.
N1190G0Z.5
N1200X4.9275Y.274
N1210Z.25
N1220G1Z-.005F2.
N1230X4.8941Y.1731F20.
N1240G2X4.7627Y.0192R.3255
N1250X4.5529Y.0481R.1862
N1260X4.4314Y.2885R.358
N1270X4.5176Y.6202R.4408
N1280X4.6333Y.6971R.2625
N1290X4.802Y.6538R.1837
N1300X4.8941Y.5288R.3457
N1310G1X4.9275Y.4279
N1320G0Z.5
N1330X5.0314Y.149
N1340Z.25
N1350G1Z-.005F2.
N1360Y0.F20.
N1370G0Z.5
N1380M5
N1390G91G28Z0.
N1400G28X0.Y0.A0.
N1410M30
%
Back to index
Gentee-simple
// Hello World in Gentee (simple version)
func hello<main> : @"Hello, World!"
Back to index
Gentee
// Hello World in Gentee
func hello <main>
{
print( "Hello, World!" )
getch()
}
Back to index
Gofer
-- Hello World in Gofer
-- Simple version
helloWorld:: String
helloWorld = "Hello World!\n"
-- Hello World in Gofer
-- Dialog version
helloWorld :: Dialogue
helloWorld resps = [AppendChan stdout "Hello world!"]
Back to index
Groovy
// Hello World in Groovy
println "Hello World"
Back to index
GynkoSoft
; Hello World in GynkoSoft
; Simple version
0.00 Protocol "Hello, World!"
; Hello World in GynkoSoft
; Dialog box output
0.00 Message "Hello, World!"
Back to index
Haskell
-- Hello World in Haskell
module Hello where
hello::String
hello = "Hello World!"
Back to index
HDX
# Hello World as bdehaldia.exe external command
proc hdx_info {} {
set ::Titel "&Hello World"
set ::Menu GMA
}
proc hdx_run {} {
tk_messageBox -type ok -message "Hello World!"
destroy .
}
Back to index
HP-41C
Hello World for the HP 41C. No comment character exists.
01 LBL "HELLO"
02 "HELLO WORLD"
03 AVIEW
Back to index
HP-48
<<
@ Hello World for the HP-48
@ << and >> are one char each
"HELLO WORLD"
>>
Back to index
HQ9+
Hello World in HQ9+ and HQ9++. No comment character exists.
H
Back to index
HTML
<HTML>
<!-- Hello World in HTML -->
<HEAD>
<TITLE>Hello World!</TITLE>
</HEAD>
<BODY>
Hello World!
</BODY>
</HTML>
Back to index
Human
Hello World in human languages.
Armenian ??????, ??????? (barev ash'kharh)
Azeri Salam Dünya
Czech Ahoj Světe!
Basque/Euskara Kaixo mundua!
Bengali Shagatam Prithivi!
Bosnian Zdravo Svijete!
Brazilian Portuguese Oi mundo!
Bulgarian (Zdrav'ei svi'at)
Catalan Hola m髇!
Chinese (ni hao shi jie)
Croatian Bok Svijete!
Danish Hej, Verden!
Dutch Hallo, wereld!
English Hello World!
Finnish Hei maailma!
French Salut le Monde!
Frisian Hallo, wr鈒d!
German Hallo Welt!
Greek Γεια σου κ?σμε! (Geia soy kosme)
Hebrew (Shalom Olam)
Hindi (namaste duniya)
Hungarian Szia Vilag!
Indonesian Halo Dunia!
Italian Ciao Mondo!
Japanese (konnichiwa sekai)
Kannada (namaste prapancha)
Korean (annyeong, sesangah)
Malagasy Manao ahoana ry tany!
Norwegian Hallo Verden!
Polish Witaj, Swiecie!
Portuguese Ola mundo!
Romanian Salut lume!
Russian (Zdra'vstvuj mi'r)
Serbian Zdravo Svete!
Slovak Ahoj, svet!
Slovenian Pozdravljen svet!
Spanish ?Hola mundo!
Swedish Hejsan v?rld!
Turkish Merhaba Dünya!
Ukrainian (Pryvi't svi'te)
Back to index
HyperTalk
-- Hello World in HyperTalk
answer "Hello, world!"
Back to index
IBM-Exec
Hello World for IBM EXEC (under VM/CMS)
&CONTROL
*
&TYPE Hello World!
*
&EXIT 0
Back to index
IBM-Exec2
Hello World for IBM EXEC2 (under VM/CMS)
&TRACE OFF
*
&TYPE Hello World!
*
&EXIT 0
Back to index
ici
# Hello World in ici (http://www.zeta.org.au/~atrn/ici/)
printf("Hello World!\n");
Back to index
Icon
# Hello world in Icon (http://www.cs.arizona.edu/icon/)
procedure main()
write("Hello world")
end
Back to index
IDC
// Hello World in IDC-script language for IDA disaasembler
#include <idc.idc>
static main(void)
{
Message("Hello World!");
}
Back to index
Inform
! "Hello world" in Inform
[ Main;
print "Hello world^";
];
Back to index
Informix-4GL
# Hello World in Informix 4GL
MAIN
DISPLAY "Hello World"
END MAIN
Back to index
Ingres-ABF
/* Hello World in Ingres ABF */
procedure hello =
begin
message 'Hello, World' with style=popup;
end
Back to index
InstallScript
// Hello World in InstallScript
// (Scripting language of InstallShield, a Windows install generator)
program
MessageBox("Hello World!",INFORMATION);
endprogram
Back to index
Intercal
HELLO WORLD IN INTERCAL NOT FORTRAN
HELLO WORLD
Back to index
Jako
# Hello World in Jako
use sys;
sys::print("Hello, world!\n");
Back to index
Java
// Hello World in Java
import java.io.*;
class HelloWorld {
static public void main( String args[] ) {
System.out.println( "Hello World!" );
}
}
Back to index
Java-Mobile
// Hello World on a mobile Java device
package helloworld;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class HelloWorld extends MIDlet {
public HelloWorld()
{
Form form = new Form("Hello World");
form.append("Hello world!");
Display.getDisplay(this).setCurrent(form);
}
protected void pauseApp() { }
protected void startApp() throws
javax.microedition.midlet.MIDletStateChangeException { }
protected void destroyApp(boolean parm1) throws
javax.microedition.midlet.MIDletStateChangeException { }
}
Back to index
Java-Server-Pages
<!-- Hello World for Java Server Pages -->
<%@ page language='java' %>
<%="Hello World!" %>
Back to index
Java-Servlet
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
//
// Hello World Java Servlet
//
public class HelloWorld extends HttpServlet {
public void service(HttpServletRequest request,
HttpServletResponse response)
throws IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<html><body>");
out.println("Hello World!");
out.println("</body></html>");
}
}
Back to index
Java-Swing
// Hello World in Java using Swing GUI
class HelloWorldSwing {
static public void main(String args[]) {
javax.swing.JOptionPane.showMessageDialog(null,"Hello world!");
}
}
Back to index
JavaScript
<html>
<body>
<script language="JavaScript" type="text/javascript">
// Hello World in JavaScript
document.write('Hello World');
</script>
</body>
</html>
Back to index
JCL
//HERIB JOB ,'HERIBERT OTTEN',PRTY=12
//* Hello World for MVS
//HALLO EXEC PGM=IEBGENER
//SYSPRINT DD SYSOUT=*
//SYSUT2 DD SYSOUT=T
//SYSUT1 DD *
Hello World!
/*
//
Back to index
JudoScript
// Hello World in JudoScript (a Java scripting layer)
. "Hello World";
Back to index
Kylix
{Hello World in Kylix}
program Hello_World;
uses
QDialogs;
begin
ShowMessage('Hello World');
end.
Back to index
LabVIEW
Back to index
LaTeX
% Hello World! in LaTeX
\documentclass{article}
\begin{document}
Hello World!
\end{document}
Back to index
LibertyBASIC
'hello world in Liberty BASIC
PRINT "Hello World"
END
Back to index
Limbo
Hello World in Limbo.
Limbo is the programming language of the Inferno OS
(from Lucent Bell Labs).
implement Cmd;
include "sys.m";
include "draw.m";
Cmd : module {
init : fn (ctxt : ref Draw->Context, args : list of string);
};
init(nil : ref Draw->Context, nil : list of string)
{
sys := load Sys Sys->PATH;
sys->print("Hello World\n");
}
Back to index
Lingo
Hello World in Lingo (Macromedia Director)
on startmovie
alert "Hello World"
end
Back to index
Lisp
;;; Hello World in Common Lisp
(defun helloworld ()
(print "Hello World!")
)
Back to index
Lisp-Emacs
;;; Hello World in Emacs Lisp.
(defun hello-world()
"Display the string hello world."
(interactive)
(message "hello world"))
Back to index
Logo
; Hello World in Logo
DRUCKEZEILE [Hello World!]
Back to index
Logo-graphical
; Hello World in LOGO, graphical output.
go 20 , left 180,
go 40 , left 180,
go 20 , right 90,
go 20 , left 90 ,
go 20 , left 180,
go 40 , left 90 ,
go 20 , left 90 ,
go 20 , right 90 ,
go 20 , right 90 ,
go 10 , right 90 ,
go 20 , left 90 ,
go 10 , left 90 ,
go 30 , left 90 ,
go 40 , left 180,
go 40 , left 90 ,
go 20 , left 90 ,
go 40 , left 180,
go 40 , left 90 ,
go 40 , left 90 ,
go 20 , left 90 ,
go 20 , left 90 ,
go 20 , left 90 ,
go 60 , left 90 ,
go 40 , left 180,
go 40 , left 90 ,
go 20 , left 90 ,
go 20 , left 180,
go 20 , left 90 ,
go 20 , left 90 ,
go 40 , left 180,
go 40 , left 90 ,
go 40 , left 90 ,
go 20 , left 90 ,
go 20 , left 90 ,
go 20 , left 90 ,
go 40 , left 90 ,
go 20 , right 90,
go 20 , right 90,
go 5 , left 90 ,
go 5 , left 90 ,
go 25 , left 180,
go 40 , left 90 ,
go 40 , left 90 ,
go 20 , left 90 ,
go 20 , left 90 ,
go 20 , left 90 ,
go 20 , left 90 ,
go 40 , left 180,
go 40 ,
Back to index
LSL
// Hello World in Linden Scripting Language (LSL)
default
{
state_entry()
{
llSay(0, "Hello World");
}
}
Back to index
lua
# Hello World in lua
print "Hello world"
Back to index
m4
# Hello World for the m4 macro processor
Hello
Back to index
MACRO-10
TITLE HELLO WORLD
; HELLO WORLD IN MACRO 10 FOR TOPS-10
ENTRY OUTPUT
SEARCH UUOSYM
LAB: ASCIZ /HELLO WORLD
/
OUTPUT: OUTSTR LAB ; OUTPUT MESSAGE
MONRT. ; RETURN TO MONITOR
END OUTPUT
Back to index
MACRO-11
; "Hello, world!" in MACRO-11 for RT-11
.MCALL .EXIT,.PRINT
START: .PRINT #$1
.EXIT
$1: .ASCIZ /Hello, world!/
.END START
Back to index
Macromedia-Flex
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.macromedia.com/2003/mxml">
<!-- Hello Word in Macromedia Flex -->
<mx:Label text="Hello World"/>
</mx:Application>
Back to index
MAMASH
/* Hello World in MAMASH */
TQWD LGYEA NXKIA HELLO_WORLD )1(
DWLH CXBZ_YKX
ID& HELLO_WORLD YED 'HELLO WORLD' .
Back to index
Maple
# Hello World in Maple
>> printf("Hello World!");
Back to index
Mathematica
(* Hello World in Mathematica *)
Hello[] := Print["Hello, World!"]
Back to index
MATLAB
% Hello World in MATLAB.
disp('Hello World');
Back to index
MEL
// Hello World in MEL scripting language for Alias Maya
proc helloWorld () {
print "Hello World!\n";
}
helloWorld;
Back to index
mIRC-Alias
;Hello World for mIRC (alias section)
helloworld: /echo -a Hello World!
Back to index
mIRC-Commandline
; Hello World! for mIRC (command line version)
echo Hello World!
Back to index
mIRC-Script
;Hello World for mIRC script
alias helloworld {
/echo -a Hello World!
}
Back to index
Modula-2
(* Hello World in Modula-2 *)
MODULE HelloWorld;
FROM InOut IMPORT WriteString,WriteLn;
BEGIN
WriteString("Hello World!");
WriteLn;
END HelloWorld.
Back to index
MPD
# Hello World in MPD.
resource helloworld()
write("Hello World")
end
Back to index
MSDOS
@ECHO OFF
REM Hello World for DOS batch
ECHO Hello World!
Back to index
MSIL
//Hello World in MSIL (.NET assembler)
.assembly helloworld {}
.class helloworld
{
.method static void Main() cil managed
{
.entrypoint
ldstr "Hello World!"
call void [mscorlib]System.Console::WriteLine(string)
ret
}
}
Back to index
MuLisp
; Hello, World! in MuLisp
(print 'Hello\,\ world\!)
Back to index
Mumps
; Hello World in Mumps-M
w !,"Hello World"
Back to index
Natural
* Hello World in Natural (by Software AG)
FORMAT AD=M
DISPLAY 'Hello World!'
END
Back to index
NewtonScript
// Hello World in NewtonScript
baseview :=
{viewBounds: {left: -3, top: 71, right: 138, bottom: 137},
viewFlags: 581,
declareSelf: 'base,
_proto: protoFloatNGo,
debug: "baseview"
};
textview := * child of baseview *
{text: "Hello World!",
viewBounds: {left: 33, top: 24, right: 113, bottom: 46},
viewFlags: 579,
_proto: protoStaticText,
debug: "textview"
};
Back to index
Nice
//Hello World in Nice
void main(String[] args){
println("hello world");
}
Back to index
Oberon.oberon
MODULE HelloWorld;
(* Hello World in Oberon for the Oberon System *)
IMPORT Oberon, Texts;
VAR
W: Texts.Writer;
PROCEDURE Do*;
BEGIN
Texts.WriteString(W,"Hello World!");
Texts.WriteLn(W);
Texts.Append(Oberon.Log,W.buf)
END Do;
BEGIN Texts.OpenWriter(W)
END HelloWorld.
Back to index
Oberon.std
(* Hello World in Oberon for standard operating systems *)
MODULE HelloWorld;
IMPORT Out;
BEGIN
Out.String("Hello World!");
Out.Ln;
END HelloWorld;
Back to index
OCaml
(* Hello World in OCaml *)
print_string "Hello World!\n";;
Back to index
Occam
PROGRAM Hello
-- Hello world in Occam
#USE ioconv
SEQ
write.full.string(screen,"Hello World!")
Back to index
Octave
#Hello World in Octave (http://www.octave.org/)
printf("Hello World\n");
Back to index
Ook
Hello World in Ook. No comments possible.
Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. O
ok.
Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. O
ok.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? O
ok.
Ook! Ook. Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. O
ok.
Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. O
ok?
Ook! Ook! Ook? Ook! Ook? Ook. Ook. Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. O
ok.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook! Ook. Ook. Ook. Ook. O
ok.
Ook. Ook. Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. O
ok.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. O
ok.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! O
ok.
Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. O
ok.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. O
ok.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. O
ok.
Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! O
ok.
Ook? Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. O
ok.
Ook! Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! O
ok.
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! O
ok!
Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook. Ook! Ook. Ook! Ook? Ook! Ook! Ook? O
ok!
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. O
ok.
Ook. Ook. Ook. Ook. Ook! Ook.
Back to index
OpenVMS
$! Hello World in OpenVMS DCL
$ write sys$output "Hello World"
Back to index
OPL.dialog
REM Hello World for OPL (Psion Organizer 3a)
REM More complex version with menues and dialog boxes
PROC HELLO:
LOCAL M%
DO
REM Display menu bar
mINIT
mCARD "Sprache","Deutsch",%d,"English",%e
mCARD "Extras","Beenden",%x,"Info",%i
M%=MENU
REM process choosen function
IF M%=%d
REM Display german dialog box
REM with an ENTER button to continue
dBOX:(" ","Hallo Welt"," ","weiter",13)
ELSEIF M%=%e
REM Display english dialog box
REM with an ENTER button to continue
dBOX:(" ","Hello World"," ","continue",13)
ELSEIF M%=%i
REM Display copyright information ;-)
dBOX:("Info","(C) Klaus M黮ler 0196","FrankfurtMain, Germany","",13)
ENDIF
UNTIL M%=%x
ENDP
PROC dBOX:(Z1$,Z2$,Z3$,Z4$,BUTTON%)
dINIT Z1$
dTEXT ""," ",0
dTEXT "",Z2$",$102
dTEXT "",Z3$,$202
dBUTTONS Z4$,BUTTON%
DIALOG
ENDP
Back to index
OPL.simple
REM Hello World for OPL (Psion Organizer 3a)
REM Simple version
PROC HELLO:
PRINT "Hello World!"
GET
ENDP
Back to index
OZ
Hello World in OZ, shell version:
Type the text
{Browse 'Hello World!'}
to a buffer in OZ mode and feed it for execution (e.g., by typing the
key M-l or by using the OZ menu). A window titled Oz Browser will pop
up showing the atom 'Hello World!'.
Back to index
Pascal
{Hello World in Pascal}
program HelloWorld(output);
begin
WriteLn('Hello World!');
end.
Back to index
Pascal-Windows
{ Hello World in Borland Pascal 7 for MS-Windows}
PROGRAM HelloWorld;
USES
WinCRT;
BEGIN
InitWinCRT;
WriteLn('Hello World!');
ReadLn;
DoneWinCRT;
END.
Back to index
PDF
%Hello World in Portable Document Format (PDF)
%PDF-1.2
1 0 obj
<<
/Type /Page
/Parent 5 0 R
/Resources 3 0 R
/Contents 2 0 R
>>
endobj
2 0 obj
<<
/Length 51
>>
stream
BT
/F1 24 Tf
1 0 0 1 260 600 Tm
(Hello World)Tj
ET
endstream
endobj
3 0 obj
<<
/ProcSet[/PDF/Text]
/Font <</F1 4 0 R >>
>>
endobj
4 0 obj
<<
/Type /Font
/Subtype /Type1
/Name /F1
/BaseFont /Arial
>>
endobj
5 0 obj
<<
/Type /Pages
/Kids [ 1 0 R ]
/Count 1
/MediaBox
[ 0 0 612 792 ]
>>
endobj
6 0 obj
<<
/Type /Catalog
/Pages 5 0 R
>>
endobj
trailer
<<
/Root 6 0 R
>>
Back to index
Perl
# Hello world in perl
print "Hello World!\n";
Back to index
PHP
<?php
// Hello World in PHP
echo 'Hello World!';
?>
Back to index
Piet
Hello World in Piet. No comment character exists.
Back to index
Pike
// Hello world in Pike (pike.roxen.com)
int main(){
write("Hello World!\n");
}
Back to index
PL-SQL
-- Hello World in Oracle PL/SQL (sqlplus)
set serveroutput on
begin
dbms_output.enable(10000);
dbms_output.put_line('Hello World');
end;
/
Back to index
PL1
/* Hello World in PL/1 */
Hello: procedure options(main);
put skip list('Hello World!');
end Hello;
Back to index
Pocket-Calculator
Hello World for standard pocket calculators (7-segment display).
Type in and turn calculator upside down.
0.7734
Back to index
POP-11
;;; Hello World in POP-11
: vars outputtext;
: "Hello World" -> outputtext;
: outputtext =>
** Hello World
Back to index
Postscript
% Hello World in Postscript
%!PS
/Palatino-Roman findfont
100 scalefont
setfont
100 100 moveto
(Hello World!) show
showpage
Back to index
POV-Ray
// Hello World for the Persistence of Vision Raytracer.
// Click here to view the output.
#include "skies.inc"
camera{location <0,1,-5> look_at y}
light_source{<2,4,-7>,2}
sky_sphere{S_Cloud1}
plane{y 0 pigment{checker rgb 1,0} finish{reflection .5}}
text{ttf "timrom.ttf" "Hello World!" .3,0
pigment {agate scale .2} translate -2.5*x
}
Back to index
PowerScript
// Hello World in PowerScript
MessageBox("","Hello World!")
Back to index
Profan
' Hello World in Profan (http://www.profan.de/)
cls
print "Hello World!"
waitkey
Back to index
Prograph
Back to index
Progress
/* Hello World in Progress */
message "Hello World" view-as alert-box.
Back to index
Prolog
% Hello World in Prolog
hello :- display('Hello World!') , nl .
Back to index
PureBasic-Console
; Hello World in PureBasic (console program)
OpenConsole()
ConsoleTitle ("Hello World!")
PrintN ("Hello World!")
CloseConsole()
Back to index
PureBasic-Messagebox
; Hello World in PureBasic (message box)
MessageRequester("Hello World Messagebox","Hello World!")
Back to index
PureBasic-Window
; Hello World in PureBasic (Window)
If OpenWindow(0, 216, 0, 268, 133, #PB_Window_SystemMenu | #PB_Window_Title
Bar
| #PB_Window_ScreenCentered , "Hello World Window")
If CreateGadgetList(WindowID())
TextGadget(1, 100, 60, 60, 20, "Hello World!")
EndIf
EndIf
Repeat ; Message Loop
Until WaitWindowEvent() = #PB_EventCloseWindow
Back to index
Python
# Hello World in Python
print "Hello World"
Back to index
qore
#!/usr/local/bin/qore
# Hello World in qore
class HelloWorld
{
constructor()
{
background $.output("Hello, world!");
}
output($arg)
{
printf("%s\n", $arg);
}
}
new HelloWorld();
Back to index
QuakeC
// Hello World in QuakeC. This should be put somewhere, for instance
// PutClientInServer() in Client.qc.
bprint("Hello World\n");
Back to index
QuickBASIC
REM Hello World in QuickBASIC
PRINT "Hello World!"
END
Back to index
R
# Hello World for R
cat("Hello world\n")
Back to index
ratfor
# hello.world.in.ratfor
print *, 'hello, world'
end
Back to index
REALbasic
' Hello World in REALbasic (http://www.realsoftware.com/)
msgBox "Hello World!"
Back to index
RealText
<window width="320" height="160">
<!-- Hello World in RealText -->
<font size="12" name="Arial">
<center>Hello World!</center>
</font>
</window>
Back to index
Rebol-view
Hello World in Rebol-view.
rebol[]
view layout[
text "Hello World!"
]
Back to index
Redcode
; Hello World in Redcode
; Should work with any MARS >= ICWS-86
; (with 128x64 gfx core support, of course!)
;
Start MOV 0,2455
MOV 0,2458
MOV 0,2459
MOV 0,2459
MOV 0,2459
MOV 0,2459
MOV 0,2459
MOV 0,2460
MOV 0,2465
MOV 0,2471
MOV 0,2471
MOV 0,2471
MOV 0,2479
MOV 0,2482
MOV 0,2484
MOV 0,2484
MOV 0,2484
MOV 0,2486
MOV 0,2486
MOV 0,2486
MOV 0,2486
MOV 0,2488
MOV 0,2493
MOV 0,2493
MOV 0,2493
MOV 0,2493
MOV 0,2497
MOV 0,2556
MOV 0,2559
MOV 0,2560
MOV 0,2565
MOV 0,2570
MOV 0,2575
MOV 0,2578
MOV 0,2585
MOV 0,2588
MOV 0,2589
MOV 0,2592
MOV 0,2593
MOV 0,2596
MOV 0,2597
MOV 0,2603
MOV 0,2605
MOV 0,2608
MOV 0,2667
MOV 0,2670
MOV 0,2671
MOV 0,2676
MOV 0,2681
MOV 0,2686
MOV 0,2689
MOV 0,2696
MOV 0,2699
MOV 0,2700
MOV 0,2703
MOV 0,2704
MOV 0,2707
MOV 0,2708
MOV 0,2714
MOV 0,2716
MOV 0,2719
MOV 0,2778
MOV 0,2778
MOV 0,2778
MOV 0,2778
MOV 0,2778
MOV 0,2779
MOV 0,2779
MOV 0,2779
MOV 0,2782
MOV 0,2787
MOV 0,2792
MOV 0,2795
MOV 0,2802
MOV 0,2805
MOV 0,2806
MOV 0,2809
MOV 0,2810
MOV 0,2810
MOV 0,2810
MOV 0,2810
MOV 0,2812
MOV 0,2818
MOV 0,2820
MOV 0,2823
MOV 0,2882
MOV 0,2885
MOV 0,2886
MOV 0,2891
MOV 0,2896
MOV 0,2901
MOV 0,2904
MOV 0,2911
MOV 0,2912
MOV 0,2913
MOV 0,2914
MOV 0,2917
MOV 0,2918
MOV 0,2919
MOV 0,2922
MOV 0,2928
MOV 0,2930
MOV 0,2933
MOV 0,2992
MOV 0,2995
MOV 0,2996
MOV 0,3001
MOV 0,3006
MOV 0,3011
MOV 0,3014
MOV 0,3021
MOV 0,3022
MOV 0,3023
MOV 0,3024
MOV 0,3027
MOV 0,3028
MOV 0,3030
MOV 0,3032
MOV 0,3038
MOV 0,3040
MOV 0,3103
MOV 0,3106
MOV 0,3107
MOV 0,3107
MOV 0,3107
MOV 0,3107
MOV 0,3107
MOV 0,3108
MOV 0,3108
MOV 0,3108
MOV 0,3108
MOV 0,3108
MOV 0,3109
MOV 0,3109
MOV 0,3109
MOV 0,3109
MOV 0,3109
MOV 0,3111
MOV 0,3111
MOV 0,3111
MOV 0,3120
MOV 0,3121
MOV 0,3124
MOV 0,3124
MOV 0,3124
MOV 0,3126
MOV 0,3129
MOV 0,3130
MOV 0,3130
MOV 0,3130
MOV 0,3130
MOV 0,3130
MOV 0,3131
MOV 0,3131
MOV 0,3131
MOV 0,3131
MOV 0,3135
JMP 0
Back to index
REFAL-2
* Hello, World! in REFAL-2
start
entry go
extrn PROUT
go = <prout 'Hello, world!'>
end
Back to index
Regular-Expression
Hello World as a regular expression.
Replaces everything with "Hello World".
For use with vi, sed, etc.
Search String : ^.*$
Replace String: 'Hello World'
Back to index
Rexx.simple
/* Hello World in Rexx, simple version (writes to standard output) */
say 'Hello World!'
exit
Back to index
Rexx.window
/* Hallo World in Rexx, opens window */
call RxFuncAdd 'SysLoadFuncs', 'RexxUtil', 'SysLoadFuncs'
call SysLoadFuncs
call RxMessageBox 'Hello World!', 'Hello World Window', 'OK', 'EXCLAMATION'
exit
Back to index
RPG-IV
H* Hello World in RPG IV
D msg S 32 inz(*blank)
D cmd S 64
C eval msg = 'Hello World'
C msg dsply
C eval cmd = 'DLYJOB DLY(30)'
C call 'QCMDEXC'
C parm cmd
C parm 64 len 15 5
C eval *inlr = *on
Back to index
RSL
// Hello World in RSL (RS-Bank Language)
[Hello World!];
Back to index
Ruby
# Hello World in Ruby
puts "Hello World!"
Back to index
S-Plus
# Hello World for S-Plus
cat("Hello world\n")
Back to index
SAL
// Hello World in SAL
proc main()
MsgBox("Hello from SAL", "Hello, World!")
end
Back to index
SApp
comment: Hello World in SApp
popup "Hello ## World!" ,
Back to index
Sather
-- Hello World in Sather
class HELLO is
main is #OUT + "Hello World!\n" end
end
Back to index
Scheme
;;; Hello World in Scheme
(define helloworld
(lambda ()
(display "Hello World")
(newline)))
Back to index
Seed7
# Hello World in Seed7
$ include "seed7_05.s7i";
const proc: main is func
begin
writeln("Hello World!");
end func;
Back to index
Self
(| "Hello World in Self"
hello = (| | 'Hello World!' print)
|)
Back to index
SenseTalk
Hello World in SenseTalk.
on run put "Hello World!" end run
Back to index
Setl2
-- Hello World in Setl2
procedure Hello();
print "Hello World!";
end Hello;
Back to index
Shakespeare
The Infamous Hello World Program in Shakespeare.
Romeo, a young man with a remarkable patience.
Juliet, a likewise young woman of remarkable grace.
Ophelia, a remarkable woman much in dispute with Hamlet.
Hamlet, the flatterer of Andersen Insulting A/S.
Act I: Hamlet's insults and flattery.
Scene I: The insulting of Romeo.
[Enter Hamlet and Romeo]
Hamlet:
You lying stupid fatherless big smelly half-witted coward!
You are as stupid as the difference between a handsome rich brave
hero and thyself! Speak your mind!
You are as brave as the sum of your fat little stuffed misused dusty
old rotten codpiece and a beautiful fair warm peaceful sunny summer's
day. You are as healthy as the difference between the sum of the
sweetest reddest rose and my father and yourself! Speak your mind!
You are as cowardly as the sum of yourself and the difference
between a big mighty proud kingdom and a horse. Speak your mind.
Speak your mind!
[Exit Romeo]
Scene II: The praising of Juliet.
[Enter Juliet]
Hamlet:
Thou art as sweet as the sum of the sum of Romeo and his horse and his
black cat! Speak thy mind!
[Exit Juliet]
Scene III: The praising of Ophelia.
[Enter Ophelia]
Hamlet:
Thou art as lovely as the product of a large rural town and my amazing
bottomless embroidered purse. Speak thy mind!
Thou art as loving as the product of the bluest clearest sweetest sky
and the sum of a squirrel and a white horse. Thou art as beautiful as
the difference between Juliet and thyself. Speak thy mind!
[Exeunt Ophelia and Hamlet]
Act II: Behind Hamlet's back.
Scene I: Romeo and Juliet's conversation.
[Enter Romeo and Juliet]
Romeo:
Speak your mind. You are as worried as the sum of yourself and the
difference between my small smooth hamster and my nose. Speak your
mind!
Juliet:
Speak YOUR mind! You are as bad as Hamlet! You are as small as the
difference between the square of the difference between my little pony
and your big hairy hound and the cube of your sorry little
codpiece. Speak your mind!
[Exit Romeo]
Scene II: Juliet and Ophelia's conversation.
[Enter Ophelia]
Juliet:
Thou art as good as the quotient between Romeo and the sum of a small
furry animal and a leech. Speak your mind!
Ophelia:
Thou art as disgusting as the quotient between Romeo and twice the
difference between a mistletoe and an oozing infected blister! Speak
your mind!
[Exeunt]
Back to index
SilverBasic
//Hello World in SilverBasic
PRINT "Hello World!"
Back to index
SIMPLE
[::PROGRAM:Hello World program in SIMPLE
A EQL @0
MSG A
END
]
{::DATA:Data part
@0:T
Hello World$$M
$$@
}
Back to index
Simula
! Hello World in Simula;
BEGIN
OutText("Hello World!");
OutImage;
END
Back to index
Smalltalk.simple
"Hello World in Smalltalk (simple version)"
Transcript show: 'Hello World!'.
Back to index
Smalltalk.window
"Hello World in Smalltalk (in an own window)"
"(to be entered in a special browser)"
VisualComponent subclass: #HelloWorldView
instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: ''
category: 'test'
displayOn: aGraphicsContext
'Hello World!' asComposedText displayOn: aGraphicsContext.
open
|window|
window := ScheduledWindow new.
window label: 'Hello World Demo:'.
window component: self new.
window open.
Back to index
SMIL
<!-- Hello World in SMIL -->
<smil>
<head>
<layout>
<root-layout width="300" height="160" background-color="white"/>
<region id="text_region" left="115" top="60"/>
</layout>
</head>
<body>
<text src="data:,Hello%20World!" region="text_region">
<param name="fontFace" value="Arial"/>
</text>
</body>
</smil>
Back to index
SML
(* Hello World in SML *)
fun hello() = output(std_out, "Hello World!");
Back to index
Snobol
* Hello World in Snobol
OUTPUT = "Hello World!"
Back to index
Spiral
Hello World in Spiral. No comment character exists.
e0v *** *eXlv** *lX *2X **oXi
v * * * * * * 2 * o ** v*
* * * * * ***** * v * v * *iX *
* * * * * * * ^ v * * * w *
* *** * * ***** * v * * * * v *
* * * ^ * ^ * * * * * *
* *** * * ****v * v * * v * * *
* * * * * * * * * * ^ * * *
* * * * * ***** * ***** * ***** * *** *
* * * * * * * * * * ** **
*** *** ******* *****v^ ******* *****
*wX *** **3Xp *rX4.. d5* qd**
* 3 * * ** v^ * .. * * * ***
* v * ^ * #pX v * .. . * * * **
* *** v * # r # * .. . * * * !q* *
* * * * * # v # * 54 .. * * * * * *
* * * * * # * # * @X * * * * * *
* * * * * # * # * v * * * * * *
* * * * * # * # * * ** * * * * * *
* * * * # * # * ** ** * * * *** *
* * * * #v* ^ * *** * * ***** * **
** * ** ** *v * * * * * * * ***
***** *v^** *** *** ******* ****
Back to index
SPL
HELLO: PROCEDURE OPTIONS(MAIN);
*
/* Hello World in SPL4 (Siemens) */
*
DCL PRINTC ENTRY;
*
CALL PRINTC('Hello World!', 12);
RETURN;
*
END HELLO;
Back to index
SQL-Advantage
-- Hello World in SQL for Advantage Database
select 'Hello World' from system.iota
Back to index
SQL-Oracle
# Hello World in SQL for Oracle
SELECT 'Hello World' FROM dual;
Back to index
SQL
# Hello World in SQL
SELECT 'Hello World';
Back to index
sqlplus
-- Hello World in Oracle SQL*Plus
prompt Hello World!
Back to index
ST-Guide
## Hello World for ST-Guide
@node "Hello World!"
Hello World!
@endnode
Back to index
SVG
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!-- Hello World in SVG -->
<svg width="240" height="100" viewBox="0 0 240 100" zoomAndPan="disable"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999
/xli
nk">
<title>Hello World</title>
<g>
<text x="10" y="50">Hello World</text>
<animate attributeName='opacity' values='0;1' dur='4s' fill='freeze' b
egin
="0s"/>
</g>
</svg>
Back to index
TACL
Comment -- Hello World for TACL (TAndem Command Language)
ECHO Hello World
Back to index
TAL
! Hello world in Tandem TAL (Transaction Application Language)
proc Hello^World main;
begin
int .term[0:12] := [ 12 * [ ? ? ] ],
.out [0:19];
string .sout := @out ?<<? 1, .sp;
call myterm ( term[1] );
call open ( term[1], term );
if <> then call abend;
sout ?:=? 揌ello World? -> @sp;
call write ( term, out, @sp?-慇sout );
if <> then call abend;
end;
Back to index
Tcl
#!/usr/local/bin/tclsh
# Hello World in Tcl
puts "Hello World!"
Back to index
TECO
!Hello World in TECO
!The $ symbol below wouldn't actually be a printing character -
!it's the [escape] character, \u001b!
FTHello World$
Back to index
TeX
% Hello World in plain \TeX
\immediate\write16{Hello World!}
\end
Back to index
Texinfo
\input texinfo
@c Hello World for Texinfo
@setfilename hello
@settitle Hello World
@node Top, Hello, (dir), (dir)
@menu
* Hello:: Hello World
@end menu
@node Hello, , Top, Top
Hello World!
@contents
@bye
Back to index
TI-59
Hello World for the TI-59 with PC-100C thermo printer.
No comment character exists.
The TI-59/PC-100C can print up to 20 characters per line (upper case
only). They are coded as 2-digit decimal numbers (see manual for
details) in up to four print registers (of five characters each)
and then printed.
Before entering the program, press LRN to switch into learn mode.
After entering the program, cancel learn mode with LRN, turn on the
printer, and run the program with A.
A pleasant sound, and what a font! Real TRUE-TYPE!
The output looks like this:
+--------------------+
| HELLO WORLD!|
| |
+--------------------+
TI59 Code Comment
LBL A Start of program: label A
OP 00 Clear the four print registers
23 "H"
OP 02 Write into print register 2
17 "E"
27 "L"
27 "L"
32 "O"
00 " "
OP 03 Write into print register 3
43 "W"
32 "O"
35 "R"
27 "L"
16 "D"
73 "!"
OP 04 Write into print register 4
OP 05 Start printing
ADV Line feed (optional)
R/S End program
Back to index
TI-8x
Hello World for TI 8x/9x basic (tested on a TI-83)
:ClrHome
:Disp "HELLO WORLD"
Back to index
TI-BASIC-Extended
10 REM Hello World in Extended BASIC
20 REM for the TI99 series computer
100 CALL CLEAR :: DISPLAY AT(10,5):"Hello World" :: ACCEPT AT(20,4):A$
Back to index
TI-BASIC
10 REM Hello World in TI BASIC
20 REM for the TI99 series computer
100 CALL CLEAR
110 PRINT "HELLO WORLD"
120 GOTO 120
Back to index
Tk
#!/usr/local/bin/wish -f
# Hello World in Tk
label .l -text "Hello World!"
pack .l
Back to index
troff
\" "Hello, world!" in troff
Hello, world!
Back to index
TSO-CLIST
PROC 0
/* Hello World in TSO CLIST */
write Hello World!
Back to index
Turing-Machine
Hello World as a Turing machine.
State Read | Write Step Next state
---------------|---------------------------------
1 empty | H > 2
2 empty | e > 3
3 empty | l > 4
4 empty | l > 5
5 empty | o > 6
6 empty | blank > 7
7 empty | W > 8
8 empty | o > 9
9 empty | r > 10
10 empty | l > 11
11 empty | d > 12
12 empty | ! > STOP
Back to index
Unix-Shell
# Hello World for the Unix shells (sh, ksh, csh, bash, ...)
echo 'Hello World!'
Back to index
unlambda
# Hello World in unlambda
`r```````````.H.e.l.l.o. .w.o.r.l.di
Back to index
UnrealScript
// Hello World for UnrealScript
class HelloWorldHUD extends HudBase;
simulated function DrawHudPassC (Canvas C)
{
C.SetPos( 0.50*C.ClipX , 0.50*C.ClipY);
C.DrawText("Hello World!");
}
defaultproperties
{
}
Back to index
Vatical
+ Hello World in Vatical
LITURGY:
PRAY "Hello World!"
AMEN.
Back to index
VAX-11-Macro
; Hello World in VAX-11 MACRO
.title hello
term_name: .ascid /SYS$INPUT/
term_chan: .blkw 1
out_iosb: .blkq 1
msg: .asciz /Hello, world!/
.entry start,0
; establish a channel for terminal I/O
$assign_s devnam=term_name,-
chan=term_chan
blbc r0,error
; queue the I/O request
$qio_s chan=term_chan,-
func=#io$_writevblk,-
iosb=out_iosb,-
p1=msg,-
p2=#13
blbc r0,error
$exit_s ; normal exit
error: halt ; error condition
.end start
Back to index
VAX-Macro
Hello World in VAX Macro.
.title helloworld
.ident /hello world/
;
.library /sys$library:lib/
$libdef
$lib$routinesdef
.psect $data,wrt,noshr,noexe,long
hello: .ascid /Hello World!/
.psect $code,nowrt,shr,exe,long
.entry helloworld,^m<r9,r10,r11>
pushaq hello ; output the
message
calls #1,g^lib$put_output ;
ret ; GTFOH
.end helloworld ;
Back to index
Verilog
/* Hello World in Verilog. */
module main;
initial
begin
$display("Hello, World");
$finish ;
end
endmodule
Back to index
Visual-FoxPro
*Hello World in Microsoft Visual FoxPro 5-9
? "Hello World!"
Back to index
VisualBasic
REM Hello World in Visual Basic for Windows
VERSION 2.00
Begin Form Form1
Caption = "Form1"
ClientHeight = 6096
ClientLeft = 936
ClientTop = 1572
ClientWidth = 6468
Height = 6540
Left = 876
LinkTopic = "Form1"
ScaleHeight = 6096
ScaleWidth = 6468
Top = 1188
Width = 6588
Begin Label Label1
Caption = "Hello World!"
Height = 372
Left = 2760
TabIndex = 0
Top = 2880
Width = 972
End
End
Option Explicit
Back to index
VisualBasic.NET
'Hello World in Visual Basic .NET (VB.NET)
Imports System.Console
Class HelloWorld
Public Shared Sub Main()
WriteLine("Hello, world!")
End Sub
End Class
Back to index
VMS-DCL
$ ! Hello World in Digital Command Language for the VMS operating system
$ WRITE SYS$OUTPUT "Hello World!"
Back to index
VRML
#VRML V2.0 utf8
# Hello World in VRML
Shape
{
geometry Text
{string "Hello World!"}
}
Back to index
Whitespace
Hello #World #in #Whitespace * # # * # # #
+ *[Space]
+ #is #marked #with"#" # #[tab] #with"*" *line-feed #with #"+" * #
*so
+it #would
+be #easier #to #write #again... #All *the *non-whitespace-characters #
are
*ignored... * # #
+ *
+ # # # # # * * # * * # #
+ *
+ # # # # # * * # * * * *
+ *
+ # # # # # * # # # # #
+ *
+ # # # # # * # * # * * *
+ *
+ # # # # # * * # * * * *
+ *
+ # # # # # * * * # # * #
+ *
+ # # # # # * * # * * # #
+ *
+ # # # # # * * # # * # #
+ *
+ # # # # # * # # # # *
+ *
+ # # # # # * # * #
+ *
+ # #
+
+
+
Back to index
WSH
// Hello World for the Windows Scripting Host
WScript.Echo("Hello World!");
Back to index
X++
// Hello World in X++ (Microsoft Axapta)
class classHelloWorld
{
}
static void main(args Args)
{
dialog dialog;
;
dialog = new dialog();
dialog.addText("Hello World!");
dialog.run();
}
Back to index
XHTML
<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!-- Hello World in XHTML -->
<html
xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>
Hello World!
</title>
</head>
<body>
<p>
Hello World!
</p>
</body>
</html>
Back to index
XML
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="HelloWorld.xsl" ?>
<!-- Hello World in XML -->
<text><string>Hello, World</string></text>
Back to index
XQuery
(: Hello World with XQuery :)
let $i := "Hello World"
return $i
Back to index
XSL-FO
<?xml version="1.0" encoding="utf-8"?>
<!-- Hello World in XSL-FO -->
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
<fo:simple-page-master master-name="LetterPage" page-width="8.5in" p
age-
height="11in">?
<fo:region-body region-name="PageBody" margin="0.7in"/>
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="LetterPage">
<fo:flow flow-name="PageBody">
<fo:block font-size="12pt" font-family="courier">Hello, World</f
o:bl
ock>
</fo:flow>
</fo:page-sequence>
</fo:root>
Back to index
XSLT
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Hello World in XSLT -->
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transfor
m">
<xsl:template match="/">
<xsl:value-of select="text/string" />
</xsl:template>
</xsl:stylesheet>
Back to index
XUL
<?xml version="1.0"?>
<!-- Hello World in XUL -->
<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul
">
<label value="Hello World!"/>
</window>
Back to index
Credits
Programs were contributed by:
Wolfram Roesler: C, Modula-2, Basic, Unix shell, Tcl, Tk, GEM, Curses, Texin
fo,
InstallScript, C++ (MFC), C++ (ISO), C#, HDX, SQL (Oracle), English, German
Reinhard Hamann: Prolog, Lisp, 68000 Assembler (Atari)
Malte Schiphorst, Gino Lucrezi: Pascal
Stefan Radermacher: TeX
Marcus Schmidke: Occam, MSDOS batch, Intel Assembler, 6502 Assembler
Ralf Lenz: Fortran IV, VMS DCL
Marc Van-Woerkom: C++
Thomas Menschel: 68008 Assembler
Heribert Otten: Cobol, PL/1, JCL
Thomas Piske: BS2000 batch
Thomas Preymesser: Pocket calculator
Adrian Nye & Tim O'Reilly: X11-Athena
Udo Halfmann: ELAN
Pedro Martins: Portugese
Stefan Llabres: Postscript
Volker Wurst: Smalltalk
Dirk Theisen: Oberon (standard OS)
Georg Bauer: Rexx (simple version), Erlang, SML, Snobol, Setl2, CAML light
Michael Glaesner: Perl, awk
Christian Rosner: Eiffel
Markus Omers: Presentation Manager
Thomas Dorner: SPL
Jochen Kunz: Rexx (window version), HP-48
Sascha Bendinger: Dylan
Steffen Pohlen: Visual Basic, Gofer (dialog)
Andreas Dierks: Algol-60, Algol-68, Fortran, Fortran-77, dBase IV, Logo
Klaus Mueller: TSO CLIST, OPL
Jens Kilian: Intercal, Self
Martin Uebing: Intuition
Andreas Maeder: Borland Pascal 7
Stefan Brozinski: Windows, HP-41C
Jens Schaefers: Beta
Wolfgang Houben: PDP-11 Assembler
Pascal Costanza: Oberon (Oberon OS)
Martin Oefelein: Sather, GynkoSoft
Ralf Unland: TI-59
Dan Sanders: English translation of TI-59 program
Stefan Rupp: Java
Werner Huber: Informix 4GL
Lutz Heitmann: Turing machine
Federico Hernandez-P黶chel: HTML
Thomas Lattner: OZ
Gunter Baumann: NewtonScript
Torsten Landschoff: ST-Guide
Florian Erhard: Gofer (simple)
Niels 'Frolic' Froehling: 68000 Assembler (Amiga)
Michael Sievert: Rexx
Andy Newman: ici
Sammy Mitchell: SAL
Ian Trudel: Icon, Objective C
Chris Locke: Limbo
Blackened: BrainF***
Bora Bali: Assembler IBM 370, IBM Exec, IBM Exec2, ASP (VB-Script and JavaSc
ript
), Java Servlet, Turkish, Italian
Neil L. Burman: VAX Macro
Thor Kottelin: XHTML
Roel Adriaans: PHP
Ad Boerma: TI-8x/9x, PHP
hugh@raynerdesign.com.au: Haskell
Monwar: Bengali
Jeff Hultquist: Scheme
Wolfgang Teschner: Python
Joel Dimbernat: Rebol-view
Todd Nathan: SenseTalk
Heiko Berges: BCPL, ABAP/4, Focal, B, MACRO10
Carlo Keil: Profan
Bruno Bord: French
Andreas Meinl: C++ (Qt)
Mikael Brandstr鰉: Pike
Mariano Corsunsky: Spanish
Larisa Tkachenko, Leandro: PL/SQL
Thomas Fromm: Java Server Pages
Josha Munnik: Shakespeare, Java-Mobile
Thierry Loiseau: JavaScript
Fredrik Sandebert: REALbasic, Swedish
NYYRIKKI: Z80 Assembler for consoles
Simen Schweder: Norwegian
Jeroen Vandezande, Christian Petri, Aux: Delphi
Rodrigo Missiaggia: lua
Dr. Markus Mohnen (c't 25/2003, p. 243): Clean
Egil Groenn: Simula, Norwegian
Nina Cording: Actionscript, AviSynth, Lingo
Stuart Soffer: Mumps
Petri Heikkonen: Whitespace
Walter Bright: D
Marco Pontello: Redcode
Gunnar Jutelius: AXEL
James Robinson: BAL
Krzysztof Szymiczek: Logo (graphical)
Ralf Steines: Amiga-E
Arpadffy Zoltan: OpenVMS DCL
Robert Gosling: Natural
David Rutter: Spiral
Sanath Kumar.S: Verilog
Jonas Braathen (command line version): mIRC
David Clesse: POV-Ray
Peter Hans van den Muijzenberg: Dutch, Frisian, ZX81-Assembler
Gilson do Nascimento D'Elrei: Clipper
Marcos Diez: Octave
Mathias P. Gr鋎ler: PureBasic
Alan Eliasen: Frink
Thomas Marcks von W黵temberg: Q-Basic
Pan Yongzhi: Shell scripts
Tynan Sylvester: UnrealScript
Christian Klauser: Command Script
Eric Gauvin: DynaMorph
Daniel Monteiro: Brazilian Portuguese
Tom Demuyt: Judoscript
Pawel Dobrzycki: bc
David Peterson: SIMPLE (submitted by Barry Hitchings)
curian: MSIL
BENI Andras: VRML
Fatty fatty: SQL
Deepak D: Progress
Paul Tingle: POP-11
Istvan Szapudi: OCaml
Jason H. Jester: ratfor
Jason: SQL (Advantage)
Steve Gwilt: TAL
Hynek (Pichi) Vychodil: dc
Petr Adamek: Java (Swing GUI)
David Howell: XML, XSLT, XSL-FO
Robert McNally: Mathematica
Libor Tvrdik: XSLT
Andrej Krivulcik (The Fox): Slovak
Wikipedia (submitted by Petr Simek): Inform
Jashin Eugene: Windows Scripting Host
A.Shulga: C++ Epoc
Lokshin Mark: PowerScript
Andrey Grigoriev: 1C:Enterprise
Roman Truschev: RSL
Alex Badarin: Gentee (normal and simple version)
Laurent Tonnelier: SVG
Sascha Welter: AppleScript
Aaron Duley: LabVIEW
Andrey V. Sokolov: Russian
Dennis Melentyev: Ukrainian
George D: MIPS Assembler, Visual FoxPro
Shawn Lucas: G Code
Steve Gwilt, Christine Smith, Rissa Webb: TACL
Stephen Stainless: TI BASIC, TI Extended BASIC
Joan Puigcerver: Catalan
Eugene Ivanov: Win32 Assembler
Darren Debono: VP Assembler
simXa: MAMASH, Hebrew
Tom Kaitchuck: Nice
Jozef Knepp: DML
David Gibbs: RPG IV
Per "Muusu" Lindstrand: MATLAB, MDP, QuakeC
Larry Burton: Forth
Doug Gwyn: troff, MACRO-11
John Bito: TECO
John Park: MEL
Yutaka Kachi, Hiroe Shibata: Japanese
Marcelo Toledo: Emacs Lisp
josh.go: Regular expression
Ric Ford: HyperTalk
Erik Hansen: Cocoa Obj-C
Wesley Cabral: Dataflex Procedural
Klaus Bailly: Finnish
Steven Fisher: Prograph
Steve Ardis: Groovy
Francisco Fernandez: IDC, ASP-VBE
Lukas Jaun: Assembler (MMIX)
Hemant Dabral: PDF, RealText, SMIL
Vasil Bachvarov: Bulgarian
Alexander Toresson: Euphoria
flyingboz: AutoIT3
Jose Taonga: Malagasy
Olivier "oliv3" Girondel: Erlang (fixed)
Grog Grueslayer: Darkbasic
Toby Thain: VAX-11 Macro, Assembler (PDP-8), Assembler (DG Nova)
E.S. van der Meer: Elliott Autocode
Morten Wegelbye Nissen: Danish
Marian Bonda: qore
Zeal Li: Chinese
Farid Effendiyev: Azeri
Morten Lehrman: Ingres ABF
Vadim Konovalov: PL/1 (fixed)
Nikolay Malakhov: sqlplus
Seth Johnson: ColdFusion
Alexander Bogdanov: REFAL-2, MuLisp
Michael Boyarsky: Console Postscript
Vassili Goussakov: Macromedia Flex
George Miroshnikov: XUL
Chris Leung: SilverBasic
Iker Mancenido: Basque/Euskara
Zoltan Arpadffy: Hungarian, Serbian, Bosnian, Croatian
Randy Sugianto: Indonesian
Clint Dalrymple: Fj鰈nir
Michail Michailidis: Greek
Marat Buharov: C/AL
Juan Carlos Castro y Castro: Asterisk
Elie De Brauwer: Assembler (Linux)
Markus Schmaus: Ruby
Henrik Bengtsson: R, S-Plus
Jeffrey Creem: Ada
Nathan Keir: LSL
Michal Nowakowski: Polish
Marko Meza: Slovenian
Vasile V. Alaiba: Romanian
Lorenz Schallinger: Visual Basic .NET
Jack Doerner: Liberty BASIC
Diptesh Ghosh: LaTeX, Maple
Thomas Mertes: Seed7
Sam Birch: SApp
Cindi Knox: mIRC (script and alias versions)
Thomas Kilgore: unlambda, Ook, m4, Jako
Laurent Schneider: XQuery
Hovik Melikyan: Armenian
Sudarshan HS: Kannada, Hindi
Rusak Maxim: Kylix
MooLim Lee: Korean
Evgeniy Polkin: HQ9+, HQ9++
Wikipedia: Piet
Hello World Links
* A Wiki with some interesting languages and additional information.
* The online encyclopedia Wikipedia on Hello World.
* Another collection of Hello World programs.
* The ACM Hello World project
--
心码合一,心中有代码,码中存我心;维码无心,心动即码动,代码表我心;
维心无码,视万物皆空,知万千变化;无码无心,行如若无规,动全依所意
※ 来源:·荔园晨风BBS站 bbs.szu.edu.cn·[FROM: 192.168.111.149]
[回到开始]
[上一篇][下一篇]
荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店