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

    +3

    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
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    m =: 256$0
    index =: 0
    output =: 0$0
    input =: 0$0
    code =: 0$0
    cycles =: 0$0
    codeIndex =: 0
    setCode =: 3 : 'code =: transform y'
    transform =: '><+-.,[]'&i.
    preset =: 3 : 'cycles =: 0$0 [ codeIndex =: 0 [ output =: 0$0 [ m =: 256$0 [ index=:0'
    returnOutput =: 3 : 'output { a.'
    changeValue =: 3 : 'm =: (index&{.,y,(>:index)&}.) m'  
    addCodeIndex =: 3 : 'codeIndex =: (>: codeIndex)'
    setCodeIndex =: 3 : 'codeIndex =: {: cycles'
    deleteCycle =: 3 : 'cycles =: }: cycles'
    		 
    func_1 =: 3 : 'index =:256&|@>:index'
    func_2 =: 3 : 'index =:256&|@<:index'
    func_3 =: 3 : 'changeValue@(256&|)@>:@(index&{) m'
    func_4 =: 3 : 'changeValue@(256&|)@<:@(index&{) m'
    func_5 =: 3 : 'output=:output, ((index&{) m)'
    func_6 =: 3 : '(input =: }.input)[ changeValue(256&|@{.input)'
    func_7 =: 3 : 'cycles =: cycles&, codeIndex'
    func_8 =: 3 : '(setCodeIndex`deleteCycle@.(0&=))@(index&{) m'
    
    doAction =: func_1`func_2`func_3`func_4`func_5`func_6`func_7`func_8@.]  
    doInstuction =: 3 : '(doAction[addCodeIndex)@{.@(codeIndex&{) code'
    ExitCond =: 3 : 'codeIndex = (# code)'
    		 
    interpreter =: 3 : '(((,&1 [ doInstuction )`0: @. ExitCond)^:_) 0'
    brainFuck =: returnOutput [ interpreter [ setCode [ preset
    
    brainFuck '++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.'

    интерпретатор брейнфака на J

    Запостил: kegdan, 19 Апреля 2016

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

    • Да, я ебанулся

      Код хеллоуфорда на брейфаке скопипизжен с википедии

      П.С. - могут быть ошибки, так как писал в 6 часов утра
      Ответить
    • Нотариально заверенный скриншот

      http://savepic.ru/9429533.png
      Ответить
      • Как ты с таким монитором прогаешь, там же нихуя не помещается?
        Ответить
      • Только меня по этой ссылке перенаправляет на ремонт ванн?
        Ответить
        • Меня тоже. Сервис «Savepic» сдох, его домен пошёл по рукам. Теперь этот домен по очереди перекупают торгаши, чтобы получить посетителей на свой сайт.
          Ответить
        • А скажи еще, что у тебя ванна не требует ремонта
          Ответить
    • Ты подкинул мне идею.
      Ответить
      • какую?
        Ответить
      • > Ты подкинул мне идею

        Интерпретатор BrainFuck на сишных макросах?
        Ответить
        • Звучит как "водочка на березовых почках" или "шашлычок на осиновых уголях"
          Ответить
        • На плюсавых темплейтах
          Ответить
        • На синтезируемом подмножестве верилога... И запустить его на циклоняшке.

          З.Ы. Только дисплей ещё не приехал, "sup /gk/" некуда вывести :( Разве что через JTAG на комп, но это же скучно...
          Ответить
        • А на макросах просто же. Можно даже проц замутить (идея не моя, где-то похожее видел).

          Юзаем макросы как память (если макрос соотв. биту объявлен - единичка, если нет - нолик). Тактовый генератор на скрипте, который инклудит сам себя. И собственно ядро, которое каждый такт дефайнит и раздефайнивает соотв. макросы...
          Ответить
          • Так ты сделал что хотел?
            Ответить
            • У тебя ещё борода не выросла, ниже пояса?
              Ответить
            • > Так ты сделал что хотел?
              Пока нет. Няшный светодиодный дисплейчик в конце недели только приедет.

              Сейчас есть только неоптимизированный набросок под симулятором.
              Ответить
              • Борман, грудь бреешь?
                Ответить
                • Зачем? Под лифчиком не видно же.
                  Ответить
                  • Мб, ты ещё и в доту играешь? - спросил я с сомнением.
                    Ответить
              • ох Бор, твою энергию да в мирное русло

                Собери чтоли nand2tetris
                Ответить
            • http://pastebin.com/WSZcJj4J

              Наговнокодил управляющий блок брейнфакопроца. Заняло всего 28 элементов (у циклоняшки их 22320).
              Ответить
    • Теперь можно сделать интерпретатор J на брейнфаке
      Ответить
    • писать машину BF легче, чем писать на BF

      давай-ка ты напиши интерпретатор BF на BF
      Ответить
      • > давай-ка ты напиши интерпретатор BF на BF

        pass-through решения принимаются?
        Ответить
        • нет

          хочу что бы на BF был написан эмулятор x86, а под него интерпретаор BF, на котором написан интерпретатор BF
          Ответить
          • > интерпретатор BF на BF

            нашёл:

            http://codegolf.stackexchange.com/a/37887 ( и еще больше: http://esolangs.org/wiki/brainfuck#Self-interpreters )

            ЗЫ http://esolangs.org/wiki/Dbfi -
            >>>+[[-]>>[-]++>+>+++++++[<++++>>++<-]++>>+>+>+++++[>++>++++++<<-]+>>>,<++[[>[
            ->>]<[>>]<<-]<[<]<+>>[>]>[<+>-[[<+>-]>]<[[[-]<]++<-[<+++++++++>[<->-]>>]>>]]<<
            ]<]<[[<]>[[>]>>[>>]+[<<]<[<]<+>>-]>[>]+[->>]<<<<[[<<]<[<]+<<[+>+<<-[>-->+<<-[>
            +<[>>+<<-]]]>[<+>-]<]++>>-->[>]>>[>>]]<<[>>+<[[<]<]>[[<<]<[<]+[-<+>>-[<<+>++>-
            [<->[<<+>>-]]]<[>+<-]>]>[>]>]>[>>]>>]<<[>>+>>+>>]<<[->>>>>>>>]<<[>.>>>>>>>]<<[
            >->>>>>]<<[>,>>>]<<[>+>]<<[+<<]<]
            Ответить
      • >писать машину BF
        Вообще тривиальная задачка, по правде говоря.

        >чем писать на BF
        Тут проще нахуячить примитивов (для печати строк, логических операций, алгебраический действий) и хуйнуть кодогенератор. я бы сказал: Компилятор в брейнфак.
        Ответить
    • http://esolangs.org/wiki/Brainfork - добавили многопоточность! начинаю учить!
      Ответить
    • показать все, что скрытоvanished
      Ответить
      • https://pbs.twimg.com/media/EgS4eAJXkAcEA9-?format=jpg&name=medium

        Я не гост и не борманд, но при чём тут DO?
        Ответить
        • показать все, что скрытоvanished
          Ответить
          • Я не понимаю, какая связь между сонмом амазоновских сервисов и до.

            Типа вы не юзаете авс, значит, вы лалки?
            Ответить
            • показать все, что скрытоvanished
              Ответить
              • У AWS есть сервис в духе привычной линуксовой виртуалки? Чтобы ничего нового не учить, а просто юзать. Собственно DO я ради этого и юзаю. А все эти облачные масштабирования и автоматические деплои на тысячи машин мне абсолютно не интересны.
                Ответить
                • З.Ы. Amazon Lightsail судя по всему? Ну в принципе по ценам сравнимо с DO.
                  Ответить
                  • Похоже, что лайтсейл всё равно слишком амазоновский

                    As you’re creating your instance, Lightsail lets you click-to-launch a simple operating system (OS), a pre-configured application, or development stack - such as WordPress, Windows, Plesk, LAMP, Nginx, and more. Every Lightsail instance comes with a built-in firewall allowing you to allow or restrict traffic to your instances based on source IP, port and protocol.

                    Launch a fully configured MySQL or PostgreSQL database in minutes and leave the maintenance to Lightsail.

                    With pre-configured development stacks like LAMP, Nginx, MEAN, and Node.js., we make it easy to get your web application online.
                    Ответить
                    • Да не, голый образ тоже есть. А так то у DO тоже были готовые образы под типичные стеки.
                      Ответить
                • Есть конечно. Ec2 называется.

                  но всё равно придется немного учить VPC (для сети) EBS (для дисков) и AMI (для выбора образа операционки, лол)

                  Но всё это можно визардом сделать
                  Ответить
                  • Х.з., сложно всё это. Я бы тупо Lightsail взял для начала, если бы на амазон полез. Ибо мне простенький пет проект запустить надо, а не учиться запускать хайлоад на миллионы юзеров.
                    Ответить
                    • Не сложно, на самом деле. Описаную мною питушню ты поймешь за пару дней.
                      Зато можно мутить всякие клевые штуки. Например, отцепить диск от машины, и прицепить к другой. Или сделать виртуальную локалку, где наружу доступ будет только у одной машины итд.

                      Я не юзал Lightsail кстати
                      На кой чорт мне a fully configured MySQL?

                      Кстати, для СУБД можновзять RDS
                      Ответить
                      • Дык возьми голый образ где просто прыщи без ничего. Разве у них такого нет? Судя по туториалу должен быть.
                        Ответить
                        • В EC2 есть точно, я мы их юзаем. У них своя дистра прыщей на основе rpm, но можно и дебиана и центося и убунту.

                          Вероятно, лайтсэйл это "всё в одном", как денвер, а ec2 чуть больше пирдолинга, но вообще не страшно
                          Ответить
                      • А на кой чёрт мне RDS? Я её хоть на своей тачке для отладки смогу поставить?
                        Ответить
                        • RDS это чуть пропатченная mysql или postgres (на выбор) с плюшками. Локально юзай обычный постгрес, и не парься.

                          RDS умеет сделать две инстансы в разных уголках и между ними автоматически реплицироваться, например

                          умеет аутентификацию AWS еще итд
                          ну бекапы в один клик, само собой
                          Ответить
                        • https://pbs.twimg.com/media/EgLzkanXsAE9V12?format=jpg&name=large

                          Next time they must debug in prod

                          Не для того люди получали амазоновские сертификаты, чтобы на своей тачке отлаживаться
                          Ответить
                      • > клёвые штуки

                        Ещё раз, мне не надо шашечки, мне надо ехать. И ебал я тратить два дня на разбор всех этих механизмов, которые мне не понадобятся. Я не пейсбук пишу и не телегу. И разрабом под веб я работать не планирую. Т.е. знание AWS мне особо не пригодится.

                        Собственно поэтому я выбрал DO - он был тупой и простой, никаких хайлоад фишек в те годы у него вообще не было. Нажимаешь кнопочку и через минуту получаешь привычные прыщи. Всё.
                        Ответить
                        • ты не повериш, я тоже не пишу фейсбук, но например не давать виртуалке публичного айпи это всегда полезно, даже для мелкого говносайта
                          Ответить
                          • Ну ты опять какой-то серьёзный проект пишешь, раз тебе две тачки понадобилось.

                            А вообще DO сейчас умеет и в докер и в приватные локалки вроде.
                            Ответить
                            • > раз тебе две тачки понадобилось.
                              не-а, у меня одна тачка. С ней в локалке RDS и ALB: фронтовый лоад балансер AWS. А уже у балансера внешний IP.

                              На самом деле я флужу и троллю конечно: свои проекты у меня на sweb и time4vps: там именно так, как ты говоришь. Нажал кнопку -- получил машину с выбранной ос и IP. Там же и база своя (всмысле мною поставленная), и мой nginx.

                              >А вообще DO сейчас умеет и в докер
                              AWS тоже умеет (ECS называется).

                              > и в приватные локалки вроде.
                              Вполне верю) Ну вот я про то спрашивал
                              Ответить
                              • Ну когда я регался на DO, там из фишек были только снепшоты по-моему. И он даже трафик тарифицировать не умел, лол.
                                Ответить
                        • Это даже не для веб-разрабов скорее, а для сетевиков и девопсов
                          Ответить
                • > А все эти облачные масштабирования и автоматические деплои на тысячи машин мне абсолютно не интересны.

                  В смысле, а как мы еще деньги с тебя стричь будем?
                  Ответить
      • Абизяна, а почему с ажурой не набигаешь?
        Ответить
        • показать все, что скрытоvanished
          Ответить
          • Мой на DO.

            Я про Ажуру тоже почти не знаю, увы.

            Но видел у них такую штуку:
            https://azure.microsoft.com/en-us/services/cognitive-services/content-moderator/
            Ответить
            • показать все, что скрытоvanished
              Ответить
              • Если честно, то мне не на чем проверить.

                Но, думаю, что картинку он может не только забанить, но и задержать, обвинить, осудить, посадить и расстрелять
                Ответить
              • > забанить картинку за оскорбелние афроамериканца

                https://docs.microsoft.com/en-us/azure/cognitive-services/content-moderator/image-moderation-api

                Use Content Moderator's machine-assisted image moderation and Review tool to moderate images for adult and racy content. Scan images for text content and extract that text, and detect faces. You can match images against custom lists, and take further action.
                Ответить
                • Хм, т.е. можно юзать этот сервис для поиска и сохранения порнухи?
                  Ответить
              • А вот у «Cloudflare» есть «CSAM»:
                The Child Sexual Abuse Material (CSAM) Scanning Tool allows website owners
                to proactively identify and take action on CSAM located on their website. Enabling
                this service will alert you and the National Center for Missing and Exploited Children
                (NCMEC) of your cached image files that match known CSAM hashes. The alerts to
                NCMEC will include your set email address. Additionally, this tool will attempt to
                proactively block material that is identified by this tool.

                Удобно! Клиентоориентированно!
                Ответить
                • показать все, что скрытоvanished
                  Ответить
                  • Это про тян, которую за свои же фотки посадили?
                    Ответить
                    • нет

                      это про чуть ли не первый случай, когда Yahoo сообщило ФБР IP по нику, а провайдер сообщил домашний адрес по IP
                      Ответить
                  • Пиздец.
                    Ответить
                    • показать все, что скрытоvanished
                      Ответить
                      • В том-то и дело, что эта залупа ищет только известные хэши (хоть и нечёткие). Новую сделанную маньяком фотку оно никак не отследит.
                        https://blog.cloudflare.com/the-csam-scanning-tool/
                        Ответить
                        • А зачем искать известные хеши? Просто чтобы поймать айпишник или ник с которого их выложили?
                          Ответить
                          • Ты не понимаешь, это же дети!!!!11!!11
                            Ответить
                          • Довольно бессмысленно в 2020

                            Маньяк пойдет через китайский VPN на тор, а оттуда в Инет, и выложит фотку
                            Ответить
                            • Ну дураков, которые в технике не шарят, полно на самом деле. Кто-то и попадётся.
                              Ответить
                        • Если я поверну в графическом редакторе фотку на 1 градус или растяну или обрежу или изменю яркость, то у неё будет новый хэш?
                          Ответить
                          • Ну там наверное как в поисковиках по картинкам хеши, а не тупо мд5.
                            Ответить
                            • Я помню, что у «Гугла» раньше были проблемы с идентификацией фоток, повёрнутых на определённый угол. Как сейчас, не знаю, нужно проверять.
                              Ответить
                              • Когда-то у меня социальная сеть «стыдоба» отказывалась принимать известный ролик «у нас масочный», аргументируя это нарушением копирайта. Надо ли говорить, что проблему решило горизонтальное отзеркаливание.
                                Ответить
                            • А если так?

                              https://i.imgur.com/GvCTHPI.jpg
                              Ответить

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