Пишем утилиту xd на D. Часть I.

В Plan 9, а также ее идейной наследнице Inferno OS, есть одна полезная утилита, которая называется xd. Наша команда подумала, что написание этой утилиты является довольно полезным и интересным упражнением. Давайте сделаем это на D!

Читать далее

Поточный алгоритм шифрования ChaCha

В этой статье мы рассмотрим один из простых алгоритмов шифрования, алгоритм под названием ChaCha, о предшественнике которого, под названием Salsa20, мы уже упоминали. Алгоритм ChaCha очень известен и широко применяется, а также имеет за собой стандартизированное в RFC описание, которое в упрощенном виде будет показано далее.

Читать далее

По следам примера использования генетических алгоритмов от eax.me

В этой статье мы расскажем про один из интересных на наш взгляд экспериментов, которые мы давно планировали, но не могли реализовать, поскольку оригинальный код написан был на Perl, а разбираться с алгоритмом не было времени. Автор оригинального кода довольно известен и для его блога eax.me, мы как-то делали гостевую статью про FPGA, и именно его […]

Читать далее

Бит-реверсивная перестановка в D

В этой статье мы расскажем вам про одну известную перестановку элементов массива, которая сама по себе редко упоминается и известна в контексте одного из самых популярных алгоритмов — алгоритма быстрого преобразования Фурье.

Читать далее

Демонстрационный криптографический генератор псевдослучайных чисел

Внимание! Все представленные в данной статье материалы являются демонстрационными и не должны применяться в серьезных приложениях, поскольку предлагаемое не прошло независимый аудит и не было надлежащим образом проверено, и предлагается лишь как доказательство концепции или как сравнительно простой способ генерации случайных чисел для некриптографических приложений. Если вам нужен надежный криптографический генератор случайных чисел, то воспользуйтесь […]

Читать далее

Получаем погоду из wttr.in с помощью D

В этой статье мы вам расскажем, как можно получить информацию о погоде с одного из известных сайтов без регистрации и получения каких-либо API-ключей. Мы покажем, как, используя только стандартную библиотеку D и ряд самописных структур, разобрать ответ с сайта wttr.in и что с ним можно сделать дальше.

Читать далее

Красивый бинарный поиск в D [перевод]

В этот раз мы решили вновь взяться за перевод статьи про D. И если быть до конца честными, то идея перевести эту статью возникла у нас достаточно давно и импульс для публикации перевода возник у нас весьма внезапно, когда один из авторов блога читал Habr и встретил отсылку к той статье, которую мы бы хотели […]

Читать далее

Шум Перлина в D

В этой статье мы покажем простой порт реализации шума Перлина в D. Реализация очень простая и ее легко повторить вообще без сторонних библиотек и иных сторонних компонентов. Если вам интересно, то на правах рецепта, мы прилагаем код ниже.

Читать далее

Поиск на диапазонах

В этой статье мы покажем простой пример поиска на D, однако, вместо традиционно предлагаемого массива в таком алгоритме будет использован диапазон. Данный выбор был продиктован тем, что диапазоны обеспечивают большую гибкость, производительность, а иногда и большую читабельность кода.

Читать далее

version — Согласование версии протокола в 9P

Данной статьей мы продолжаем серию переводов секции 5 страниц man из Inferno OS. В этой статье мы расскажем про самый первый тип сообщения Styx — сообщение version. Именно с этого сообщения начинается вся работа с сервером или клиентом, и с него начинается то, что называется транзакция (в современных терминах, это бы называлось сессией). Далее, мы […]

Читать далее