Search
Write a publication
Pull to refresh
3
0
Dmitry Ginzburg @dginz

Пользователь

Send message
Ну, если сравнивать такой код
var NatToChurch = function (n) {
  return n == 0 ? Zero : function (f) {
    return function (x) {
      return f(NatToChurch(n - ChurchToNat(Succ(Zero)))(f)(x));
    };
  };
};

var ChurchToNat = function (n) {
  return n(function (x) {
    return x + 1;
  })(0);
};


с вот таким:
natToChurch 0 = \f -> id
natToChurch n = \f -> f . (natToChurch (n - 1))

churchToNat f = f (+1) 0


то выбор очевиден, несмотря на какие-либо наличия имён
Вопроса «зачем так делать?» нет. Есть вопрос «зачем так делать на языке, который для этого вообще не предназначен?», на haskell'е те же функции выглядели бы сильно проще.
Может, это тонкий намёк на инсайдерский слив?
Подкуп не учтён :)
Я бы сказал, что Gradle является прекрасным до тех пор, пока не начнёшь его использовать и не поймёшь, что сборка проекта, занимающая в Ant'е 2 секунды, может занять в Gradle (в основном, конечно, всякие инициализации) до 30 секунд.
Используйте массив длиной 1


Не используйте массив длиной 1. Для таких случаев существует потокобезопасный AtomicInteger, который можно и изменять и декрементировать атомарно.
$ touch ./-a
$ ls
-a
$ rm -rf * .[^.]* ..?*
zsh: sure you want to delete all the files in /home/dginzburg/tmp/rmtest [yn]? y
rm: invalid option -- 'a'
Try 'rm ./-a' to remove the file ‘-a’.
Try 'rm --help' for more information.

Кстати, что более интересно:
$ echo абв | fold -w 1 

�

�

�
Суммируя: в coreutils некорректно работает fold, зато корректно работает в busybox.
Пожалуйста, предупреждайте о неожиданных звуковых эффектах!
Есть стандартные средства для этого: habrahabr.ru/post/178481/
А ссылок нет на попробовать? Вы уж либо добавьте ссылку, либо напишите, что её нет и — желательно — почему.
Собственно, сайт предназначен для малопонятного и нелогичного кода. Этот, может быть, и логичен, но никак не понятен. Суть в том, что незачем писать посты в 3 строки, не твиттер.
Для такого есть специальные сайты. govnokod.ru/
По поводу screen — это стрельба из пушки по воробьям. Если вам нужно просто запустить процесс и чтобы он не умер после выхода из ssh- (например) сессии, пользуйтесь nohup.

Information

Rating
Does not participate
Location
Рамат-Ган, Тель-Авив, Израиль
Date of birth
Registered
Activity