Erlang, синтаксис понимания списка

Как насчет этого:

$today = date("D");
$cutoff = mktime(16, 0, 0) <= time();

$offset = $cutoff ? 2 : 1;
$offset = $cutoff and $today === 'Thu' ? 4 : 1;
$offset = $cutoff and $today === 'Fri' ? 5 : 4;
$offset = $today === 'Sat' ? 4 : $offset;
$offset = $today === 'Sun' ? 3 : $offset;

echo "

For Delivery on " . date('D jS', strtotime("$Date $offset days")) . "

";

Также я бы предложил использовать Углерод для работы с датами.

9
задан hlovdal 26 December 2010 в 14:40
поделиться

2 ответа

То, что делает тот код, берет вывод от someFun() (который должен возвратить список), и для каждого элемента в списке он присваивает значение элемента переменной X и затем вычитая значение ASCII символа 0 от того значения. Получающийся список является затем значением того целого выражения.

То, что это делает, на практике (и я написал этот код десятки времен сам), принимает это someFun/0 функция, которая возвращает строку только с цифрами в нем и затем преобразованием, которые представляют в виде строки в список цифр. Так, если someFun() возвращенный"12345", результат этого понимания списка [1, 2, 3, 4, 5].

Если Вы знакомы с понятием a map функция (как в, MapReduce), затем это должно звучать довольно знакомым к настоящему времени.

Эта страница Викиучебника похожа на хорошее введение в понимания списка Erlang:

http://en.wikibooks.org/wiki/Erlang_Programming/List_Comprehensions

Книга Joe Armstrong, "Программирующая Erlang", с Прагматической Книжной полки, (http://pragprog.com/titles/jaerlang/programming-erlang) также касается пониманий списка действительно хорошо (наряду со всем остальным связанный Erlang). Превосходная книга, настоятельно рекомендованная, и т.д.

17
ответ дан 4 December 2019 в 11:44
поделиться

Нормальная страница документации для пониманий списка находится в Разделе Справочника Erlang 6.22 и в Программировании Раздела В качестве примера 3.

Оба из них находятся на основной странице документации (нажмите на Erlang Программирование Папки слева строка меню).

Документация Erlang является потрясающей - это - просто свое расположение, немного shonky...

1
ответ дан 4 December 2019 в 11:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: