В статье описан "Хэлло Ворлд" для чудесного компилируемого мультипарадигменного языка D.
Не смотря на то, что материалов в сети достаточно мало, они всё же есть в необходимом для понимания количестве. Сообщество и вся инфраструктура языка также очень компактны, но достаточно сильны для тех, кто готов пройти путь отличный от копипасты. От себя лишь добавлю - сам по себе язык D, в сегодняшнем мире монстров C/C++ и подростков Go, Rust,- стоит того, чтобы погрузиться в него.
Вводные данные по языку D можно почерпнуть из:
- Википедии
- Книги "Язык программирования D" от евангелиста языка Андрея Александреску
- Книги "D Cookbook"
- И самой свежей из них "Programming in D"
Без лишних вступлений, с лозунгом "лучше один раз увидеть",- встречайте пример простейшего полностью "голого" Хэлло Ворлд:
import std.stdio;
void main(){
writeln("Hello World!");
}
Не смотря на простоту примера, уже по этому тексту видно, что язык использует импорт модулей и C-подобный синтаксис.
Добавим к этому примеру пространство имён для импортируемых функций:
import some_package = std.stdio;
void main(){
some_package.writeln("Hello World!");
}
Не смотря на то, что здесь "заворачивание" функциональности подключаемого модуля излишне,- оно может быть полезно в проектах большой сложности с пересекающимися пространствами имён или для синтаксической выразительности.
Добавим немного сахара, синтаксис языка позволяет применить функции языка как методы объектов (см. UFCS )
import std.stdio;
void main(){
"Hello World!".writeln();
}
И напоследок немного "параллельного" кода,- запустим приём строкового сообщения в параллельном потоке, отправим строковое сообщение из основного потока, по факту приёма строки в параллельном потоке напечатаем наше сообщение:
#!/usr/bin/env rdmd
import std.stdio, std.concurrency;
void main(){
auto tid = spawn(
function void(){
receiveOnly!(string)().writeln();
}
);
send(tid, "Hello World!");
}
На самом деле этот список можно продолжать очень долго, попробуйте и возможно вы будете приятно удивляться чаще и расстраиваться реже, удачи в погружении.