Личные инструменты

Копипаста:Hello, world!

Материал из Lurkmore

Перейти к: навигация, поиск
ACHTUNG! Опасно для моска!
Министерство здравоохранения Луркмора предупреждает: вдумчивое чтение нижеследующего текста способно нанести непоправимый ущерб рассудку. Вас предупреждали.

Содержание

«Hello, world!» на разных языках.

[править] BASIC

10 PRINT "Hello, World!"

[править] PureBasic

If OpenWindow(0, 100, 100, 350, 350, "hello world", #PB_Window_MaximizeGadget)
Repeat
Event=WaitWindowEvent()
Until Event=#PB_Event_CloseWindow ;Вообще надо так, но для примера можно было-бы и забить
EndIf
End

-Выебосы

Или так

MessageRequester("Hello", "Hello, world!")

Алсо,

OpenConsole()
Print("Hello, world!")
Input()
CloseConsole()

Else (Moar выебосов):

OpenWindow(0,0,0,500,150,"hi world, lol", #PB_Window_MaximizeGadget) : TextGadget(0,0,0,100,20,"Hello, World!") : ButtonGadget(1,0,30,500,100,"PRESS THE RED SWITCH!!!!!!!!!!!111111111 (ТАК МОЙ БРАТ УМЕР!!!!111)") : Repeat : If EventGadget() = 1 : MessageRequester("Hello","Hello, World") : EndIf : Until WaitWindowEvent()=#PB_Event_CloseWindow : End

[править] Fortran 77

На культовом:

PROGRAM HELLOW
WRITE(UNIT=*, FMT=*) 'Hello World'
END

[править] Quick/Turbo BASIC

Или даже вот так:

? "Hello, World!"

[править] Ruby

Почти не отличается:

puts 'Hello, World!'

[править] Python

Похожим образом:

print "Hello, World!"

…или так:

import __hello__

А вот в Python 3.0 (aka Py3k, Пузик) — немного по-другому:

print("Hello, World!")

[править] MS-DOS shell

echo Hello, world!

[править] Rexx

Say 'Hello, world!'

[править] Pascal

begin
Write('Hello, World!')
end.

[править] Ада

with Ada.Text_IO;
procedure Hello_World is
begin
Ada.Text_IO.Put_Line ("Hello World");
end Hello_World;

[править] Модула-3

MODULE Main;
IMPORT IO;
BEGIN
IO.Put ("Hello World\n")
END Main.

[править] Visual Basic

SUB Main()
PRINT "Hello, World!"
END SUB

[править] Lotus Script

Messagebox "Hello, World!", MB_OK

Или так (не самый заметный вариант):

PRINT "Hello, World!"

Или рядом с LS:

@Prompt([OK];"";"Hello, World!");

[править] InstallScript

Messagebox("Hello, World!", MB_OK);

[править] AutoIT

MsgBox(0, "AutoIT Window", "Hello, world!", 0.75)

[править] C

На самом деле, тут следует заюзать куда более быстрый puts, нежели printf, но для примера можно и забить:

#include <stdio.h>
 
int main()
{
printf("Hello, World!\n");
return 0;
}

[править] Objective-C для Яблочников

#import <Foundation/Foundation.h>
- (void)main{
NSLog(@"Hello, World!");
return;
}

[править] C++

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

[править] С++ ООП

#include <iostream>
 
class World
{
public:
static int Hello()
{
std::cout << "Hello, world!" << std::endl;
return 0;
}
};
 
int main()
{
return World::Hello();
}

С шаблонами:

class World{};
 
template <typename T>
void Hello(T hello)
{
std::cout << "Hello, " << hello << std::endl;
}
 
template <class World>
void Hello()
{
std::cout << "Hello, world!" << std::endl;
}
 
int main()
{
Hello<World>();
}

Чудеса КЗ грамматики:

template <typename T>
class Hello
{
public:
Hello(T hello)
{
std::cout << "Hello, " << hello << std::endl;
}
};
 
template <>
class Hello<class World>
{
public:
Hello()
{
std::cout << "Hello, world!" << std::endl;
}
};
 
int main()
{
Hello<World>();
}

[править] C#

class Program
{
static void Main()
{
System.Console.WriteLine("Hello, World!");
}
}

или так

class Program
{
static void Main()
{
MessageBox.Show("Hello, World!");
}
}

[править] F#

printfn "Hello, World!"

[править] Perl

#!/usr/bin/perl
print "Hello, World!\n";

или так:

perl -le 'print "Hello, World!"'

[править] Haskell

Так — в весьма простом и довольно красивом, но малопопулярном языке Haskell (обратите внимание на прекрасную читаемость и простоту кода):

import qualified Data.ByteString as BS
import System.IO
message :: [[Char]]
message = [ 'H':'e':'l':'l':'o':',':[]
, 'w':'o':'r':'l':'d':'!':[] ]
putHelloWorld :: [Char] -> IO()
putHelloWorld (x:xs) =
Prelude.putChar(x) >> putHelloWorld xs
putHelloWorld [] = Prelude.putChar('\n')
main :: IO ()
main =
hSetBuffering stdout NoBuffering >> hSetBuffering stdin LineBuffering >> putHelloWorld(message')
where
message' = let f = (++) . (++ " ")
f' = foldl1 f
in f' message

Чуть менее полный матана вариант кода на Haskell:

main = putStrLn "Hello, world!"

[править] LISP

Вообще-то будет так:

(eval (cons (quote mapcar) 
(cons (cons (quote function)
(cons (quote princ) ()))
(cons (cons (quote quote)
(cons (cons #\H (cons #\e (cons #\l (cons #\l (cons #\o
(cons #\, (cons #\Space
(cons #\w (cons #\o (cons #\r (cons #\l (cons #\d (cons #\!
()))))))))))))) ())) ()))))

Но можно и так:

(mapcar #'princ '(#\H #\e #\l #\l #\o #\, #\Space #\w #\o #\r #\l #\d #\!))

Или так:

(princ "Hello, world!")

Или даже так (в REPL):

"Hello, world!"

[править] BrainFuck

Нечитаемый вариант:

++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.

[править] Forth

: HELLO 72 EMIT 101 EMIT 2 0 DO 108 EMIT LOOP 111 EMIT ;
: WORLD 119 EMIT 111 EMIT 114 EMIT 108 EMIT 100 EMIT ;
: HELLO_WORLD HELLO 44 EMIT SPACE WORLD 33 EMIT ;
HELLO_WORLD

Тот же Forth без выебоновЪ:

: HelloWorld ." Hello, world!" ;

[править] 1С:Предприятие 7.7/8

Так решается эта задача во встроеном языке отечественного производителя 1С:

Предупреждение("Hello, world");

Или так:

Сообщить("Привет, Мир!");

А на 8.2 еще и так можно:

Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Хелло, Ворлд";
Сообщение.Сообщить();

[править] Java

Кофеиновый код:

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

Та же жаба, с выебонами:

public class HelloWorld {
static
{
System.out.println("Hello, world!");
System.exit(0);
}
}

[править] Scala

object HelloWorld {
def main(args: Array[String]) {
println("Hello world");
}
}

[править] ActionScript 2.0

traсe ("hello world!")

[править] ActionScript 3.0

traсe ("hello world!");

Или так:

var field:TextField=new TextField();
field.text="hello world!";
addChild(field);

[править] Eiffel

class HELLO_WORLD 
feature
print_hello is
-- Print "Hello, World!"
do
print ("Hello, World!")
end
end

[править] MIDlet Pascal

Program Hello;
Begin
DrawText('Hello, world!', 5, 5);
Repaint; Delay(5000);
End.

[править] PHP

echo "Hello, world!";

Или так (при вставке кода в HTML):

<?="Hello, world!"?>

Или с использованием ОО-паттернов программирования:

/********************************************************************
Model-View-Controller implementation according to POSA
(Pattern-Oriented Software Architecture
http://www.hillside.net/patterns/books/Siemens/book.html)
********************************************************************/

 
class HelloWorldController {
private $model;
function __construct($model) {
$this->model = $model;
}
 
function handleEvent($args) {
$this->model->setStrategy($args[2]);
$this->model->addText($args[1]);
}
}
 
 
class HelloWorldModel {
private $text;
private $observers = array();
private $strategy;
 
function attach($observer) {
$this->observers[] = $observer;
}
 
function getData() {
$facade = new HelloWorldFacade($this->strategy);
return $facade->getHelloWorld().$this->text."\n";
}
 
function addText($text='') {
$this->text = $text;
$this->notify();
}
 
function setStrategy($strategy) {
$this->strategy = $strategy;
}
 
function notify() {
foreach ($this->observers as $observer) {
$observer->update();
}
}
}
 
class HelloWorldView {
private $model;
 
function initialize($model) {
$this->model = $model;
$model->attach($this);
return $this->makeController();
}
 
function makeController() {
return new HelloWorldController($this->model);
}
 
function update() {
$this->display();
}
 
function display() {
echo $this->model->getData();
}
}
 
 
/*********************************************************************
"Business logic"
********************************************************************/

 
class HelloWorld {
function execute() {
return "Hello world";
}
}
 
class HelloWorldDecorator {
private $helloworld;
function __construct($helloworld) {
$this->helloworld = $helloworld;
}
 
function execute() {
return $this->helloworld->execute();
}
}
 
abstract class HelloWorldEmphasisStrategy {
abstract function emphasize($string);
}
 
class HelloWorldBangEmphasisStrategy extends HelloWorldEmphasisStrategy {
function emphasize($string) {
return $string."!";
}
}
 
class HelloWorldRepetitionEmphasisStrategy extends HelloWorldEmphasisStrategy {
function emphasize($string) {
return $string." and ".$string." again";
}
}
 
class HelloWorldEmphasizer extends HelloWorldDecorator {
private $strategy;
function HelloWorldEmphasizer($helloworld,$strategy) {
$this->strategy = $strategy;
parent::__construct($helloworld);
}
 
function execute() {
$string = parent::execute();
return $this->strategy->emphasize($string);
}
}
 
class HelloWorldStrategyFactory {
static function make($type) {
if ($type == 'repetition') return self::makeRepetitionStrategy();
return self::makeBangStrategy();
}
 
static function makeBangStrategy() {
return new HelloWorldBangEmphasisStrategy;
}
static function makeRepetitionStrategy() {
return new HelloWorldRepetitionEmphasisStrategy;
}
}
 
class HelloWorldFormatter extends HelloWorldDecorator {
function execute() {
$string = parent::execute();
return $string."\n";
}
}
 
class HelloWorldFacade {
private $strategy;
function __construct($strategyType) {
$this->strategy = HelloWorldStrategyFactory::make($strategyType);
}
 
function getHelloWorld() {
$formatter = new HelloWorldFormatter(
new HelloWorldEmphasizer(
new HelloWorld,$this->strategy));
return $formatter->execute();
}
}
 
$model = new HelloWorldModel;
$view = new HelloWorldView;
$controller = $view->initialize($model);
$controller->handleEvent($_SERVER['argv']);

[править] Vbscript

Msgbox "Hello world!", 64

[править] Javascript

$=~[];$={___:++$,$$$$:(![]+"")[$],__$:++$,$_$_:(![]+"")[$],_$_:++$,$_$$:({}+"")[$],$$_$:($[$]+"")[$],_$$:++$,$$$_:(!""+"")[$],$__:++$,$_$:++$,$$__:({}+"")[$],$$_:++$,$$$:++$,$___:++$,$__$:++$};$.$_=($.$_=$+"")[$.$_$]+($._$=$.$_[$.__$])+($.$$=($.$+"")[$.__$])+((!$)+"")[$._$$]+($.__=$.$_[$.$$_])+($.$=(!""+"")[$.__$])+($._=(!""+"")[$._$_])+$.$_[$.$_$]+$.__+$._$+$.$;$.$$=$.$+(!""+"")[$._$$]+$.__+$._+$.$+$.$$;$.$=($.___)[$.$_][$.$_];$.$($.$($.$$+"\""+$.$$_$+$._$+$.$$__+$._+"\\"+$.__$+$.$_$+$.$_$+$.$$$_+"\\"+$.__$+$.$_$+$.$$_+$.__+".\\"+$.__$+$.$$_+$.$$$+"\\"+$.__$+$.$$_+$._$_+"\\"+$.__$+$.$_$+$.__$+$.__+$.$$$_+"(\\\"\\"+$.__$+$.__$+$.___+$.$$$_+(![]+"")[$._$_]+(![]+"")[$._$_]+$._$+", \\"+$.__$+$.$$_+$.$$$+$._$+"\\"+$.__$+$.$$_+$._$_+(![]+"")[$._$_]+$.$$_$+"!\\\")\\"+$.$$$+$._$$+"\"")())();

Или вот так (не работает, когда броузер парсит страницу как XHTML, то есть в далеком будущем, когда сервера начнут отдавать страницы с MIME-типом application/xhtml+xml)

document.write("Hello, world!");

Или вот так (окно с сообщением)

alert("Hello, world!");

Или вот так на Action script 3.0 (флэшовая реализация стандарта ECMAScript):

trace('Hello World!');
 
//Или, если непременно надо вывести прямо на экран, а не в консоль, так:
var tf:TextField = new TextField;
tf.text = "Hello World!";
addChild(tf);

Или если ООП:

package {
import flash.display.Sprite;
 
public class HelloWorld extends Sprite {
public function HelloWorld() {
trace ("Hello, world!");
}
}
}

Теперь оно и сервер-сайд!

#!/usr/bin/env node
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World\n');
}).listen(1337, '127.0.0.1');
console.log('Server running at http://127.0.0.1:1337/');

[править] Delphi

В консоли:

{$APPTYPE CONSOLE}
begin
Writeln('Hello, world!');
end.

Или сообщением:

begin
MessageBox(0,'Hello, world!','my 1st program',0);
end.

Или более подходящим сообщением:

begin
ShowMessage('Hello, world!');
end.

Или с помощью формы (Label1 должно быть на ней):

begin
Label1.Caption := 'Hello World!';
end;

Или с помощью визуального проектирования:

 

[править] Bash

echo Hello, world!

Или так

cat <<EOF
Hello world!
EOF

Индусский вариант

for i in 'H' 'e' 'l' 'l' 'o' ' ' 'w' 'o' 'r' 'l' 'd' '!' '\n'; do
echo -ne "$i"
done

[править] На bash.orge

http://bash.org.ru/?text=Hello+world

[править] На Прологе

goal :-
write ("Hello, World!").

[править] SQL запрос

[править] SQL-92

SELECT 'Hello, World!'

[править] Oracle SQL

SELECT 'Hello, World!' FROM dual;

[править] Oracle PL/SQL

SET serveroutput ON
 
BEGIN
dbms_output.put_line('Hello world!');
END;
/

[править] Microsoft SQL Server

PRINT 'Hello, world';

[править] MySQL

SELECT 'Hello, World!';

[править] FireBird SQL / InterBase

SELECT 'Hello, World!' FROM RDB$DATABASE;

[править] Informix

SELECT FIRST 1 'Hello, World!' FROM systables;

Обычно хеллоуворлдщика можно ввести в транс, добавив в какой-нибудь частоиспользуемый header-файл следующие строчки (ахтунг, C-specific!):

#ifndef DEFINE_ME
#error Fatal error! There must be some brain in your head!
#endif

[править] Ассемблер

Очевидно, что никакой сложности в решении такая задача собой не представляет. Тем не менее, решив подобную задачу на каком-либо языке программирования, субъект чаще всего начинает oшибочно самоидентифицироваться с программистом.

Однако на языках ассемблера данная задача представляется более сложной:

[править] Assembler i8086, MS-DOS, masm

.model tiny
.code
org 100h
 
Start:
mov ah, 9
mov dx, offset msg
int 21h
 
mov ax, 4C00H
int 21h
 
msg db 'Hello, world$'
end Start

[править] Assembler i8086, MS-DOS, tasm

mov ax, 0b800h
mov ds, ax
mov [02h], 'H'
mov [04h], 'e'
mov [06h], 'l'
mov [08h], 'l'
mov [0ah], 'o'
mov [0ch], ','
mov [0eh], 'W'
mov [10h], 'o'
mov [12h], 'r'
mov [14h], 'l'
mov [16h], 'd'
mov [18h], '!'
ret

[править] Assembler i386, Linux, nasm

SECTION .data
msg: db "Hello, world",10
len: equ $-msg
 
SECTION .text
global main
main:
mov edx, len
mov ecx, msg
mov ebx, 1
mov eax, 4
int 0x80
 
mov ebx, 0
mov eax, 1
int 0x80

[править] То же, только GAS

.data
msg: .ascii "Hello,world!\n"
len = . - msg
 
.text
.globl _start
_start:
movl $4,%eax
movl $1,%ebx
movl $msg,%ecx
movl $len,%edx
int $0x80
 
xorl %ebx,%ebx
movl $1,%eax
int $0x80

[править] Assembler i386, Windows, masm

.386
.model flat, stdcall
option casemap:none
include \masm32\include\windows.inc
include \masm32\include\kernel32.inc
includelib \masm32\lib\kernel32.lib
 
.data
msg db "Hello, world!", 13, 10
len equ $-msg
 
.data?
written dd ?
 
.code
start:
push -11
call GetStdHandle
 
push 0
push offset written
push len
push offset msg
push eax
call WriteFile
 
push 0
call ExitProcess
end start

Или так:

.386
.model flat, STDCALL
includelib kernel32.lib
GetStdHandle PROTO:DWORD
WriteConsoleA PROTO:DWORD,:DWORD,:DWORD,:DWORD,:DWORD
ExitProcess PROTO:DWORD
.const
message db "Hello, world!"
.code
Main PROC
LOCAL hStdOut :DWORD
push -11
call GetStdHandle
mov hStdOut,EAX
push 0
push 0
push 16d
push offset message
push hStdOut
call WriteConsoleA
push 0
call ExitProcess
Main ENDP
End Main

[править] Assembler микроконтроллер ATMega16, AVR Studio

.include "m16def.inc"
.cseg
.org $0000
rjmp start ;Reset handler
.org $0030
start:
ldi r24, 25 ; ~= 9600 @ 4Mhz clock
out UBRRL, r24
out UBRRH, r2
ldi r24, 1 << TXEN
out UCSRB, r24
ldi r24, 1 << URSEL | 1 << UCSZ0 | 1 << UCSZ1 ; 8-n-1
out UCSRC, r24
 
; send msg
ldi ZL, msg << 1
loop:
lpm r0, Z+ ; next char
tst r0 ; terminated?
stop: breq stop
 
while_busy:
sbis UCSRA, UDRE
rjmp while_busy
out UDR, r0
rjmp loop
msg: .db "Hello, world!", 13, 10, 0

[править] На двух семисегментных индикаторах и VHDL

LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.NUMERIC_STD.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
 
ENTITY CTL IS
PORT(
CLK: IN STD_LOGIC;
DOUT1: OUT STD_LOGIC_VECTOR(0 TO 6);
DOUT2: OUT STD_LOGIC_VECTOR(0 TO 6)
);
END ENTITY;
 
ARCHITECTURE CTL_ARCH OF CTL IS
SIGNAL CNT: STD_LOGIC_VECTOR(0 TO 3):="0000";
 
BEGIN
PROCESS(CLK)
BEGIN
IF (CLK'EVENT AND CLK='1') THEN
IF CNT = "1011" THEN CNT <= "0000";
END IF;
CASE CNT IS
WHEN "0000" => DOUT1 <= "1001000"; DOUT2 <="1111111";--H
WHEN "0001" => DOUT1 <= "0110001"; DOUT2 <="1111111";--E
WHEN "0010" => DOUT1 <= "1110001"; DOUT2 <="1111111";--L
WHEN "0011" => DOUT1 <= "1110001"; DOUT2 <="1111111";--L
WHEN "0100" => DOUT1 <= "0000001"; DOUT2 <="1111111";--O
WHEN "0101" => DOUT1 <= "1111111"; DOUT2 <="1111111";--
WHEN "0110" => DOUT1 <= "1100001"; DOUT2 <="1000001"; --W(1) W(2)
WHEN "0111" => DOUT1 <= "0000001"; DOUT2 <="1111111";--O
WHEN "1000" => DOUT1 <= "0011000"; DOUT2 <="1111111";--R
WHEN "1001" => DOUT1 <= "1110001"; DOUT2 <="1111111";--L
WHEN "1010" => DOUT1 <= "0000001"; DOUT2 <="1111111";--D
WHEN OTHERS => DOUT1 <= "1111111"; DOUT2 <="1111111";
END CASE;
CNT<= CNT+1;
END IF;
END PROCESS;
END CTL_ARCH;

[править] HQ9+ / HQ9++ / HQ9+/-

H

[править] C++ с использованием Component Object Model

На мелкомягком быдлоподелии:

[
uuid(2573F8F4-CFEE-101A-9A9F-00AA00342820)
]
library LHello
{
importlib("actimp.tlb");
importlib("actexp.tlb");
#include "pshlo.idl"
[
uuid(2573F8F5-CFEE-101A-9A9F-00AA00342820)
]
cotype THello
{
interface IHello;
interface IPersistFile;
};
};
[
exe,
uuid(2573F890-CFEE-101A-9A9F-00AA00342820)
]
module CHelloLib
{
importheader();
importheader();
importheader();
importheader("pshlo.h");
importheader("shlo.hxx");
importheader("mycls.hxx");
importlib("actimp.tlb");
importlib("actexp.tlb");
importlib("thlo.tlb");
[
uuid(2573F891-CFEE-101A-9A9F-00AA00342820),
aggregatable
]
coclass CHello
{
cotype THello;
};
};
#include "ipfix.hxx"
extern HANDLE hEvent;
class CHello : public CHelloBase
{
public:
IPFIX(CLSID_CHello);
CHello(IUnknown *pUnk);
~CHello();
HRESULT __stdcall PrintSz(LPWSTR pwszString);
private:
static int cObjRef;
};
#include "thlo.h"
#include "pshlo.h"
#include "shlo.hxx"
#include "mycls.hxx"
int CHello:cObjRef = 0;
CHello::CHello(IUnknown *pUnk) : CHelloBase(pUnk)
{
cObjRef++;
return;
}
HRESULT __stdcall CHello::PrintSz(LPWSTR pwszString)
{
printf("%ws\n", pwszString);
return(ResultFromScode(S_OK));
}
CHello::~CHello(void)
{
cObjRef--;
if( cObjRef == 0 )
PulseEvent(hEvent);
return;
}
#include "pshlo.h"
#include "shlo.hxx"
#include "mycls.hxx"
HANDLE hEvent;
int _cdecl main(int argc, char * argv[]) {
ULONG ulRef;
DWORD dwRegistration;
CHelloCF *pCF = new CHelloCF();
hEvent = CreateEvent(NULL, FALSE, FALSE, NULL);
CoInitiali, NULL);
CoInitializeEx(NULL, COINIT_MULTITHREADED);
CoRegisterClassObject(CLSID_CHello, pCF, CLSCTX_LOCAL_SERVER,
REGCLS_MULTIPLEUSE, &dwRegistration);
WaitForSingleObject(hEvent, INFINITE);
CoRevokeClassObject(dwRegistration);
ulRef = pCF->Release();
CoUninitialize();
return(0);
}
extern CLSID CLSID_CHello;
extern UUID LIBID_CHelloLib;
CLSID CLSID_CHello = { 0x2573F891, 0xCFEE, 0x101A, { 0x9A, 0x9F, 0x00, 0xAA, 0x00, 0x34, 0x28, 0x20 } };
UUID LIBID_CHelloLib = { 0x2573F890, 0xCFEE, 0x101A, { 0x9A, 0x9F, 0x00, 0xAA, 0x00, 0x34, 0x28, 0x20 } };
#include "pshlo.h"
#include "shlo.hxx"
#include "clsid.h"
int _cdecl main( int argc, char * argv[]) {
HRESULT hRslt;
IHello *pHello;
ULONG ulCnt;
IMoniker * pmk;
WCHAR wcsT[_MAX_PATH];
WCHAR wcsPath[2 * _MAX_PATH];
wcsPath[0] = '\0';
wcsT[0] = '\0';
if( argc 1) {
mbstowcs(wcsPath, argv[1], strlen(argv[1]) + 1);
wcsupr(wcsPath);
}
else {
fprintf(stderr, "Object path must be specified\n");
return(1);
}
if(argc 2)
mbstowcs(wcsT, argv[2], strlen(argv[2]) + 1);
else
wcscpy(wcsT, L"Hello World");
printf("Linking to object %ws\n", wcsPath);
printf("Text String %ws\n", wcsT);
hRslt = CoInitializeEx(NULL, COINIT_MULTITHREADED);
if(SUCCEEDED(hRslt)) {
hRslt = CreateFileMoniker(wcsPath, &pmk);
if(SUCCEEDED(hRslt))
hRslt = BindMoniker(pmk, 0, IID_IHello, (void **)&pHello);
if(SUCCEEDED(hRslt)) {
pHello->PrintSz(wcsT);
Sleep(2000);
ulCnt = pHello->Release();
}
else
printf("Failure to connect, status: %lx", hRslt);
CoUninitialize();
}
return(0);
}


[править] MSIL

.assembly HelloWorld
{
}
 
.method static void Main()
{
.entrypoint
ldstr "Hello World!"
call void [mscorlib]System.Console::WriteLine(string)
ret
}

[править] GML

На GML:

show_message("Hello, World!");

или же

draw_text(42, 42, "Hello, World!");

[править] Blitz3D, язык для новичков

Способ 1:

Text 0,0,"Hello, world!"

Способ 2:

Print "Hello, world!"
WaitKey ;Или Delay 5000

Способ 3, с выебонами:

Const HWtxt$ = "Hello, world!"
 
Graphics 800,600,32,2
SetBuffer BackBuffer()
 
Type TCharacter
Field c$
End Type
 
GenerateHelloWorld
 
While Not KeyDown(1)
Cls
DrawHelloWorld
Flip
Wend
 
End
 
Function GenerateHelloWorld()
For i = 1 To Len(HWtxt)
Local char.TCharacter = New TCharacter
char\c = Mid(HWtxt,i,1)
Next
End Function
 
Function DrawHelloWorld()
For char.TCharacter = Each TCharacter
i = i + 1
Text i*10,10,char\c
Next
End Function

[править] Универсальный вариант

Универсальный Hello World! на C, C++, Haskell, Ruby, Python, Perl(x2), HTML, tcl, zsh, make, bash и brainfuck

# /* [  <!-- */ include  <stdio.h> /*   \
#{\
`""""true \\#{"\n#"}; \
\
if [ -n "$ZSH_VERSION" ]; then \
\
echo exec echo I\'m a zsh script.; \
\
elif [ -n "$BASH_VERSION" ]; then \
\
echo exec echo I\'m a bash script.; \
else \
echo exec echo I\'m a sh script.; \
fi`; #\
BEGIN{print"I'm a ", 0 ? "Ruby"  :"Perl", " program.\n"; exit; }
#\
%q~
 
set dummy =0; puts [list "I'm" "a" "tcl" "script."]; exit
 
all: ; @echo "I'm a Makefile." \
#*/
/*: */ enum {a, b}; \
\
static int c99(void) {
 
#ifndef __cplusplus /* bah */
 
unused1: if ((enum {b, a})0) \
(void)0;
#endif
 
unused2: return a; \
} \
static int trigraphs(void) { \
\
return sizeof "??!" == 2; \
} \
char X; \
\
int main(void) { \
\
struct X { \
\
char a[2]; \
};\
if (sizeof(X)  != 1) { \
\
printf("I'm a C++ program (trigraphs %sabled).\n", \
\
trigraphs()  ? "en"  : "dis");\
\
}else if (1//**/2
 
 
)unused3 : { ; \
printf("I'm a C program (C%s, trigraphs %sabled).\n", \
c99() ? "89 with // comments" : "99", \
trigraphs() ? "en" : "dis"); \
} else { \
printf("I'm a C program (C89, trigraphs %sabled).\n", \
trigraphs() ? "en" : "dis"); \
} \
return 0; \
} /*
# \
> main :: IO () -- -- \
> main = putStr "I'm a Literate Haskell program.\n"
# \
]>++++++++[<+++++++++>-]<+.>>++++[<++++++++++>-]<-.[-]>++++++++++ \
[<+++++++++++>-]<-.>>++++[<++++++++>-]<.>>++++++++++[<++++++++++> \
-]<- - -.<.>+.->>++++++++++[<+++++++++++>-]<++++.<.>>>++++++++++[ \
<++++++++++>-]<+++++.<<<<+.->>>>- - -.<+++.- - -<++.- ->>>>>+++++ \
+++++[<+++++++++++>-]<- - -.<<<<<.<+++.>>>.<<<-.- ->>>>+.<.<.<<.> \
++++++++++++++.[-]++++++++++"""`
# \
print "I'm a Python program."; """[-][--><html><head>
<!--:--><title>I'm a HTML page</title></head><body>
<!--:--><h1>I'm a <marquee><blink>horrible HTML</blink></marquee> page</h1>
<!--:--><script language="Javascript">
<!--: # \
setTimeout( // \
function () { // \
document.body.innerHTML = "<h1>I'm a javascript-generated HTML page</h1>"; // \
}, 10000); // \
//-->
</script><!--: \
</body></html><!-- } # \
say "I'm a Perl6 program", try { " ($?PUGS_VERSION)" } // "", "."; # """ # */
#define FOO ]-->~

[править] NATURAL

define DATA LOCAL
1 #BUTTON(A1)
end-define
WRITE notitle 'Hello, world!'
display notitle 'Hello, world!'
PRINT 'Hello, world!'
PROCESS GUI ACTION MESSAGE-BOX WITH NULL-HANDLE
'Hello, world!' ' ' 'IO1'
#BUTTON
GIVING *ERROR-nr
INPUT (ad=od) 'Hello, world!'
END

[править] LSL

default
{
state_entry()
{
llSay(0,"Hello, world!");
}
}

[править] Erlang

#!/usr/bin/env escript
 
main(_Args) ->
io:format("Hello, World!~n").

[править] Malbolge

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

[править] LOLCODE

HAI
CAN HAS STDIO?
VISIBLE "HAI WORLD!"
KTHXBYE

[править] GO

package main
 
import "fmt"
 
func main() {
fmt.Println("Hello, world!")
}