Terra — низкоуровневый язык системного программмирования, встраиваемый и имеющий возможность метапрограммирования с помощью языка Lua.
20.4
Рейтинг
Brainfuck *
Эзотерический язык программирования
Сначала показывать
Порог рейтинга
Уровень сложности
Ещё один интерпретатор Brainfuck
3 мин
22KBrainfuck — язык программирования, созданный с одной целью: написать для него интерпретатор. Их было написано так много, что даже не буду давать на них ссылки. В этой статье на пальцах объясняется простой, но эффективный способ его оптимизации.
+22
VulnHub: Слепая эксплуатация и Брайнфак в DC416 Basement
11 мин
7.9KТуториал
Продолжаем разбор CTF с конференции DefCon Toronto's. Задания предоставлены командой VulnHub, за что им огромное спасибо. А мы рассмотрим DC416 Basement.
Ниже, вы можете ознакомиться с предыдущим райтапом:
+11
Не все языки программирования одинаково полезны
7 мин
55KКаждый язык программирования хорош по-своему. Однако с этим утверждением согласятся не все. После прочтения следующего материала ряды несогласных могут пополниться. Более того, есть мнение, что некоторые «конструкции» вообще нельзя считать языками программирования.
По мнению «Википедии», язык программирования — формальная знаковая система, предназначенная для записи компьютерных программ. Язык программирования определяет набор лексических, синтаксических и семантических правил, определяющих внешний вид программы и действия, которые выполнит исполнитель под её управлением.
Какие-то знаковые системы проще для освоения, какие-то сложнее. Однако среди них есть и весьма причудливые. А есть настолько сложные, что осваивают их только самые хардкорные разработчики.
+22
Истории
Язык программирования Petooh
1 мин
111KПользователь Github с ником Ky6uk после трех лет разработки наконец-то опубликовал фундаментально новый (дословно) язык программирования Petooh. Это диалект Brainfuck, в котором непонятные и неудобные символы заменены на человекочитаемые слова. Для исполнения кода используются скрипты на Haskell и Perl, на выбор пользователя. Из прочих примеров творчества автора можно упомянуть разве что табурет, написанный на Javascript
Пример кода:
Пример кода:
Скрытый текст
KoKoKoKoKoKoKoKoKoKo Kud-Kudah
KoKoKoKoKoKoKoKo kudah kO kud-Kudah Kukarek kudah
KoKoKo Kud-Kudah
kOkOkOkO kudah kO kud-Kudah Ko Kukarek kudah
KoKoKoKo Kud-Kudah KoKoKoKo kudah kO kud-Kudah kO Kukarek
kOkOkOkOkO Kukarek Kukarek kOkOkOkOkOkOkO
Kukarek
KoKoKoKoKoKoKoKo kudah kO kud-Kudah Kukarek kudah
KoKoKo Kud-Kudah
kOkOkOkO kudah kO kud-Kudah Ko Kukarek kudah
KoKoKoKo Kud-Kudah KoKoKoKo kudah kO kud-Kudah kO Kukarek
kOkOkOkOkO Kukarek Kukarek kOkOkOkOkOkOkO
Kukarek
-21
JBrainfuck — Пишем компилятор Brainfuck под Java VM
13 мин
22KМеня давно интересовал вопрос написания своего компилятора под Java VM, но было недостаточно опыта, дабы сделать это. Да и как-то руки не доходили, а недавно все же решил разобраться в этой теме и заодно рассказать о своем опыте создания компилятора под эту VM.
В качестве реализуемого языка возьмем Brainfuck. Он прост в реализации, что отлично подходит для изучения данной темы, но сначала предоставлю вам свою реализацию.
JBrainfuck — оптимизирующий интерпретатор и компилятор Brainfuck под Java VM. Благодаря JIT обладает высокой производительностью.
В качестве реализуемого языка возьмем Brainfuck. Он прост в реализации, что отлично подходит для изучения данной темы, но сначала предоставлю вам свою реализацию.
JBrainfuck — оптимизирующий интерпретатор и компилятор Brainfuck под Java VM. Благодаря JIT обладает высокой производительностью.
- Лицензия: MIT
- Адрес проекта: https://github.com/SystemXFiles/jbrainfuck/
- Платформы: Linux, Windows, MacOS и везде, где есть Java.
+49
Стоит ли до верится спел чек еру? Про стой пять ни чинный пост до бра
1 мин
31KRecovery Mode
До вольно не редко приходиться на ходить враз личных текст ах не сколько о шибок. При чём большая части на писано во общем то грамот но, но нет-нет да и на рвётся глас на не верное при мнение слово форм. На пример из вечное не верное из пользование со ответствующих пост фиксов. По мимо э того в друг от делиться при ставка или при лепиться пред лог, как до ста точный при мер, и к роме того не редко до водиться не на ходить за пятых на за конных места х.
В той связист ала по степенно при ходит мыс ль что не плохо бы на ваять та кой пост в ко тором бы лоб макс и мал но воз можно е коли чес т во о шибко но что бы тестовый процесс ор да же бы и не за подозревал об том что что-то тут не так. Но что бы при том сам текст был на имение читаем им.
+101
Квайн на Brainfuck, тьюториал
13 мин
15KНа Хабре уже есть множество статей о квайнах и технологиях их написания. Любителям квайнов может стать скучно — есть шаблон, следуешь ему, получаешь квайн. Мультиязыковой квайн, даже с участием эзотерических языков тоже написать несложно и об этом тоже есть по меньшей мере три статьи. Вот тут то и приходят на помощь квайны целиком написанные на эзотерических языках, возвращая заскучавшему программисту интерес.
Попробую рассказать о процессе написания квайнов на Brainfuck.
Попробую рассказать о процессе написания квайнов на Brainfuck.
+24
Квантовый парадокс Зенона
4 мин
59KКартинка для привлечения внимания, но относящаяся к теме.
Привет, хабр!
Хотите немного размять свои мозги? «Жили-были древние греки. Хорошо жили, потому что вместо них трудились рабы. И было древним грекам очень скучно: работать не привыкли, заняться нечем. Смастерили лиру для музицирования, придумали театр, геометрию, математику, философию и прочие науки, а развлечений всё равно не хватало.
И тут на помощь страждущим пришёл Зенон Элейский с его так называемыми апориями — парадоксами, предназначенными для изрядной нагрузки на мозги современников.
Современники возрадовались: теперь можно было не просто бездельничать, а долго и упорно размышлять над предложенными парадоксами, которые, к тому же, отчасти оправдывали лень».
В самом деле, если движения не существует в принципе, то зачем зря стараться, куда-либо идти и что-то делать, достаточно просто лежать на травке под акациями и мудрствовать лукаво над тайнами Вселенной.
Заинтересовало? Добро пожаловать под хабракат (привёл несколько ссылок на учебники квант.физики).
+37
Мультиязыковые квайны
4 мин
19KПрочитал статью «Эстафета из 50-ти квайнов». Действительно, человек написал потрясающую штуку, колоссальный труд, настоящее произведение искусства. Но по комментам судя, многие не понимают, как подобные вещи делаются и полагают их чем-то на грани, если не за гранью, человеческих возможностей, особенно много эмоций было по поводу эзотерических языков (Brainfuck, Unlambda, Whitespace) в списке.
В этой статье я попытаюсь объяснить, как подобные квайны пишутся.
В этой статье я попытаюсь объяснить, как подобные квайны пишутся.
+49
Открытие высокопористого материала
2 мин
20KУченые из университета Упсалы (Швеция) открыли новое вещество — одну из форм карбоната магния, которая обладает огромной пористостью — 800м2/г. Весь объем упсалита (так назвали полученное вещество) заполнен крошечными пустыми порами примерно 6 нм3. Данное вещество легко и дешево [насколько по сравнению с аналогами?] получить, оно может использоваться для ликвидации последствий выбросов токсичных химических веществ, химикатов и разливов нефти.
+13
О молекулах РНК
3 мин
34KRecovery Mode
О рибонуклеиновых кислотах (РНК)
Для поддержания жизни в живом организме происходит множество процессов. Некоторые из них мы можем наблюдать — дыхание, прием пищи, избавление от продуктов жизнедеятельности, получение информации органами чувств и забывание этой информации. Но большая часть химических процессов скрыта от глаз.
+2
Размышления о программировании
14 мин
35KОт Аристотеля к Витгенштейну
Мне не нужен язык, который позволяет создавать хорошие программы. Я ищу язык, на котором нельзя будет написать плохую программу. Автор
Предисловие
Развитие информатики как науки представляется рекой, которая рождается в далеком прошлом (Евклид, III век до н.э.; Вавилон, XIX век до н.э.; а возможно и раньше) из едва заметных ручейков первых алгоритмических вычислений. Неспешно двигаясь по истории, ручейки объединяются в реку, которая, неся свои воды через века, вбирает в себя притоки из смежных дисциплин, накапливает величественность и мощь и, наконец, срывается ниагарским водопадом из второго в третье тысячелетие, превращаясь в стремительный бурлящий поток, который захватывает и несет с собой из прошлого в будущее миллионы людей.
Броуновской частице, которую то бросает на стремнину с турбулентным течением, то опрокидывает в застоявшееся болото, то на мелководье, то в омут; мир информационных технологий видится загадочным, изменчивым и непредсказуемым. Однако радость постоянного движения, героического преодоления трудностей, бешеного вращения калейдоскопа новых впечатлений со временем сменяется тоской, томлением духа и непреодолимой потребностью на мгновение приподняться над суетой, взглянуть со стороны на этот бешено бурлящий поток и попытаться разглядеть, если не общее направление бурной реки, то хотя бы ближайший поворот той протоки, в которой барахтаешься.
+31
Ближайшие события
Больше событий в календаре
Маркетинг
Другое
Больше событий в календаре
Разработка
Другое
Больше событий в календаре
Разработка
8 октября – 4 декабря
Онлайн
Больше событий в календаре
Разработка
Другое
Больше событий в календаре
Менеджмент
Другое
Больше событий в календаре
Разработка
Администрирование
Менеджмент
Больше событий в календаре
Разработка
Больше событий в календаре
Менеджмент
Маркетинг
Больше событий в календаре
Разработка
Менеджмент
Больше событий в календаре
Разработка
Assembler для Brainfuck
3 мин
22KОдним холодным майским днем от скуки решил я таки приступить к изучению этого удивительного языка — Brainfuck'a.
Его интерпретаторы публиковали на Хабре уже очень много раз.
Но мне хотолось изучить поглубже сам язык и алгоритмы на нем, а не писать очередной интерпретатор. Поэтому было решено сделатьиз мухи слона компилятор какого-нибудь высокоуровневого языка в brainfuck.
Однако очень быстро начался реальный brainfuck: отсутствие оператора if, отсутствие произвольного доступа к ячейкам и куча других проблем сразу свалилась на меня. Пришлось повременить с высокоуровневым языком и сделать для начала ассемблер, в который и будет компилироваться высокоуровневый язык.
О реализации ассемблера под катом.
Его интерпретаторы публиковали на Хабре уже очень много раз.
Но мне хотолось изучить поглубже сам язык и алгоритмы на нем, а не писать очередной интерпретатор. Поэтому было решено сделать
Однако очень быстро начался реальный brainfuck: отсутствие оператора if, отсутствие произвольного доступа к ячейкам и куча других проблем сразу свалилась на меня. Пришлось повременить с высокоуровневым языком и сделать для начала ассемблер, в который и будет компилироваться высокоуровневый язык.
О реализации ассемблера под катом.
+40
Что общего между «Князем Игорем» и TCP/IP?
4 мин
25KВы любите театр?
Серьезно.
Многие любят театр. В особенности – русский театр.
В двух столицах, если вы хотите увидеть представителей самых разных национальностей, проще всего сходить именно в театр. Желательно, размерами побольше, в котором активный сезон и занимательная программа.
На самом деле, проблемы начинаются ровно тогда, когда иностранец – ваш знакомый, который просит отвести его в театр. А еще у вас, например, есть девушка, которая умудряется купить билеты на троих. Отличная компания.
Как ни странно, в русских театрах далеко не всегда играют на русском. Огромное количество спектаклей, опер и других балетов проходит на иностранном языке: итальянском или французском. Иногда – немецком. Реже – английском.
Вряд ли ваша девушка будет задумываться о таких мелочах, желая показать гостю культурные ценности. И, придя в театр, вы садитесь в кресло, а занавес раздвигается…
+39
Итоги 21-го конкурса IOCCC
4 мин
23KОбъявлены победители 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);}
Ответ
Правильно, печатает карту мира.
И не просто печатает, но ещё отмечает на карте место (символ
Кстати, это «лучшая маленькая программа» на IOCCC 1992 года.
И не просто печатает, но ещё отмечает на карте место (символ
"
или # с координатами, которые можно указать при запуске).Кстати, это «лучшая маленькая программа» на IOCCC 1992 года.
+53
Brainfuck-компьютер
3 мин
6KRecovery Mode
Перевод
Возможно многие из вас слышали о Brainfuck'e-эзотерическом языке программирования, либо средстве для понтов. Но тут у каждого своё мнение. Ниже я хочу привести перевод одного энтузиаста, создавшего компьютер, работающий на основе Brainfuck.
-8
Какая же сила нужна «сильному ИИ»?
3 мин
2.1KВ принципе, любой Интеллект какого-либо Объекта или Системы определяется ПОВЕДЕНИЕМ этого Объекта или этой Системы, которое, в свою очередь, определяется в общем случае двумя технологиями: ФИЗИОЛОГИИ (Психики), как рефлекторные реакции на входное воздействие, и РАЗУМА (Сознания), как осмысленные решения на оценку обстановки.
Уровень известных «перцептронных» технологий (и иже с ними различной «нейро-кванто-семанто-статистико-математико-сетевой лабуды) это, как раз, технология Физиологии. То есть, пришёл сигнал на вход, значит, выполнил соответствующее действие. Но это просто «безмозглые автоматы» и вот они называются «слабым ИИ».
Однако, естественный Интеллект человека базируется, в основном, на второй технологии – на Разуме. А это уже «сильный ИИ». Вот в чём их принципиальная разница – в Сознании.
Уровень известных «перцептронных» технологий (и иже с ними различной «нейро-кванто-семанто-статистико-математико-сетевой лабуды) это, как раз, технология Физиологии. То есть, пришёл сигнал на вход, значит, выполнил соответствующее действие. Но это просто «безмозглые автоматы» и вот они называются «слабым ИИ».
Однако, естественный Интеллект человека базируется, в основном, на второй технологии – на Разуме. А это уже «сильный ИИ». Вот в чём их принципиальная разница – в Сознании.
-14
Как положить инвестора на лопатки или три принципа Ходжи Насреддина
5 мин
3KRecovery Mode
Наверное, не надо много говорить о том, что подавляющее большинство авторов ещё не воплощенных в жизнь инновационных идей имеют, мягко говоря, финансовое состояние, оставляющее желать лучшего. А ведь, для перехода от «гениальных разработок» к их практической реализации нужны, как оказывается, ещё и деньги. И вот, в жизни «эдисонов» и «кулибиных» начинаются бесконечные мытарства по поиску этих «жалких» сумм. Носители «бесценности» идут в различные инстанции и институции, обивают пороги государственных или частных ведомств, чтобы найти для своего стартапа щедрого инвестора, который «непременно западёт на столь многообещающее предложение», каким оно представляется лично самому «отцу революционной разработки», и выложит-таки круглые цифры.
Однако, как правило, эта огромная масса ходоков повсюду сталкивается с холодным «непониманием» у потенциальных инвесторов. И лишь единицы из этого океана страждущих и ищущих удостаиваются счастья быть осыпанным искомым денежным дождём, пусть, порою и на весьма кабальных условиях, зато, хоть, идея не умирает.
Почему же происходит такое? Является ли это нормальным и как можно переломить эту негативную статистику в другую сторону? Сие и будет темой нашего разговора после ката.
Однако, как правило, эта огромная масса ходоков повсюду сталкивается с холодным «непониманием» у потенциальных инвесторов. И лишь единицы из этого океана страждущих и ищущих удостаиваются счастья быть осыпанным искомым денежным дождём, пусть, порою и на весьма кабальных условиях, зато, хоть, идея не умирает.
Почему же происходит такое? Является ли это нормальным и как можно переломить эту негативную статистику в другую сторону? Сие и будет темой нашего разговора после ката.
+5
Почему у украинских ребят не получится эффективный жестовый переводчик?
3 мин
4.4KПосле интересной публикации об изобретении для глухо-немых (См. «Украинские студенты создали перчатки, переводящие язык жестов в речь»), за авторов которых был искренне рад, я выразил в комментариях своё сомнение о практической пользе такого новшества на текущий момент, будучи уверен в том, что на сегодня вряд ли получится какой-либо действенный инструмент, способный реально помочь понимать язык жестов.
А не получится он ровно по той же самой причине, которая препятствует созданию качественного естественно-язычного машинного переводчика. И причина эта кроется ровно в том, что компьютер, как мы знаем, не обучен понимать СМЫСЛ языкового сообщения, будь оно представлено, хоть, в вербальном виде, хоть, в эпистолярном (текстовом) виде, или даже в виде жестов.
А не получится он ровно по той же самой причине, которая препятствует созданию качественного естественно-язычного машинного переводчика. И причина эта кроется ровно в том, что компьютер, как мы знаем, не обучен понимать СМЫСЛ языкового сообщения, будь оно представлено, хоть, в вербальном виде, хоть, в эпистолярном (текстовом) виде, или даже в виде жестов.
-6
Вклад авторов
radiolok 506.0mrlolthe1st 178.0ibessonov 116.0analyticsgroup_ru 107.0eternal_why 101.0orenty7 84.0gromozeka1980 73.0alizar 53.0SystemXFiles 49.032bit_me 45.6