
G-code программисту и Brainfuck не страшен
caveboy 34 минуты назад G-code программисту и Brainfuck не страшен Простой 35 мин 1.2K CAD/CAM * Промышленное программирование * Программирование * Занимательные задачки Робототехника Туториал Brainfuck хотя бы честно...
Anthropic — What company has the best second artificial intelligence model at the end of June?
Вот важная новость с фронта ИИ: caveboy 34 минуты назад G-code программисту и Brainfuck не страшен Простой 35 мин 1. 2K CAD/CAM * Промышленное программирование * Программирование * Занимательные задачки Робототехника Туториал Brainfuck хотя бы честно предупреждаетУ Brainfuck есть одно большое достоинство: он сразу выглядит как язык, с которым нормальному человеку лучше не даже не связываться. Программа на нём похожа на результат работы кота, уснувшего на клавиатуре:++++++++>+.
Скобки, плюсы, минусы, стрелочки, точка, запятая — и всё. Восемь команд, минимум синтаксиса, максимум ощущения, что кто-то решил доказать теорему о вычислимости, но по дороге серьёзно разочаровался в человечестве. Но Brainfuck хотя бы честен: он не притворяется удобным промышленным инструментом, его странность — часть замысла.
Технические детали
Это эксперимент, шутка, демонстрация того, что вычисления можно уместить в почти неприлично маленький набор команд, а потом ещё предложить живым людям на это смотреть. Гораздо интереснее языки, которые не собирались быть странными, а просто выросли такими рядом с настоящим железом. Например, G-code, язык управляющих программ для станков.
Сначала от него требовалось немного: сказать станку, куда ехать, когда включить шпиндель, с какой подачей двигаться, где опустить инструмент и где поднять его обратно. Условно это выглядит так:G0 X100 Y50 M3 G1 Z-3 F500 G1 X150 Y50Если переводить с машинного на человеческий, получается довольно прямой разговор с железом: быстро переехать в начальную точку, включить шпиндель, рабочим ходом опуститься на глубину и пройти рез с заданной подачей. Это не технологическая инструкция под конкретный станок и не готовый фрагмент для копирования, а общий шаблон языка: короткая команда, координата, режим, подача, минимум слов и почти никакой галатности.
И здесь важно помнить возраст языка. G-code не пришёл из мира, где у разработчика есть гигабайты памяти, автодополнение, подсветка синтаксиса и желание красиво назвать переменную targetPosition. Его корни уходят в эпоху перфолент, слабого железа и контроллеров, которым было не до синтаксического сахара.
Отраслевые последствия
Сахар вообще дорогая вещь, особенно если под ним понимать не украшательство, а ЧПС — человекопонятный синтаксис. Это не общепринятый термин, не стандарт и не пункт из документации, а наша рабочая метка для имён переменных, читаемых условий, нормальных циклов, структур данных и прочих вещей, благодаря которым человек видит в программе не только команды для машины, но и собственное намерение. Если совсем по-простому, ЧПС — это метаязык здорового человека: тот самый слой, который позволяет понять код до того, как пришлось долго и задумчиво «вкуривать» синтаксис, пытаясь выяснить, почему M98 P...
L сегодня изображает обычный if. Для современного компьютера такой слой почти бесплатен; для старого промышленного контроллера это были лишняя память, лишняя сложность и лишняя причина, по которой система могла стать менее предсказуемой, а еще нужно работать в "реалтайме", т. с минимальными задержками.
Событие, по словам экспертов, усилит конкуренцию в сфере ИИ.



