Обновить
34
0

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

Отправить сообщение
А вы случайно не забыли стек R, декларацию новых слов и макроподстановки? А то получился не форт, а овердизайнед
RPN-калькулятор.
да, а поскольку народ валом валит, то все атрибуты http-запроса можно отсортировать по весу, взять или не брать от него md5 или sha1 и кэшировать в мемкэшед или типа того, что бы даж до СУБД не доводить. более или менее популярные комбинации попадут рано или поздно в кэш, и не будут грузить сервер вообще.
Всего 12 миллионов записей и такие извращения? Речь о MySQL? Чекбоксы можно завести в булевые колонки, завести на них индекс, и постгрес будет использовать bitmap scan.
для слайдеров можно использовать просто btree. 12 миллионов записей это очень мало.
Чем вы довольны? Тем, что в Lua оказались серьезные проблемы с массивами/аллокацией, которых удается избежать даже в джаваскрипте, при том, что в последнем внешне массивы устроены также (массив — одновременно hash)? И что эти проблемы лечатся только низкоуровневыми хаками?

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

При этом даже если кандидат знает что-то, что собеседующий не знает — это, обычно серьезная проблема кандидата.

А набирать людей, похожих на себя — это кадровый инцест с последствиями, похожими на последствия инцеста in RL.
да я бы язык, который не умеет гарантированно хвостовую рекурсию, тоже б за язык не считал.
Ага, сушат мозги три часа, что бы доказать что вы идиот и можете претендовать только на пол-зарплаты. Потому что стартап маленький и на целую зарплату денег нет. А потом выясняется что, поскольку головой думать никто не умеет, все равно набрали десять человек, которые умеют списки инвертировать и википедию читать про примитивы синхронизации, вместо одного, который головой думать умеет.
gcc умеет хвостовую рекурсию.
И кстати, чего-чего они там пишут? И сколько для этого нужно людей? Два? А кого они набирают?
О чем вы говорите? Не указано же, N элементов вставляются одним блоком или по отдельности. Не известен язык, так что непонятно, стандартный вектор умеет вставлять только по одному или блоками. Обычно, врде, по одному.

Не указано, какой стратегии реаллокации придерживается реализация вектора — может тупо реаллоцировать k+1, может k*2, может фибоначчи, может степени двойки.
Надо шипеть со скоростью 300 бит/c. Каждый настоящий программист может прошипеть на 300 бит/c, хороший программист — сможет на 2400.
Да их самих надо гнать, пожалуй. Всех. Написать функцию реверсирования не сложно, но гиморойно, потому что C не имеющий… в общем ничего не имеющий. По телефону? Отсеивают тех, кто не найдет за две минуты в гугле?

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

Окасаки-же и про персистентные структуры данных в многопоточных окружениях они, конечно же, не читали никогда.

Сложность вставки в середину массива? Вам надо вставлять в середину (а зачем вообще?), и вы выбрали массив? Вон из профессии. Дешевле завести список, вставить, потом из него сгенерировать массив, если уж прямо так надо. Про эту стоимость можно сказать только то, что она такая высокая, что спасибо, не надо.

RW-Lock и starvation? Ну опять началось, shared state и паттерны, что бы он работал, в многопоточном окружении. Пока вы играетесь со своим shared state, даже последние тормоза поймут, что его использовать по, возможности, нельзя.
Даже Intel пишет свой функцильный язык для параллельных / конкурентных
сред.

За многопоточность, значит, болеете? Давайте поговорим за многопоточность.
Почему, например, MySQL (да и все остальные) не умеет распараллеливать исполнение SQL запросов? Ведь идеальные же для этого, чистые функции.

А потому что такие как вы, инверсоры сишных списков и любители эфемерных структур данных, не прочитавших ни одной книжки, превратили код в кучу нечитабельного говна, плотно спаянного побочными эффектами, и что-то существенное в нем изменить невозможно, можно только латать из года в год. И распараллеливания запросов, скорее всего, в нем не будет НИКОГДА.

А еще вы за асимптотическую сложность переживаете? А нука — какова
сложность вашего майскульного алгоритма выведения типов Ad-Hoc (вместо алгоритма W, сложность которого известна и корректность которого доказана).

Ну конечно — вы были слишком заняты, учились списки на си инвертировать.
Когда там читать что-то. Пирс? Кто такой Пирс?

Все такие вот собеседования, они, в основном чешут ЧСВ собеседующих. На вопросах,
которые те придумали и они им кажутся очень важными, ведь они их сами придумали и знают на них ответы!

Крис Окасаки еще.
функция вызывается один раз для одного x. если несколько клоз удовлетворяют условию, будет использована первая. так что код правильный
Смс, пришедшая модему, очень поможет для предотвращения подобных случаев, ага.
Нет, проблема вовсе не в этом. Обозначение для операции вызова функции (аппликации) есть:

a b — это применить функцию a к операнду b.

В данном месте никакой проблемы нет — просто такой вот синтаксис у ML. Так сложилось.
Вообще-то, tuple обозначается запятыми:

# 1,2,3
;;
— : int * int * int = (1, 2, 3)
#

А скобки — это ээ, скобки. Группируют выражение. В т.ч. и пустое выражение unit.
Ну конечно, взяли окамл, с которым была одна проблема — NIH, ну и осилили из него, сколько смогли.

Информация

В рейтинге
Не участвует
Откуда
Россия
Зарегистрирован
Активность