• Можете объяснить lambda в lisp?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Lisp
    Седой и строгий
    Функция mapconcat вызывает функцию переданную в первом аргументе (лямбду в вашем случае) для каждого элемента последовательности переданной вторым аргументом, а возвращённые значения склеивает в одну строку, разделяя третьим аргументом.
    (mapconcat 
      '(lambda (s) (concat "<key>" s ))
      lines
      "\n")

    То есть, если lines будет содержать '("a" "b" "c"), то сначала в лямбду будет передана строка "a", там склеена со строкой "<key>", потом строка "b", потом "c", а после полученные строки "<key>a", "<key>b" и "<key>c" будут склеены в одну строку "<key>a\n<key>b\n<key>c".
    Ответ написан
    Комментировать
  • План подготовки для поступления в Яндекс ШАД?

    @Mercury13
    Программист на «си с крестами» и не только
    Алгоритмы. Немного олимпиадного программирования ОЧЕНЬ не помешает. Алгоритмы там предлагают несложные, но очень нетривиальные, надо чувствовать, как решить задачу. Элементы сложности алгоритмов. Две задачи из восьми гарантированно будут.

    Алгебра и дискретная математика. Первый курс, всё скопом, без доказательств. Линейные уравнения, квадратичные формы, матрицы, собственные векторы, жорданова форма, перестановки, графы, теория множеств, комбинаторика, алгебра логики…

    Интегралы (не слишком «злые», но приёмы «подстановка», «по частям» и «тригонометрический интеграл» всё же освоить стоит). Интеграл средней сложности — постоянный гость в ШАДý. Может быть и ещё одна задача из мутьанализа — но это как повезёт и задача будет гарантированно нетривиальная, но решающаяся на «том, что помнишь с института» — дифференцирование, ряды Тейлора, основы топологии, простейшие пределы, правило Лопиталя. Вспомни, как берутся простейшие двойные интегралы, может попасться, например, на теории вероятностей.

    ФКП. Самое начало. Аналитических функций и рядов Лорана точно не будет. А вот то, что в комплексном поле многочлен n-й степени имеет n корней, знать надо.

    Теория вероятностей. Непрерывные и дискретные вероятности. Нечто несложное, почти что на уровне кубиков и карт, но одна-две из восьми будет. Хотя статистика — важная часть ШАДа, на экзамене не требуют. И пекла типа белых шумов и интегралов Ито не будет. Хотя что-то типа дискретной марковской цепи — а вдруг, хотя знакомые мне три экзамена не было.

    Школьные олимпиадные задачи. Возможна одна.

    Итого.
    Две — алгоритмы.
    Одна-две — вероятность.
    Одна — интеграл.
    Две-три — что угодно из школьной математики, дискретной математики, матанализа, алгебры, ФКП…

    P.S. Очень хороший приём, который мне помог. Конечно, вам придётся держать скан какого-нибудь справочника или распечатку Википедии (это не возбраняется, но электроника запрещена — впрочем, калькулятора задачи не требуют). Печатайте на одной стороне, вторую — на черновик!
    Ответ написан
    4 комментария
  • Как при join избавиться от дублирующихся записей?

    @d-stream
    Готовые решения - не подаю, но...
    тем или иным образом использовать distinct или group by
    Ответ написан
    2 комментария
  • Как ОС определяет из какого устройства надо достать данные?

    @Xilian
    Программист 1С, сетевые технологии, SQL
    Любой процесс в защищенном режиме процессора имеет свою адресацию и вообще знать не знает ни о каких MMU, в случае когда происходит PageFault - ос просто подгружает данные из свап в адресное пространство процесса. Подробнее сам процесс и его варианты описан у Таннебаума.
    Ответ написан
    Комментировать
  • Как ОС определяет из какого устройства надо достать данные?

    @alexalexes
    Давно не читал про архитектуру железа, но на пальцах могу объяснить.
    Оперативная память разделена на страницы.
    Страницы диспетчеризируются на предмет устаревания.
    Если к странице памяти давно не обращались, то она становится кандидатом на вытеснение в своп.
    Если процессам не хватает оперативной памяти для какого-то маневра, то страницы-кандидаты летят в своп, соответственно, они помечаются, как вытесненные.
    Если какому-то процессу нужно достать данные из адреса, то вычисляется, к какой странице этот адрес относится.
    Если страница вытеснена, то принимаются меры, чтобы ее вернуть в озу.
    Ответ написан
    1 комментарий
  • Как ОС определяет из какого устройства надо достать данные?

    @chromimon
    Это уже давным давно реализовано аппаратно. Уж лет 40 наверное как.

    Просто обращается к данным.
    Если данных реально нет (страница памяти помечена как сброшенная на диск) - процессор автоматически возбуждает исключение и управление передается той части ОС, что отвечает за подкачку данных с диска в оперативную память.
    Ответ написан
    Комментировать
  • Зачем нужны puma, rack?

    Грубо говоря, в общих чертах:
    Rack это библиотека, которая предоставляет АПИ для работы с ХТТП (в основном всякие обработчики запросов и ответов, вызывальщики другого кода и пр).
    Пума -- Вёб-сервер. Пума слушает порты, обрабатывает соединения и тд. Примерно как Нгинкс или Апач.
    Но есть особенность -- получив запрос Пума применит к нему Рэк, который вызовет, в свою очередь, указанный рубиновый код, то-есть собстно приложение (обычно на каком-либо каркасе, например рельсе).
    Примерно так:
    80 порт, Пума --> Rack --> Application
    Ответ написан
    1 комментарий
  • Как понять конструкцию lambda и ampersand?

    @unabl4
    ruby on rails web dev
    decorator - это объект типа Proc (лямбда, но не суть). Амперсанд, который стоит перед объектом типа Proc, превращает его в block, который НЕ является объектом и вообще не может быть инстанциирован никаким образом. Если амперсанд стоит перед объектом, который НЕ является типом Proc, то он вначале пробует вызвать на нём метод под названием "to_proc", в котором оговорена логика превращения объекта в объект типа Proc, который в свою очередь будет конвертирован в block (пример - Symbol, map(&:to_i))

    "#select" и "#map" ожидают именно block на вход
    Ответ написан
    1 комментарий
  • Почему Python используют для написания нейронных сетей, а Ruby/Php/Perl нет?

    Astrohas
    @Astrohas
    Python/Django Developer
    Python славится тем что душить своих жертв перед проглатыванием

    .
    А если без шуток, то питон предоставляет нужные для этого вещи в удобном виде. Тут вам и функциональное программирование, императивное программирование, классы, мета-классы и тд. Так же немаловажно наличие крутых научных библиотек типа всяких numpy, scipy всякие оранджи.
    Ответ написан
    1 комментарий
  • Как получить значение переменной из одного класса в другой?

    Не знаю ваш фреймфорк, но могу предложить записать переменную $WORKEREMAIL в свойство класса MyAdmin и т.к. он наследуется классом MyClass, то это свойство будет находиться и в вашем классе.
    то есть, в методе OnAfterIBlockElementAddHandler добавьте строчку $this->WORKEREMAIL = $WORKEREMAIL; а в методе OnBeforeEventAddHandler берите это свойство $this->WORKEREMAIL;
    Ответ написан
    2 комментария
  • JS или jQuery решение для копирования текста в буфер?

    yarkov
    @yarkov Куратор тега JavaScript
    Проект "Жизнь после смерти" - lifeafterdeath.ru
    Ответ написан
    Комментировать
  • Почему устройство занято при расширении раздела?

    CityCat4
    @CityCat4
    Жил-был у бабушки серенький троллик...
    Потому что на нем (судя по тексту) находится корневая файловая система. Отмонтировать ее невозможно. Единственный вариант перечитать таблицу разделов - перезагрузка.
    Ответ написан
    7 комментариев
  • Почему устройство занято при расширении раздела?

    plin2s
    @plin2s
    IT, инженер
    Раз это xvda1, то велика вероятность, что этот системный раздел, который уже примонтирован в /.
    Для переразметки системного диска нужно загрузиться с другого носителя.
    Ответ написан
    6 комментариев
  • Ubuntu 16. Почему не увеличился размер диска?

    Sanasol
    @Sanasol
    нельзя просто так взять и загуглить ошибку
    resize2fs может быть
    Ответ написан
    1 комментарий
  • Почему прозрачный фон занимает место в html?

    ThunderCat
    @ThunderCat Куратор тега CSS
    {PHP, MySql, HTML, JS, CSS} developer
    а что не так? На белый фон наложен градиент, это вы имеете в виду? Так вы на белый накладываете цвет, конечно он будет другой.

    тут в примере 4 смотрите подпись:
    Результат данного примера показан на рис. 4. Обратите внимание, что один из цветов градиента задан прозрачным, поэтому он меняется косвенно через цвет фона веб-страницы.
    Ответ написан
    3 комментария
  • Как вывести все элементы раздела?

    workDNK
    @workDNK
    Разработчик сайтов на 1С-Битрикс
    Проверьте, какое значение у параметра SECTION_CODE, оно должно быть пустым, как и у SECTION_ID. Второй вариант - если вдруг случайно в фильтре для элементов, задаваемом параметром FILTER_NAME, было добавлено ограничение по разделам.
    Ответ написан
    3 комментария
  • Как сделать preloader на send_data?

    hummingbird
    @hummingbird
    Можно к кнопке добавить:
    data: { disable_with: 'Ожидайте' }

    А также по ее нажатию с помощью JavaScript можно перевести все поля в "только для чтения", а также с помощью все того же JavaScript можно вывести анимированную иконку (смотри fa-spin у Font Awesome) и надпись рядом, мол: "Ожидайте. Ваш запрос обрабатывается."

    UPD
    Или же лучше сделать так. В форму добавьте это:
    remote: true

    Далее смотрите ID формы и добавляйте JS обработчик (CoffeeScript):
    $(document).ready ->
    	$("#form-id").on("ajax:success", (e, data, status, xhr) ->
    		#	Тут какой-нибудь код, когда все хорошо. Передаваемый JSON доступен в data.
    	).on "ajax:error", (e, xhr, status, error) ->
    		#	Тут какой-нибудь код, когда все очень плохо.
    return


    В итоге, если success или error, то скрываете форму и прогресс, а затем на месте всего этого отображается то или иное сообщение.
    Ответ написан
    3 комментария
  • Как выполнить действие при нажатии на кнопку в html + css?

    abyrkov
    @abyrkov
    JavaScripter
    Увы, никак без JS
    Ответ написан
    Комментировать
  • Как хранить xml в бд?

    @dmitryKovalskiy
    программист средней руки
    Если вы хотите десериализовать xml в набор данных по таблицам, то стандартный простейший вариант - таблица полей(id,nameNode) и таблица значений(NodeId,Value). Но вообще в СУБД должен быть спец.тип xmlData
    Ответ написан
    2 комментария