1. Куча / Говнокод #15752

    +128

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    (defun primes-under (limit &optional (filter-depth (truncate (log limit))))
      (labels ((%purge (prefix table depth)
                 (iter
                   (for (key value) :in-hashtable table)
                   (for mul := (* key prefix))
                   (while (< mul limit))
                   (when (> depth 0) (%purge mul table (1- depth)))
                   (remhash mul table))))
        (let ((primes (iter
                        (with p := (make-hash-table))
                        (for i :from 2 :below limit)
                        (setf (gethash i p) t)
                        (finally (return p)))))
          (iter
            (for (key value) :in-hashtable primes)
            (%purge key primes filter-depth)
            (finally
             (return
               (iter
                 (for (key value) :in-hashtable primes)
                 (reducing key :by #'+))))))))

    Вопрос к знатокам: почему так работает? (у меня чисто случайно получилось)
    Для тех, кому влом разбираться:
    Задача выше - код из Прожект Ойлер. Нужно найти сумму всех простых чисел меньше 2000000 (двух миллионов).
    Методом подбора было установлено, что если из всех чисел меньше N последовательно удалять их произведения N_0 * N_1 * ... * N_m, где m = floor(log(N)), то, по крайней мере на сколько меня хватило посчитать, не-простых чисел не остается.

    Вопрос, как связан log(N), и можно ли вообще надеятся на то, что это правило - универсально (например, что степени двойки никогда не будут меньше N).

    Запостил: wvxvw, 14 Апреля 2014

    Комментарии (150) RSS

    • > последовательно удалять их произведения N_0 * N_1 * ... * N_m,
      N_0 и т.п. это исходная последовательность 1 2 3 ... или только неудаленные числа?

      Что-то алгоритм не совсем понятен, а лисп вкурить не могу ;( Можно псевдокод какой-нибудь?
      Ответить
      • Ну, только не работающее, потому что Питон почему-то запрещает удалять эелементы из множества в цикле:

        def primes_under(limit):
            filter_depth = int(math.log(limit))
            def purge(prefix, table, depth):
                for x in table:
                    mul = x * prefix
                    if limit < mul:
                        break
                    if depth > 0:
                        purge(mul, table, depth - 1)
                    table.discard(x)
            table = set([x for x in range(limit)])
            for x in table:
                purge(x, table, filter_depth)
            result = 0
            for x in table:
                result += x
            return result

        Но идея должна быть понятна.
        Ответить
        • Да, еще, значения должны быть упорядочены по возрастанию в таблице, а не просто в произвольном порядке. Это мне просто повезло, что так было
          Ответить
      • def primes_under(limit):
            filter_depth = int(math.log(limit))
            def purge(prefix, table, depth):
                for x in sorted(table.keys()):
                    mul = x * prefix
                    if limit < mul:
                        break
                    table.pop(mul, 0)
                    if depth > 0:
                        purge(mul, table, depth - 1)
                    
            table = { x: x for x in range(2, limit) }
            for x in table.keys():
                purge(x, table, filter_depth)
            result = 0
            for x in table:
                result += x
            return result

        Вот, версия с правильным результатом, но не использующая удаление ключей во время итерации (гораздо медленнее).
        Ответить
    • Алгоритм сей называется Решето Эратосфена.
      Ответить
      • log(N) тут выглядит очень сомнительно. А вдруг у нас квадрат большого простого числа? log явно маловато.
        Ответить
        • См. пост ниже. ln(N) там самое непосредственное участие принимает в числе простых чисел. 200 лет назад доказано. Но нужно не все числа до ln(N), а именно первые ln(N) простых чисел. Ведь остальные решето отсеет.
          Ответить
          • > Но нужно не все числа до ln(N), а именно первые ln(N) простых чисел.

            просто не сразу вкурил, что N_m означает простое число с номером m. Опять же, эта формула работает лишь ассимпотически. Если N = 10, к примеру, то ещё не работает. (ln(10) ~= 2.3) Т.е. в практических задачах лучше на этот результат не полагаться.
            Ответить
            • >Т.е. в практических задачах лучше на этот результат не полагаться.
              Тем же Чебышевым были доказаны интервалы флуктаций пи-функции для практических задач и выведены всякие хитрые приближенные формулы. емнип оверхед в 10% покрывает практически все погрешности.

              Причем примечательно что сначала пи-функция отклоняется в одну сторону, потом в другую, и только потом приближается к асимптотическому пределу.
              Ответить
    • >Вопрос, как связан log(N)
      Чебышев вывел формулу кол-во простых чисел N/ln(N), она неточная, но по мере N->∞ становится все точнее.
      По сути он доказал что на N чисел приходится ln(N) простых.
      То есть, да достаточно выпилить делители всех простых до ln(N), чтобы примерно очистить от составных диапазон [1.. N).

      http://ru.wikipedia.org/wiki/Теорема_о_распределении_простых_чисел

      Хотя я не особо вдуплил алгоритм, но вроде смахивает на решето.
      Ответить
      • Фишка в том, что до 2 миллионов (больше не считал, т.как долго) получалось не примерно, а очень даже точно. Но раз говорят, что примерно, то поверю.
        Да, это по-сути решето, ну не совсем, т.как решето гарантирует что все числа будут простыми, а тут только "до определенной глубины", которая задается через log(N).
        Ответить
    • +/p:i._1 p:2e6
      Ответить
      • Так вот для кого задумывался PE.
        Ответить
      • M-x * c 'sum(prime(k)*k, k, 1, 2e6) RET
        ;)
        Ответить
        • sum(primes(2000000))
          Ответить
          • Flawless victory!
            Ответить
          • А на каком это?
            Ответить
            • Так практически на любом можно написать.
              Ответить
              • Но может быть на том языке, на котором это написал Аббат, эти функции есть в стандартной либе?
                Ответить
                • офф: Графиня изменившимся лицом бежит пруду?
                  Ответить
                • cleaned
                  Ответить
                  • Злые вы все, уйду я от вас...
                    Ответить
                    • На аватарке самый больной герой из евы имхо.
                      Ответить
                      • Аната бака?
                        Ответить
                        • Ты ещё и китайский знаешь?
                          Ответить
                          • Нет, только эту фразу ;)
                            Ответить
                          • Я год жил с китайцами в блоке и ни слова не знаю.
                            Ответить
                            • > и ни слова не знаю
                              Даже матов?
                              Ответить
                              • Как отличить, если не понимаешь?
                                Ответить
                                • > Как отличить, если не понимаешь?
                                  По эмоциональной окраске... Ну и попробовать повторить, глядя на китайца. Если уебал с вертушки - значит это было ругательство.
                                  Ответить
                                  • Я не социолог и не лингвист, схуяли мне таким заниматься? Кстати китайцы очень грязно живут. У них так принято.
                                    Ответить
                                  • > По эмоциональной окраске...
                                    Есть мнение, что эмоциональная окраска у нас с ними различается.
                                    Ответить
                              • С китайцами все гораздо сложнее: даже эмоции по лицу очень сложно понять. Т.е. если что-то очень простое, то конечно, но вот например, понять врет тебе кто-то или нет - лучше не полагаться. Кроме того, у них есть много выражений лица и жестов, которые просто ни к какой категории сходу не отнести.
                                Вообще, первое ощущение от Китая: примерно, как в первых сериях звездныx воин, в каком-нибудь баре с инопланетянами.
                                Ответить
                      • Asuka Langley Soryu?
                        Ответить
                        • И ты, Брут, продался няшам.
                          Ответить
                          • Гейдев все никак не может забанить всех политиканов, а говнокод поехал от няш-мяш. Мне кажется мир сходит с ума слишком быстро. Мне надо наверстывать. Вот сто пудов дело то все в политике и в новом прокуроре Крыма. Борманд после этого на аниме внимание обратил. Или я уже поехал и наблюдаю альтернативную вселенную.

                            ps: жалко у меня нет граватара
                            Ответить
                            • Заведи себе граватар.
                              Ответить
                            • Сегодня ты рисуешь няш, а завтра родину продашь!

                              > ps: жалко у меня нет граватара
                              Заведи ;)
                              Ответить
                              • Вы меня толкаете на преступление. Мне же потом придется перерегистрироваться под новым логином. У меня же на майл завязка вроде (я даже не помню на какой).
                                Ответить
                                • > Мне же потом придется перерегистрироваться под новым логином.
                                  Зачем? Граватар же легко убрать/поменять.
                                  Ответить
                                  • Зарегался. Как получить опенид или что там нужно у граватара, чтобы отобразилось?
                                    Ответить
                                    • > Как получить опенид или что там нужно у граватара, чтобы отобразилось?
                                      Емнип, просто чтобы мыло совпало на гк и там. И чтобы на гк стояла галочка "юзать граватар". Там же id рисунка это хеш от мыла...
                                      Ответить
                          • Рей няша только внешне.
                            Ответить
                      • да эва вся больная. вот у меня на аватарке - festum.
                        Ответить
                  • > (неодобрительно смотрит на аву)
                    Тебе вот нельзя такое носить, а Борманду можно. По моему ему почти все можно.
                    Ответить
                    • Да вот ему бы она неплохо подошла по характеру ;)
                      Ответить
                  • AdBlock и никаких проблем.
                    Ответить
                    • 0.0.0.0 gravatar.com
                      ?
                      Ответить
                      • Лучше 127.0.0.1. Тогда легким движением руки можно изобразить сцену "все пидорасы, а я - Д'Артаньян".
                        Ответить
                        • Ага, и у себя поднять сервер, а потом всем скриншоты сайтов показывать, на которых аватарки такие, какие я захочу.
                          Ответить
                          • Интересно, можно ли таким образом бороться с неугодными сайтами, показав скриншот кому следует? Аналогично, с сайтами с привязкой к пользователю (по учётке/IP/...). Загрузил незаконную картинку, увидел её в своём "личном кабинете", отправил скриншот.

                            P.S. Недавно хотел написать сервер, который выпиливает комментарии и посты неугодных пользователей, раскрывает заминусованные комментарии, отображает заминусованные посты на главной - в общем, отображает белый и пушистый ГК, который приятно читать.
                            Но как-то лень стало. Вроде юзерскрипты и так хорошо работают.
                            Ответить
                            • $HTTP["host"] == "gravatar.com" {
                                url.rewrite = (".*" => "/goatse.jpg")
                              }
                              Ответить
                              • Это работает?
                                Ответить
                                • Я лох. Нужно указать домен www.gravatar.com. Ну если добавить document-root, то работает... везде, кроме Оперы 12. Она по соображениям безопасности не грузит картинки с IP=127.0.0.1, если сам сайт находится во внешней сети.
                                  Ответить
                                  • Дык загрузи на хостинг картинок.

                                    Не работает код.
                                    Ответить
                                    • Кстати, вопрос: на каком языке код?
                                      Ответить
                                      • Это не jquery?
                                        Ответить
                                        • Это не jquery. И вообще не js. В нём не может быть просто так фигурной скобки после выражения.
                                          Ответить
                                          • Блин. А то же самое на жуквери есть?
                                            Ответить
                                            • $('img.avatar').attr('src', 'https://upload.wikimedia.org/wikipedia/commons/8/8f/Wikty_no_text_up.png');


                                              Только зачем?
                                              Ответить
                                      • Сверху вниз по этой ветке: J, Calc (Emacs Calculator), Octave / Matlab.

                                        Упс, я видимо не понял вопрос. Самый последний кусок - это ж вроде nginx конфигурация, не?
                                        Ответить
                      • Это варварство, отключает все.
                        Когда проще заблочить http://www.gravatar.com/avatar/787e4db09e7f549efecd75e189856682

                        P.S. Емнип, я так уже блочил чью-то. Кажется, Кузи, Во Времена, Которые Были Очень Давно.
                        Ответить
                        • А что там у Кузи было?
                          Ответить
                          • > А что там у Кузи было?

                            небось счастливая морда люра
                            Ответить
                            • Это когда у них парные аватарки были?
                              Ответить
                              • Типа того. Мне (как матёрому социопату и маньяку) почему-то было это противно созерцать. Лучше бы пауков там ставили.
                                Ответить
                              • >Это когда у них парные аватарки были?
                                Кстати а у кого-то схоронились линки7
                                Ответить
                        • Я просто Граватар когда-то в хостс добавил потому что изза него страницы всяких форумов очень долго грузятся. Никакой личной неприязни, просто обычно авторы этих самых форумов привязывают какой-то код к загрузке страницы, а хочестя, чтобы она побыстрее стала доступной.
                          Ответить
                          • Да у граватара никакого кода и не привязано... Просто статические ссылки на картинки.
                            Ответить
                            • Ну в смысле: сайт грузит много аватарок пользователей -> ждет пока все загрузятся для того, чтобы выполнить какой-нибудь $(function ($) { ... }); после которого кнопки становятся юзабельными и ссылки кликабельными (на говнокоде, например, если не дождаться полной загрузки, то можно случайно кликнув по ссылке комментариев отркыть отдельную страницу с выбраным говнокодом, вместо того, чтобы загрузить их в контексте текущей страницы.)
                              Ответить
                              • Это кнопка твитора тормозит.
                                Ответить
                                • А я ее тоже выпилил, чтобы наверняка. Я там все равно не зарегистрирован.
                                  Ответить
                                • > твитора
                                  Кстати, а на твиторе ограничение в 128 символов из-за того, что база не давала сделать больше varchar(128), а блобы авторы не осилили?
                                  Ответить
                                  • Так в некоторых бд и блобы имеют ограничение на длину. Если только вы не про блобы во внешнем файле.
                                    Ответить
                                  • > ограничение в 128 символов
                                    > база не давала сделать больше varchar(128)
                                    Так у них же 140 символов. Видимо, подумали над проблемой и свою базу разработали, которая смогла в varchar(140)
                                    Ответить
                                    • Ограничение в 140 символов было введено для совместимости с SMS, чтобы можно было отправлять и получать твиты без доступа к Интернету.

                                      На самом деле в SMS укладывается 140 семибитных символов, а если код хотя бы одного символа не укладывается в семь бит, то SMS отправляется в двухбайтной кодировке (UCS-2, UTF-16 или какая-то их модификация, уже не помню). В итоге реальный лимит получается 66 символов.

                                      Создатели же Твиттера лоханулись и сделали лимит в 140 юникодных символов всегда. Ага, если будет хотя бы одна буква не из ASCII, то твит в SMS не пролезет. Правда, это никого не волнует, потому что Твиттером через SMS никто не пользуется.
                                      Ответить
                                      • Подсчитали, что стоимость передачи данных по sms (в европах вроде 20 центов за смс) больше, чем на орбиту.
                                        Ответить
                                  • Это микроблог. МИКРОблог.
                                    Ответить
                                    • > МИКРОблог
                                      А мне нравятся люди, которые не могут в микроблоггинг. Да, это в их "свитере" можно наблюдать (и читать снизу вверх) по шесть-семь (десять - личный наблюдаемый рекорд) отрывков сообщения.
                                      Если читать их сверху вниз, то возникает устойчивое ощущение наблюдения за больным с афазией или даже шизофазией.
                                      Ответить
                        • А есть как адблок, только с заменой? usercss можно?
                          Ответить
                          • С помощью css можно только вырезать нафиг (display:none).

                            Подменить на что-то другое сложнее, потому что можно только менять фон у блочных элементов или добавлять голый текст.
                            Ответить
                          • Для всего остального есть greasemonkey.
                            Ответить
                      • Или http://govnokod.ru/15656
                        Ответить
                    • Блочить адблоком аватарку борманда?! Какое кощунство!
                      Ответить
                    • Ghostery.
                      Ответить
                      • Заебали со своим гостери. Он делает то же самое, что и подписка к адблоку, который у нормальых людей и так есть, при этом она не несет никаких побочных эффектов вроде глюков и кражи информации.
                        Ответить
                        • А что не так с Гостери? Хотелось бы поподробнее.

                          Побочные эффекты Адблока видел. Там слишком много правил, ломающих функционал сайтов. Приходится копаться и удалять.
                          Ответить
                          • Что не так? Это ПЛАГИН. С одной стороны, без ПЛАГИНОВ КОСТЫЛИС не функционален, с другой - каждый ПЛАГИН может добавить глюков, каждый ПЛАГИН может добавить тормозов (и добавляет), каждый ПЛАГИН прописывается во все возможные места и приходится лазить по менюшкам и убирать эот и каждый ПЛАГИН обязательно открывает после обновления свою страничку с рекламой, которую тоже можно отключить, полазив по настройкам (у каждого ПЛАГИНА - в своем месте).

                            >ам слишком много правил, ломающих функционал сайтов.
                            Почему я этого не замечал?
                            Ответить
                            • Это не ПЛАГИН. Плагинами называют то, что поддерживает интерфейс NPAPI. Это, в частности, плагины Флэша и Жабы.

                              А костыли для костылиса называются расширениями.
                              Ответить
                              • Расширения, сужения - все так, как я расписал. Наставишь ПЛАГИНОВ - потом концов не найдешь.
                                Ответить
                                • Как можно не найти концов? Уровень интеллекта не разрешает? И это Add-on, а не Plugin.
                                  Ответить
                                  • >Как можно не найти концов?
                                    Просто, блядь. Все тормозит и глючит, иди выясняй, какая сука виновата.

                                    Это КОСТЫЛЬ
                                    Ответить
                                    • УМВР ЧЯДНТ. У кого-то ручонки из одного места.

                                      А как добавлять функциональность в браузер? Патчами?
                                      Ответить
                                      • > Патчами?
                                        АКТИВИКСАМИ же.
                                        Ответить
                                      • >А как добавлять функциональность в браузер? Патчами?
                                        ~Хуятчами~ Браузер искаропки должен иметь функиональность хотя бы оперы 6 2002 года (прыщелис в докачку даже не умеет). Дело не том, что для прыщелиса есть плагины. Дело в том, что без них им нельзя пользоваться, а с ними -тормозит.
                                        Ответить
                                        • > прыщелис в докачку даже не умеет
                                          Да ну нахуй? Докачивает при обрыве.
                                          Ответить
                                        • Слезь с калькулятора.
                                          Ответить
                                          • > Слезь с калькулятора.
                                            У них торрентов нет, вот и едят кактусы с файлопомоек, бедняги.
                                            Ответить
                                            • >У них торрентов нет, вот и едят кактусы с файлопомоек, бедняги.
                                              Припекает рашкобляди. У них нет торрентов. А у нас есть русскоязычные торренты :)
                                              Ответить
                                          • А я поддержу s-a--m. В XXI веке менеджер загрузок уже должен иметь хоть какую-то функциональность. Отговорки в стиле «нинужно» устраивают только фанатов, сидящих на древнем Интернет Эксплорере и боящихся запускать браузер, которого в системе нет из коробки.

                                            Отдельно тонны ненависти к менеджеру загрузок Хрома. Дико раздражает всплывающая хуета внизу, за которую можно случайно зацепить и запустить свежескачанный экзешник, когда это не нужно.
                                            Ответить
                                            • > Отговорки в стиле «нинужно» устраивают только фанатов, сидящих на древнем Интернет Эксплорере и боящихся запускать браузер, которого в системе нет из коробки.

                                              Сижу на древнем firefox 28.0 без ПЛАГИНОВ окромя флеша, боюсь запускать браузер, которого в системе нет из коробки. Последний раз отпадание загрузки видел пару-тройку лет назад. Нинужно.
                                              Ответить
                                            • Меня в огнелисе угнетает то, что не всегда можно указать папку куда сохранять. Иногда угнетает на столько, что начинаю загрузку, потом копирую УРЛ, прерываю загрузку и скачиваю curl'ом уже туда, куда нужно.
                                              За последние лет пять было один или два раза, что файл скачался битым. Один раз это был дистрибутив Убунты, которую я пытался потом поставить в виртуалбокс и очень долго не мог понять, что случилось. Потом вспомнил про МД5.
                                              Менеджер закачек в последний раз видел в однатысячадевятсот-каком-то году.
                                              Ответить
                                              • Я пытался работать с curl на дельфях - глючное, непредсказуемое и больное на голову, нездоровое извращение. Как вы только работаете с ней?
                                                Ответить
                                                • > Я пытался работать с curl на дельфях - глючное, непредсказуемое и больное на голову, нездоровое извращение. Как вы только работаете с ней?

                                                  С делфи то? Да никак, забыли о ней как о страшном сне.
                                                  Ответить
                                              • > не всегда можно указать папку куда сохранять
                                                Правка - настройки - основные. Всегда выдавать запрос на сохранение файлов.

                                                > скачиваю curl'ом
                                                wget разве не удобней?
                                                Ответить
                                                • Включено, все равно в каких-то ситуациях просто предлагает либо сохранить либо открыть. Я думаю, это случается когда вместо "сохранить как" загрузка инициируется как-то по-другому, типа через какой-нибудь аджакс с редиректами.

                                                  wget разве не удобней?
                                                  Да одинаково. Я просто не помню как кукис / пост запрос послать с wget, а иногда нужно.
                                                  Ответить
                                              • > начинаю загрузку, потом копирую УРЛ, прерываю загрузку
                                                В это время прогрессивное человечество изобрело FlashGot.
                                                Ответить
                                                • По-моему его прогрессивное человечество изобрело в прошлом веке. Да, я пользовался когда-то чем-то похожим, но wget / curl - удобнее. Гуи говно человеку 99% его компьютерного времени проводящего за текстовым интерфейсом совсем не в тему.
                                                  Ответить
                                                  • > Гуи говно человеку 99% его компьютерного времени проводящего за текстовым интерфейсом совсем не в тему.
                                                    Эмакс не умеет сёрфить по инету и качать файлы? Печалька.
                                                    Ответить
                                                    • Нет Флеша / ж.скрипта, а в остальном - можно.
                                                      Ответить
                                                  • > wget / curl - удобнее
                                                    FlashGot + wget, никаких проблем, офицер.
                                                    Ответить
                                                    • FlashGot + wget - FlashGot = еще лучше.

                                                      Ну зачем мне ГУИ говно, в котором ни навигация, ни копирование не работают по-человечески?
                                                      Я огнелисом пользуюсь исключительно* потому, что в нем есть киснейл и Ф7. Какой мне смысл "дополнять" его какой-то херней, которая эти удобства отменяет.

                                                      * - Ну не только, еще и настройки шрифтов удобные.
                                                      Ответить
                                                      • > Ну зачем мне ГУИ говно
                                                        Ну так стоило бы начать с того, что мсье знает толк в извращениях.
                                                        Моё основное возражение было к
                                                        > Иногда угнетает на столько, что начинаю загрузку, потом копирую УРЛ, прерываю загрузку и скачиваю curl'ом уже туда, куда нужно.
                                                        Потому что это какой-то вид мазохизма.
                                                        Ответить
                                                        • А как FlashGot от этого спасет? - Вот именно, что никак. С ним только мороки дохера. Кроме того, во многих случаях нужно скачивать в папку куда доступ только с определенными правами, с чем FlashGot никак не справится, да и не должен.
                                                          Ответить
                                            • >древнем Интернет Эксплорере
                                              Охбля, IE6 скачивал файл во временную папку, а потом копировал его в нужную. На больших файлах подолгу хрустел винтом.

                                              >Дико раздражает всплывающая хуета внизу, за которую можно случайно зацепить и запустить свежескачанный экзешник, когда это не нужно.
                                              Он там по одному клику запускается без вопросов?
                                              Ответить
                                    • Хорошо если окошко с сообщением о том, что кто-то долго думает с именем файла вылезет, а если нет?
                                      Ответить
                            • Адблок не ПЛАГИН?
                              Ответить
                              • Чем меньше ПЛАГИНОВ, тем лучше. Хром хоть показывает, что сколько памяти и проца жрет, адблок, кстати, под 90 метров жрет.
                                Ответить
                                • Гхостери больший ПЛАГИН, чем адблок? Или адблок не ПЛАГИН?

                                  > Чем меньше ПЛАГИНОВ, тем лучше
                                  Это да, поэтому я никогда их не ставил, даже адблок.
                                  Ответить
                                  • Адблок - необходимый плагин, а то - хуйня непонятного назначения.
                                    Ответить
                                    • > Адблок - необходимый плагин
                                      Да ну. Чем бы реклама не тешилась, лишь бы новые окна не открывала.
                                      Ответить
                                • З.Ы. Да у тебя же ПЛАГИН!
                                  Ответить
                          • >А что не так с Гостери? Хотелось бы поподробнее.
                            плагин для параноиков сливает данные
                            Ответить
                            • > плагин для параноиков
                              Настоящий плагин для параноиков должен:
                              - поставляться только в исходниках;
                              - быть настолько простым, чтобы его можно было прочесть и понять;
                              - обновляться только вручную.

                              Все остальное - замаскированный анальный зонд.
                              Ответить
                              • 1. GhostRank отключается в настройках. Правда, были жалобы, что некоторые версии Костылиса иногда теряют настройки. Тогда да, слив возможен.

                                2. Распаковываем xpi/crx/oex — внутри только код на js, причём необфусцированный. Можно смело считать, что это опенсорс.
                                Ответить
                                • > Можно смело считать, что это опенсорс.
                                  Но ведь он может внезапно обновиться, спиздить данные, а потом внезапно обновиться и стать невинной овечкой :)
                                  Ответить
                                  • Так вот почему Микрософт настоятельно требует держать автообновление компонентов Windows включенным!
                                    Ответить
                                  • > он может внезапно обновиться, спиздить данные, а потом внезапно обновиться
                                    Если в манифесте хроморасширения добавить прав, то хром при его обновлении спросит пользователя, включать ли эту дерзкую хрень с новыми правами, которые в прошлый раз пользователь не давал.
                                    Никто не знает, как подобное происходит с юзерскриптами в Tampermonkey/Greasemonkey?
                                    Ответить
                                    • > манифест хроморасширения
                                      Ультиматум Обозревателя Интернета
                                      Ответить
                                    • > с новыми правами
                                      Ключевое слово. Если права не поменялись - не спросит. А у гхостери и адблока всяко уже есть права на перехват контента и хттп запросы на их сервер...
                                      Ответить
                                    • Кстати, а какие права у юзерскриптов и расширений в хроме и прыщелисе? Видно ли их со страницы?
                                      Ответить
                                      • Про лисьи права не знаю, про юзерскрипты-в-себе не знаю. Юзерскрипты под Tampermonkey формально имеют права Tampermonkey, но как-то ограничены в соответствие с заголовком.
                                        Права расширения (кроме краткого вопроса хрома "Разрешить расширению похищать ваши данные, воровать и убивать?") можно увидеть, распаковав его, найдя в каталоге с расширениями, или в ко-ко-консолечке от имени расширения посмотрев chrome.app.getDetails(), если у расширения работает фоновая страница, или есть browser action.
                                        Как-то так. Но я особо не копал, может что-нибудь очевидное упустил.
                                        Ответить
                                  • Но это же опенсорс! Как ты смеешь?!
                                    Ответить
                              • > Все остальное - замаскированный анальный зонд.
                                Кстати, само название plug-in как-бы намекает нам...
                                Ответить
                            • Плагин против сливания данных сливает данные? Пруфы есть?
                              Ответить
                  • Судя по количеству плюсов батхерт неилюзорный. Неплохо аватаркофаг потралил.
                    Ответить
                • Я вот тоже думал, но вроде не Матлаб и не Математика, а так чтобы primes была в стандартной либе еще где-то с похожим синтаксисом - я не знаю.
                  Ответить
                • А, хотя, нет, ступил, это таки Матлаб / Октава.
                  Ответить
            • GNU octave
              Ответить
    • А тем временем прыщебляди опять соснули хуйца.

      http://2ch.hk/s/res/957647.html
      Ответить

    Добавить комментарий