Как стать автором
Обновить
0
Рейтинг

Brainfuck *

Эзотерический язык программирования

Сначала показывать
  • Новые
  • Лучшие
Порог рейтинга
  • Все
  • ≥0
  • ≥10
  • ≥25
  • ≥50
  • ≥100

Только добровольцы — шаг вперед

Data Mining *Brainfuck *

Только добровольцы — шаг вперед!


Нужно провести разведку боем


В продолжение темы управляемого обучения ищем единомышленников для испытаний этого способа машинного обучения: разработчиков, потенциальных заказчиков, инвесторов — кто готов потратить некоторое время на изучение и эксперименты.
Читать дальше →
Всего голосов 12: ↑8 и ↓4 +4
Просмотры 2.5K
Комментарии 3

Новости

Почта на «малинке»

Настройка Linux *Серверное администрирование *Brainfuck *DIY или Сделай сам

Проектирование


Почта, почта… «В настоящее время любой начинающий пользователь может завести свой бесплатный электронный почтовый ящик, достаточно зарегистрироваться на одном из интернет-порталов», — утверждает Википедия. Так что запуск для этого своего почтового сервера — это немного странно. Тем не менее, я не жалею о потраченном на это месяце, считая со дня установки ОС до дня отправки первого письма адресату в интернете.
Читать дальше →
Всего голосов 12: ↑6 и ↓6 0
Просмотры 6.7K
Комментарии 3

Мои маленькие реле: Тройной Brainfuck, или что такое безумие

Brainfuck *Настольные компьютеры DIY или Сделай сам

Рис.1: Релейный компьютер BrainfuckPC на фоне его автора

Продолжая славную традицию ежегодного дайджеста моих самых безумных компьютерных проектов, представляю вам третью и заключительную статью о проекте релейного компьютера BrainfuckPC.

В прошлых сериях:


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

Под катом звенящие релейные блоки, самые быстрые в мире вычисления на реле, монтаж накруткой, вакуумные индикаторы, и многое другое.
Всего голосов 114: ↑112 и ↓2 +110
Просмотры 25K
Комментарии 49

Аналитика девушек с низкой социальной ответственностью (Заряжено Power BI, Qlik Sense, Tableau)

Data Mining *Brainfuck *Big Data *Визуализация данных Исследования и прогнозы в IT
Из песочницы

Кто мы такие и какие были предпосылки проекта?


Добрый день, меня зовут Лазарев Владимир, я руководитель BI-интегратора Аналитикс Групп. Мы делаем для бизнеса наглядные отчёты по маркетингу, продажам, финансам, логистике на базе ведущих аналитических платформ Qlik Sense, Power BI, Tableau.

В BI платформах очень важна визуальная составляющая. Если вы посмотрели десятки демо-отчетов BI-систем и вам не нравится как выглядит та или иная платформа, то скорее всего вы ее не будете внедрять, даже если вас устраивает цена и технические характеристики. Исходя из этого рождается необходимость увидеть одни и те же данные в разных аналитических платформах, чтобы можно было сопоставить.

И желательно, чтобы данные были интересными… :-)

Откуда появилась идея сделать этот отчёт?


Несколько лет назад Высшая школа экономики опубликовала статью о формировании цен на услуги девушек низкой социальной ответственности в Москве. Это были агрегированные данные анализа 1.800 анкет. Нам показались интересными данные, которые стоят за этими выводами социологов ВШЭ. И мы решили проработать эту тематику.
Читать дальше →
Всего голосов 171: ↑139 и ↓32 +107
Просмотры 118K
Комментарии 164

Как работает Zig?

Программирование *Системное программирование *Компиляторы *Brainfuck *
Перевод
От переводчика: этот пост был опубликован в блоге автора 15 марта 2018 года. Так как язык развивается, в настоящее время его синтаксис может отличаться. Всё описанное относится к Zig 0.2.0, текущая версия языка — Zig 0.3.0.

Я связался с автором поста, и он любезно предоставил ссылку на репозиторий с актуальной версией исходников проекта на Zig 0.3.0

Здравствуйте! Давайте напишем интерпретатор Brainfuck! «Зачем?» — можете спросить вы, но вы не найдёте здесь ответа.

Я сделаю это на Zig.

Zig — это….


…новый язык программирования. Он пока в бета-версии, и быстро развивается. Если вы видели код на Zig раньше, код в этом посте может показаться вам немного другим. Он действительно другой! Zig 0.2.0 только что вышел, совпав с релизом LLVM 6 несколько недель назад, и включает в себя множество изменений синтаксиса и общие усовершенствования языка. Главным образом, многие «заклинания» были заменены ключевыми словами. Смотрите здесь для более глубокого объяснения всех изменений!

Zig разработан, чтобы быть читаемым, и относительно интуитивным для тех, кто знаком с компилируемыми и типизированными языками, такими, как C, C++, и, в некоторых моментах, Rust.

Код был скомпилирован и протестирован с Zig 0.2.0, который доступен прямо сейчас, по различным каналам, включая homebrew, если вы на OSX: brew install zig.
Читать дальше →
Всего голосов 26: ↑25 и ↓1 +24
Просмотры 9.7K
Комментарии 5

Low-level Brainfuck

Программирование *Assembler *Brainfuck *
Tutorial
Writing a Brainfuck interpreter (compiler) in TurboAssembler.

To begin with, let's build the interpreter in a high-level language, for example, in Pascal.

To kick off, write a program that will output a character using the sum of + as own ascii-code.

So, we only need the bf-commands + and .

    var
     data_mem: array[1..10] of integer;    // data array
     command_mem: string;                 // command array
     i: integer;                         // index of command array
     j: integer;                        // index of data array
    begin
     j:=1;                  
     readln(command_mem);       
     
     for i:=1 to length(command_mem) do begin   // in the cycle we process the string 
      if (command_mem[i]='+') then data_mem[j]:= data_mem[j]+1;
      if (command_mem[i]='.') then write(chr(data_mem[j]));
     end;
    end.

bf-code +++++++++++++++++++++++++++++++++. will issue !
(the ascii-code of the symbol ! is 33).

You may ensure that the program is correct via the link.
Читать дальше →
Всего голосов 30: ↑24 и ↓6 +18
Просмотры 4.4K
Комментарии 7

Низкоуровневый Brainfuck. Продолжение…

Программирование *Assembler *Brainfuck *
Tutorial
Часть I
Часть II
Часть III

Создание транслятора языка brainfuck на TurboAssembler'e.

Добавим вывод массива data_arr («ленту» машины Тьюринга) на экран.

Напишем программу, выводящую на экран элементы произвольного массива посредством функции 09h прерывания 21h

.model tiny                 ; ascii-decoder.asm
jumps
.data
 data_arr DB 1,0,2,0,3,0,4,0,5,0,6,0,7,'$' ; данные

.code
ORG    100h
start:
;Подготовим все необходимое
  mov AX, @data          ; настраиваем сегмент данных                                       
  mov DS,AX
;;;;;;;;;;;;;;;;
 MOV    AH,2              ; переходим на новую строку
 MOV    DL,0Ah     
 INT    21h 
mov dx,offset data_arr     ; указатель на массив символов
mov ah,09h		            ; вывести строку
int 21h        
;;;;;;;;;;
 MOV    AH,2       ; переходим на новую строку
 MOV    DL,0Ah     
 INT    21h        
  
 mov AX, 4c00h      ; завершение программы  
 int 21h 
end start

На экране мы увидим ascii-коды элементов массива data_arr DB 1,0,2,0,3,0,4,0,5,0,6,0,7,'$'


Читать дальше →
Всего голосов 6: ↑6 и ↓0 +6
Просмотры 5.6K
Комментарии 6

Написание собственной работоспособной ОС за полгода

Ненормальное программирование *Совершенный код *Системное программирование *Brainfuck *Процессоры
image

Предыстория


Здравствуйте! Всех категорически приветствую, сегодня хотел бы рассказать Вам о своём опыте написание работоспособной ОС под архитектуру x86.

Как-то весенней ночью у меня родилась гениальная идея — попробовать себя в написании собственной ОС, которая может позволить запускать программы, работать с устройствами, да и в общем выжимать всю мощь из Intel'овской архитектуры в своих нуждах: к примеру, для своей фабрики или чего-либо иного. Моей целью было и есть написание такой ОС, которая могла бы позволить максимальную производительность для каких-то конкретных задач, не тратя процессорное время на всяческие излишества. В основном я преследую лишь спортивный интерес, получение опыта для себя в системном программировании и написания драйверов для устройств, которые используются повсеместно. Что из этого вышло — решать вам, сразу говорю, что не надо писать комментарии про создание собственного дистрибутива линукса, и преследовал интерес написать всё «From scratch» — с нуля, дабы хорошо погрузиться в тему ОСдева. Сразу хочу выразить огромную благодарность Бенджамину Лунту и форуму OSDev, так же как их Вики. Бен помог мне разобраться с EHCI, что несомненно внесло огромный вклад в мою ОС — USB устройства, они везде! Так же передо мной стояла задача создать собственную архитектуру, удобную мне, не исключая использование стандартов ELF-файлов.
Читать дальше →
Всего голосов 196: ↑187 и ↓9 +178
Просмотры 85K
Комментарии 210

Низкоуровневый Brainfuck

Программирование *Assembler *Brainfuck *
Tutorial
Часть I
Часть II
Часть III

В этой статье напишем Brainfuck-транслятор на TurboAssembler
Вот здесь можно выполнить отладку bf-программ в пошаговом режиме.

Сперва напишем интерпретатор на каком-нибудь высокоуровневом языке, например, на Паскале.

Массив data_arr будет представлять память данных, строка str_arr будет содержать команды.

Напишем программу, выводящую символ, ascii-код которого соответствует количеству + (поэтому нам нужны будут только команды + и .)

var
 data_arr:array[1..10] of integer;    // массив данных
 str_arr: string;                     // команды  
 i, j: integer;                       // индексы строки и массива
begin
 j:=1;                  // нумерация элементов массива начинается с единицы
 readln(str_arr);       //считываем строку

 for i:=1 to length(str_arr) do begin    // в цикле обрабатываем строку
  if (str_arr[i]='+') then data_arr[j]:= data_arr[j]+1;
  if (str_arr[i]='.') then write(chr(data_arr[j]));
 end;
end.

bf-код +++++++++++++++++++++++++++++++++. выдаст ! (ascii-код символа ! равен 33 ).

Программу можно проверить в online ide ideone.com
Читать дальше →
Всего голосов 11: ↑8 и ↓3 +5
Просмотры 7.5K
Комментарии 6

Мой первый компилятор на LLVM

Open source *C++ *Компиляторы *Brainfuck *
Перевод
Tutorial
Это руководство посвящено написанию простейшего компилятора на LLVM. Никакой предварительной подготовки не требуется.



Входным языком нашего компилятора будет BF. Это классический «игрушечный» язык для компиляторов, и даже есть компилятор BF в примерах к LLVM! В этом посте я приведу процесс написания компилятора с пояснениями.
Читать дальше →
Всего голосов 37: ↑35 и ↓2 +33
Просмотры 21K
Комментарии 11

Самые неординарные языки программирования

Блог компании ua-hosting.company Ненормальное программирование *Программирование *Кодобред Brainfuck *


Признаться честно единственная моя связь с программированием в том, что мой брат программист, ну еще я в школе учил Pascal. Однако, я полностью осознаю всю сложность и красоту программирования. Создать программу, код которой не будет содержать «мусора», достойно похвалы. Что уж говорить о создании самого языка, на котором и пишутся программы. Проще говоря — это сложно, чертовски сложно. И, значит, это должно быть обдуманно и нести какой-то смысл. Но не всегда. Сегодня мы с вами вместе приподнимем брови в удивлении, ознакомившись с самыми нелепыми и смешными языками программирования. Поехали.
Читать дальше →
Всего голосов 36: ↑24 и ↓12 +12
Просмотры 48K
Комментарии 30

Язык Terra — низкоуровневый партнёр Lua

Open source *Программирование *Компиляторы *Brainfuck *Lua *
Перевод
Terra — низкоуровневый язык системного программмирования, встраиваемый и имеющий возможность метапрограммирования с помощью языка Lua.

Читать дальше →
Всего голосов 57: ↑57 и ↓0 +57
Просмотры 15K
Комментарии 28

Ещё один интерпретатор Brainfuck

Алгоритмы *Brainfuck *C *

Brainfuck — язык программирования, созданный с одной целью: написать для него интерпретатор. Их было написано так много, что даже не буду давать на них ссылки. В этой статье на пальцах объясняется простой, но эффективный способ его оптимизации.


quine


Читать дальше →
Всего голосов 28: ↑25 и ↓3 +22
Просмотры 18K
Комментарии 11

VulnHub: Слепая эксплуатация и Брайнфак в DC416 Basement

Информационная безопасность *Brainfuck *Реверс-инжиниринг *CTF *
Tutorial

Продолжаем разбор CTF с конференции DefCon Toronto's. Задания предоставлены командой VulnHub, за что им огромное спасибо. А мы рассмотрим DC416 Basement.
Ниже, вы можете ознакомиться с предыдущим райтапом:
Читать дальше →
Всего голосов 11: ↑11 и ↓0 +11
Просмотры 6.8K
Комментарии 0

Текст, которого нет

Информационная безопасность *Ненормальное программирование *Brainfuck *

Текстовые редакторы, основная задача которых — отображение моноширинного шрифта (например, кода), должны, как и следует из названия, показывать символы одной ширины.


invisible symbols in diff

Но есть нюанс
Всего голосов 72: ↑70 и ↓2 +68
Просмотры 63K
Комментарии 42

Не все языки программирования одинаково полезны

Ненормальное программирование *Assembler *Кодобред Brainfuck *


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

По мнению «Википедии», язык программирования — формальная знаковая система, предназначенная для записи компьютерных программ. Язык программирования определяет набор лексических, синтаксических и семантических правил, определяющих внешний вид программы и действия, которые выполнит исполнитель под её управлением.

Какие-то знаковые системы проще для освоения, какие-то сложнее. Однако среди них есть и весьма причудливые. А есть настолько сложные, что осваивают их только самые хардкорные разработчики.
Читать дальше →
Всего голосов 52: ↑37 и ↓15 +22
Просмотры 53K
Комментарии 162

Язык программирования Petooh

Ненормальное программирование *Программирование *Кодобред Brainfuck *GitHub
Пользователь 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
Всего голосов 89: ↑34 и ↓55 -21
Просмотры 92K
Комментарии 27

JBrainfuck — Пишем компилятор Brainfuck под Java VM

Java *Компиляторы *Brainfuck *
Tutorial
Меня давно интересовал вопрос написания своего компилятора под Java VM, но было недостаточно опыта, дабы сделать это. Да и как-то руки не доходили, а недавно все же решил разобраться в этой теме и заодно рассказать о своем опыте создания компилятора под эту VM.

В качестве реализуемого языка возьмем Brainfuck. Он прост в реализации, что отлично подходит для изучения данной темы, но сначала предоставлю вам свою реализацию.

JBrainfuck — оптимизирующий интерпретатор и компилятор Brainfuck под Java VM. Благодаря JIT обладает высокой производительностью.


Ну что, приступим?
Всего голосов 49: ↑49 и ↓0 +49
Просмотры 20K
Комментарии 18

Стоит ли до верится спел чек еру? Про стой пять ни чинный пост до бра

Разработка веб-сайтов *Совершенный код *Brainfuck *
image

     До вольно не редко приходиться на ходить враз личных текст ах не сколько о шибок. При чём большая части на писано во общем то грамот но, но нет-нет да и на рвётся глас на не верное при мнение слово форм. На пример из вечное не верное из пользование со ответствующих пост фиксов. По мимо э того в друг от делиться при ставка или при лепиться пред лог, как до ста точный при мер, и к роме того не редко до водиться не на ходить за пятых на за конных места х.

В той связист ала по степенно при ходит мыс ль что не плохо бы на ваять та кой пост в ко тором бы лоб макс и мал но воз можно е коли чес т во о шибко но что бы тестовый процесс ор да же бы и не за подозревал об том что что-то тут не так. Но что бы при том сам текст был на имение читаем им.

По чувствуй себя граммар-наци
Всего голосов 237: ↑169 и ↓68 +101
Просмотры 30K
Комментарии 66

Квайн на Brainfuck, тьюториал

Ненормальное программирование *Brainfuck *
На Хабре уже есть множество статей о квайнах и технологиях их написания. Любителям квайнов может стать скучно — есть шаблон, следуешь ему, получаешь квайн. Мультиязыковой квайн, даже с участием эзотерических языков тоже написать несложно и об этом тоже есть по меньшей мере три статьи. Вот тут то и приходят на помощь квайны целиком написанные на эзотерических языках, возвращая заскучавшему программисту интерес.

Попробую рассказать о процессе написания квайнов на Brainfuck.

Читать дальше →
Всего голосов 38: ↑31 и ↓7 +24
Просмотры 14K
Комментарии 9
1