Рубрика «Brainfuck» - 4

Ученые из университета Упсалы (Швеция) открыли новое вещество — одну из форм карбоната магния, которая обладает огромной пористостью — 800м2/г. Весь объем упсалита (так назвали полученное вещество) заполнен крошечными пустыми порами примерно 6 нм3. Данное вещество легко и дешево [насколько по сравнению с аналогами?] получить, оно может использоваться для ликвидации последствий выбросов токсичных химических веществ, химикатов и разливов нефти.
Читать полностью »

О рибонуклеиновых кислотах (РНК)

Для поддержания жизни в живом организме происходит множество процессов. Некоторые из них мы можем наблюдать — дыхание, прием пищи, избавление от продуктов жизнедеятельности, получение информации органами чувств и забывание этой информации. Но большая часть химических процессов скрыта от глаз.
image
Читать полностью »

От Аристотеля к Витгенштейну

Мне не нужен язык, который позволяет создавать хорошие программы. Я ищу язык, на котором нельзя будет написать плохую программу. Автор

Предисловие

Развитие информатики как науки представляется рекой, которая рождается в далеком прошлом (Евклид, III век до н.э.; Вавилон, XIX век до н.э.; а возможно и раньше) из едва заметных ручейков первых алгоритмических вычислений. Неспешно двигаясь по истории, ручейки объединяются в реку, которая, неся свои воды через века, вбирает в себя притоки из смежных дисциплин, накапливает величественность и мощь и, наконец, срывается ниагарским водопадом из второго в третье тысячелетие, превращаясь в стремительный бурлящий поток, который захватывает и несет с собой из прошлого в будущее миллионы людей.

Размышления о программировании

Броуновской частице, которую то бросает на стремнину с турбулентным течением, то опрокидывает в застоявшееся болото, то на мелководье, то в омут; мир информационных технологий видится загадочным, изменчивым и непредсказуемым. Однако радость постоянного движения, героического преодоления трудностей, бешеного вращения калейдоскопа новых впечатлений со временем сменяется тоской, томлением духа и непреодолимой потребностью на мгновение приподняться над суетой, взглянуть со стороны на этот бешено бурлящий поток и попытаться разглядеть, если не общее направление бурной реки, то хотя бы ближайший поворот той протоки, в которой барахтаешься.
Читать полностью »

Одним холодным майским днем от скуки решил я таки приступить к изучению этого удивительного языка — Brainfuck'a.
Его интерпретаторы публиковали на Хабре уже очень много раз.
Но мне хотолось изучить поглубже сам язык и алгоритмы на нем, а не писать очередной интерпретатор. Поэтому было решено сделать из мухи слона компилятор какого-нибудь высокоуровневого языка в brainfuck.
Однако очень быстро начался реальный brainfuck: отсутствие оператора if, отсутствие произвольного доступа к ячейкам и куча других проблем сразу свалилась на меня. Пришлось повременить с высокоуровневым языком и сделать для начала ассемблер, в который и будет компилироваться высокоуровневый язык.
О реализации ассемблера под катом.
Читать полностью »

У каждого из нас есть свое увлечение. Кто-то увлекается коллекционированием денежных номиналов на банковском счете (так сказать, в чистом виде), кого-то интересуют конкретные носители (нумизматика). Кто-то погрузился в новую онлайн- игру, а я прошел очередной курс на edX.

Читать полностью »

Видимо, в ответ на многочисленные жалобы клиентов, появившихся после топика про ускорение работы почты, Почта России решила по-новому оптимизировать процесс доставки корреспонденции:

www.russianpost.ru/rp/press/ru/home/newscompany/item?newsid=7714 (для тех, у кого не открывается www.peeep.us/cd564d01)
Читать полностью »

++++++++[->++++>+++++++++>+++++++++++++<<<]>>.>[->+>+<<]>---.>++++..+++.<<<<.>.>>----.+.>+++.<<<<+.

Или, говоря по человечески, здравствуй Хабр!

Сегодня я хотел бы предложить сообществу инструмент, который может помочь понять брейнфак тем кто с ним не знаком, сосчитать за Вас количество плюсов и минусов(например для меня это неиссякаемый источник кучи ошибок), ну и упростить понимание простых программ на брейнфаке вроде неоптимизированного HelloWorld'a.

Данная статья в первую очередь ориентирована на людей, которые только начинают открывать для себя этот замечательный язык. Если вы один из них — добро пожаловать под хабракат.
Читать полностью »

— В данной статье будет, затронут один из самых бородатых баянов – изучение английского.
— Не будет описано никаких новых методик.
— Все материалы ниже являются субъективным ИМХО.
— Большая просьба не брать близко к сердцу и не воспринимать как истину.

Если взять любую методику подход, авторскую школу, метод или ноу-хау, по изучению английского и отбросить весь пафос, красивые слова, снять всю мишуру то получится следующая картина:

Изучение английского языка

Читать полностью »

Итоги 21 го конкурса IOCCCОбъявлены победители 21-го международного конкурса обфусцированного кода на C. Как обычно, участники удивили способностью втиснуть совершенно невероятные вещи в программы до 4096 байт. Чтобы получить максимальное удовольствие, организаторы конкурса рекомендуют смотреть версию без спойлеров и пытаться понять по коду программы, что она делает.

Например, что делает такая программа?

             main(l
        ,a,n,d)char**a;{
    for(d=atoi(a[1])/10*80-
   atoi(a[2])/5-596;n="@NKA
  CLCCGZAAQBEAADAFaISADJABBA^
  SNLGAQABDAXIMBAACTBATAHDBAN
  ZcEMMCCCCAAhEIJFAEAAABAfHJE
  TBdFLDAANEfDNBPHdBcBBBEA_AL
   H E L L O,    W O R L D! "
     [l++-3];)for(;n-->64;)
        putchar(!d+++33^
             l&1);}

Ответ

Правильно, она печатает карту мира

Итоги 21 го конкурса IOCCC

И не просто печатает, но ещё показывает на карте точку с заданными координатами, которые можно указать при запуске (символ " или #).
Кстати, это «лучшая маленькая программа» на IOCCC 1992 года.

Читать полностью »

Возможно многие из вас слышали о Brainfuck'e-эзотерическом языке программирования, либо средстве для понтов. Но тут у каждого своё мнение. Ниже я хочу привести перевод одного энтузиаста, создавшего компьютер, работающий на основе Brainfuck.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js