0xd34df00d
25.07.2012 17:30 Aedalus
Угадай, что это делает: http://bpaste.net/show/6QqkS3RmrsjgzfyKQ...
Recommended by:
@pooq: моча съела говно
это чешет ЧСВ дедфуда
Ну а кроме этого?
а оно должно делать что-то ещё?
Ну, неплохо бы.
ну как я сразу не догадался...
оно показывает как не нужно писать код.
Обоснуйте.
обосновываю: я пять минут пристально смотрел на эти сто строк кода и так и не понял нахуй ты так сделал. в яндехе миллионы строк кода, и ни на одну сотню строк не приходится так долго смотреть, чтобы понять что это и зачем. это с учётом того, что комментарии в коде у нас не принято писать.
Просто у вас там мудаки-неосиляторы :3
Через часик-другой напишу, чо это.
говорю тебе ещё раз. говно это. ты экономишь на спичках. никому в хуй не впились стеки, реализованные поверх векторов, которые при недостаточном заполнении и не вектора даже, а просто массивы
QVarLengthArray изобрел, да ?
Уперлись. Нужно хранить N uint32_t'ов, и в подавляющем большинстве случаев N в районе 2-3. Оверхед в 24 байта на вектор на 64-битной системе в таком случае — это пиздец. 24 vs 8 — 3 раза экономия. Учитывая, что таких хуевин может быть масштаба 10⁵, то это уже вполне неплохо.
Да :3
Ну, почти.
Олсо, а где же реализация move-ctor, move-assignment, swap ?
Это живет в C++03-мире, мувов нет. swap не нужен.
блядь, ну охуеть теперь. стотыщраз ты сэкономил 24 байта. 2.4 мега. давно ли ты в эмбеддщики записался? тебе нужно не копейки экономить, а скорость. а скорость ты проебал на отличненько таким изъёбом.
Ну понятно, что не совсем то :)
Кстати, да, indirections в профайлере могут всплыть.
Схуябы это?
Почему swap не нужен ?
Я юзкейсы этой хуйни знаю, не пригодится. На досуге поспециализирую, равно как и мувы запилю :3
бранчевание же :) во вставке и взятии
А. Обмажу unlikely первый бранч в op[], а остальное по факту будет выполняться, скорее всего, один раз при загрузке, поэтому похуй.
не «схуябы», а возьми grpof и посчитай, сколько времени будет заполняться мильён нормальных векторов четыремя элементами и сколько времени твоё поделие заполняться будет
Заполнение — не узкое место. Больше всего op[] будет.
т.е. ты признаёшь, что тут есть узкие места?
Конечно. Трейдоффы есть всегда.
ну и зачем ты на современном железе торгуешь скорость на память?
Потому что жаба душит 2.4-24 мегабайта на юзера просирать тупо на vector.
Дедфуд, еще тебя огорчу:
std::vector has shrunk from 16 bytes in Visual C++ 2010 to 12 bytes in Visual C++ in Visual Studio 2012 RC
А у нас прыщи, и я sizeof(std::vector<uint32_t>) посмотрел. 24 байта.
Понятно, что это x86, но зачем собирать x64 ?
Потому что это не шиндошс, внезапно.
там не уточняется битность системы. я меньше чем 16 байтами на x64 не знаю как обойтись
ну подожди, это ты для личкрафтов или еще чего-то ?
Нет, не для личкрафтов :3
http://barzer.net . В этой хуйне мапы синонимов храниться будут.
уточняется,
>> in x86 release mode with default settings
имхо, тебе выебнуться хочется больше, чем память сэкономить. приходи, когда сравнишь производительность с vector
морфологию чью используете?
Кококо. Производительность там съестся в другом месте.
Английский велосипедный, русский тоже, остальные — snowball.
пджди. snowball — это ж стеммер, который используется люцене?
Один из. И что?
стемминг и морфология штуки разные. хотя кроме английского морфология никакая не нужна.
вопрос на засыпку. если в искать по документу с предложением «Добрый день.» по запросу «дела» (ставь ударение куда хочешь), то будет ли найден данный документ?
Мы из всей морфологической хуйни только стемминг и используем. Полноценная морфология нам там не нужна вообще нигде, даже в английском.
ок.
лентяи
R.
Это не поиск документов по документам, это вообще не поиск. Это реврайтинг поисковых запросов.
enum
{
ObjSize = sizeof(ContClass),
SSize = ObjSize / sizeof(T)
};
поблевал.
Что тебе не нравится?
использование enum для хранения числовых констант, например
А как по-твоему?
const size_t ...
Хотя не удивлюсь если оно не будет работать.
Не будет. Сразу видно сиблядка ;3
нет, сразу видно человека, предпочитающего формулировать код наиболее близким образом к его назначению
Лучше бы ты сначала язык освоил, формулятор.
это единственное с чего сблевал? у тебя крепкий желудок
Сиблядок просто все остальное не понял :3