🦥Alex Fails
ну, там это... лямбды ввели и еще что-то новое (не помню ща)
Anonymous
идеальный язык - тот, который заточен под конкретную задачу
го для каждой задачи делать свой ЯП, чо
🦥Alex Fails
Nick
ебать вы бесполезны, засрали чат что мой вопрос никто не увидит, только трепаться о херне, никакой помощи
запомните выбор языка это как вера - а переобучение на другйо язык - как обращение в другую веру, если вы не в состоянии догнать что отличия есть суть говно, то спорьте дальше в этом уютном говночате
Nick
да малоли вдруг тут адекваты всетаки есть
Ivan
Nick
и вкурсе как решать реальные пробелмы
Nick
а не переливать из пустого в порожнее
Nick
чтото только один попытался вникнуть в пробелму и то не до конца
Nick
да это рейдж чистой воды
Александр
Ну вопрос про битовые операции конечно уровня pro.cxx
Anonymous
не хочешь - не ешь, сопли не нужны
тут все происходит на добровольной основе, нет принуждения к помощи
Ivan
Запиньте вопрос чувака!
Nick
а @AlexFails сделал групу по асму где блять ридонли вновь прибывшие и задать там вопрос нельзя
Nick
он и тут админ
Ivan
Ну вот я его вопрос пропустил
🦥Alex Fails
Nick
есть тут кто упарывается по битовым операциям? или может линку киньте где можно спросить
нужно растягивать байты, инты, лонги, т.е. из
01100101b
нужно получить удвоенное:
0011110000110011b
учетверенное:
00001111111100000000111100001111b
и увосьмиренное при лонге:
0000000011111111111111110000000000000000111111110000000011111111b
думаю понятно, наивно делается через кучу сдвигов, а хочется какойнить битовой магии, типа используем какиенить константы и т.п. чтобы получить проще результат
Nick
зайдем с другой стороны как упростить следующее выражение:
long b1 = 0b01100101;
long r1 =
((b1 & (1 << 0)) << 0) |
((b1 & (1 << 0)) << 1) |
((b1 & (1 << 1)) << 1) |
((b1 & (1 << 1)) << 2) |
((b1 & (1 << 2)) << 2) |
((b1 & (1 << 2)) << 3) |
((b1 & (1 << 3)) << 3) |
((b1 & (1 << 3)) << 4);
чтобы без циклов и ифов
Aidar
ахах
Aidar
вот это вопрос так вопрос
Ivan
Nick
мне надо менимум операций, а рекурсия - это плюс куча говна на стеке
Ivan
🦥Alex Fails
CRTP кстати, мб спасет, да
Nick
вот поэтмоу и прошу есть ли способ с магией, нагенерить я и так смогу
Александр
Можно запилить таблицу во время компиляции, просчитанную для 256 значений
Александр
А далее просто по ней соответствие пилить
Александр
Каждый байт в два байта
Nick
поход в память по сравнению с десятком операций над битами слишком дорого
Ivan
Александр
Чего простите? Одно чтение из памяти и 15 битовых операций?
Aidar
type nbits(type v, type n){
if(v)
return (1<<n)-1;
return 0;
}
nbits(b1&(1«0), n)<<(0*n) | .....
Александр
Тем более там всё в кеш влезет
Александр
Да и lookup по таблице распараллеливается
Berkus
ну да, когда запустили Котлин он действительно стал нормальной джавой, это правда
Nick
с кешм было бы все ок, если бы данных было бы не гиг
Anonymous
каждый кеш-промах - и цпу мотает сотни, а то и тысячи пустых циклов
Berkus
Anonymous
слышал, конечно. Я же наоборот поддерживаю то, что ты сказал.
Berkus
Nick
хех сагрился
Ivan
Nick
/warn
а слабо по делу что предложить?
Anonymous
triggered
Денис
Dlang жиж.
Anonymous
ну имхо ты рили нагрубил всему чату, так что заслужил
Nick
предложили после того как я привлек внимание
Nick
до этого почти полный игнор
Berkus
Крылатый
Anonymous
Nick
ой блять помощи надо, а вы блять коммерческие уебаны прям. только за бабло все
Крылатый
Nick
хех)
Ivan
Это уже перебор
Aidar
/report
Nick
редж во олл
Крылатый
/warn
Berkus
Nick
лан сорян народ
Nick
виноват, ливну сам
Berkus
тогда мы подберем что-то поинтереснее, не зная твоих требований сложно из libastral подкачивать
Aidar
за что
Крылатый
Berkus
ну вот, так всегда
Aidar
осталось 2 варна
Aidar
я уже ставки начал принимать
Dr. Friedrich
Можно было бы и разбанить, но я не умею ¯\_(ツ)_/¯
Berkus
Денис
Внезапно знаю, как минимум 4 конторы в москве, которые на нём пилят (1 - веб, 2 - для встроенных производственных систем и 3 - для линух, 4 - роскосмос)
Anonymous
её по идее даже в компайл-тайме можно сгенерить без внешнего кодогенератора, на чистых плюсах
Berkus