Програма "Hello, world!" — традиційна серед програмістів перша програма, що наводиться в підручниках з мов програмування. Програма виводить рядок «Hello, world!» або його еквіваленти «Привіт, світе!» тощо.
Традицію розпочинати вивчення нової мови програмування з такої простої програми було започатковано в книзі «Мова програмування Сі» Браяна Кернігана та Денніса Рітчі, опублікованій в 1978 році.
Незважаючи на свою простоту, програма корисна тим, що дозволяє початківцю виконати всі дії, необхідні для написання, компілювання і запуску простої програми, написаної обраною мовою програмування.
У середовищі програмування мікроконтролерів при відсутності дисплея найпростішою програмою також під назвою «Hello, world» є програма яка реалізує мигання світлодіода на одному з виходів мікроконтролера. Мета такої програми є успішна компіляція програми (при вивченні нового мікроконтролера або нового середовища розробки), прошивка програми в мікроконтролер і демонстрація працездатності самого мікроконтролера.
Проблема Hello world Відносно до простоти написання програми Hello world тим більше важливо, що така програма є прикладом розв'язання проблеми виводу тексту на стандартний вивід (цю проблему також інколи називають проблемою Hello world). Корисним розв'язанням цієї проблеми є те, що рядок «Hello world» може бути замінений на будь-який інший обчислений рядок, а проблема виводу такого рядка може бути зведена до використання рішення для вже вирішеної проблеми Hello world. Таким чином, простий приклад програми Hello world насправді демонструє в обраній мові програмування спосіб реалізації двох (обчислення, виведення) з трьох (введення, обчислення, виведення) механізмів комп'ютерних обчислень.
Приклади Як приклади будемо розглядати записаний в файл набір інструкцій, оформлений відповідно до вимог операційної системи або середовища програмування. Якщо це не вказано окремо, назви файлів та синтаксис команд — як в ОС UNIX/Linux. Для файлів інтерпретованих мов програмування має бути попередньо встановлене право на виконання.
Ada Файл "hello.adb": with Ada.Text_IO; use Ada.Text_IO;
procedure Hello is begin Put_Line ("Hello, world!"); end Hello;
Компіляція компілятором GNAT і виконання програми: gnatmake hello.adb ./hello
Assembler Файл "hello.asm" (синтаксис NASM для ОС Linux): 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
Компіляція компілятором NASM і виконання програми: nasm -felf hello.asm -o hello.o gcc hello.o -o hello ./hello
Awk Файл "hello.awk": BEGIN { print "Hello, World" }
Виконання програми: awk -f hello.awk /dev/null
Bash Файл "hello.sh": #!/bin/bash echo Hello, world!
Виконання програми: ./hello.sh
Basic Текст програми: PRINT "Hello, world!" С Файл "hello.c": #include <stdio.h> int main() { printf("Hello, world!\n"); return 0; }
Компіляція програми компілятором GCC та виконання програми: gcc hello.c -o hello ./hello
C++ Файл "hello.cpp": #include <iostream> using namespace std; int main() { cout << "Hello, world!" << endl; return 0; }
Компіляція програми компілятором GCC та виконання програми: g++ hello.cpp -o hello ./hello
C# Файл "hello.cs": using System;
class ExampleClass { static void Main()
Console.WriteLine("Hello, world!");
Компіляція програми компілятором CSC та виконання програми: csc hello.cs /o- hello
D import std.stdio;
void main() { writeln("Hello world!"); }
Компіляція та виконання програми: dmd hello.d ./hello
FORTH Текст програми в режимі інтерпретатора: .( Hello world)Текст програми в режимі компілятора:: HELLO ." Hello world" ;Виконання програми:HELLO
Go package main
import "fmt"
func main() { fmt.Println("Привіт, світе!") }
Java Файл "Hello.java": public class Hello { public static void main(String[] args) { System.out.println("Hello, world!");
Компіляція програми компілятором Javac та виконання програми: javac Hello.java java Hello
JavaScript У тілі файлу "hello.html" або окремим файлом "hello.js" з прив'язкою до "hello.html". Відкрити у Веббраузері.
У тілі: <script type="text/javascript"> console.log("Hello, World!"); </script> У окремому файлі: window.onload = function(){ console.log("Hello, World!"); } Прив'язка: <script type="text/javascript" src="hello.js"></script>З використанням Node.js:console.log("Hello, World!");
Pascal Файл "hello.pas": program Hello; begin WriteLn ('Hello, world!'); end.
Компіляція програми компілятором FPC та виконання програми: fpc hello.pas ./hello
Perl #!/usr/bin/perl print "Hello, world!"
Виконання програми: ./hello.pl
PHP Файл "hello.php": <?php echo 'Hello, world!'; ?>
Для виконання програми необхідно розмістити файл "hello.php" в одному з каталогів Вебсервера і виконати запит відповідної сторінки через Веббраузер, або php hello.php.
Porth include "std.porth" proc main in "Hello, World\n" puts end
Python Файл "hello.py": #!/usr/bin/python print("Hello, world!")
Виконання програми: ./hello.py
Tcl Файл "hello.tcl": #!/usr/bin/tclsh puts "Hello world!"
Виконання програми: ./hello.tcl
Див. також Лена Чайник Юта
Посилання – сайт з програмами "Hello, world!" на різних мовах програмування A Collection of Assembler Hello World Programs