Представлен новый язык программирования под названием Birb, элементами которого являются только эмоджи разных птиц.
Согласно данным OpenNET, автором этого проекта является Марвин Бёрнер, автор функционального языка программирования Bruijn, в котором применяется лямбда-исчисление на основе индекса Брюйна, позволяющего обойтись при построении программы без имён переменных,
Исходный код проекта Birb написан на языке Haskell и распространяется под открытой лицензией MIT.
Язык Birb является полным по Тьюрингу и разработан по мотивам книги Рэймонда Смаллиана «Передразнить пересмешника и другие логические загадки, включая увлекательное путешествие в комбинаторную логику» (To Mock a Mockingbird), в которой комбинаторная логика поясняется с использованием типовых комбинаторов, которым присвоены названия птиц.
В языке Birb используется принцип комбинаторного программирования, в соответствии с которым любую вычислимую функцию можно представить в виде двух типовых комбинаторов. Таким образом, при написании кода программ можно обойтись лямбда-исчислением, в котором применяются только комбинаторы, ассоциированные с эмоджи с изображением птиц. Например, сова "🦉" определяет выражение "λab.b(ab)", а утка "🦆" - "λabc.c(ba)" и так далее.
Синтаксис программы на Birb сводится к шаблону "[birb]+: Birb". Числа задаются с использованием кодирования Чёрча, например, 0 можно представить как "🐥🐦", 1 как "🪽🐧", а операцию 1+2 как "🐦🐦🕊️🐧🕊️🐧🐦🐧🕊️🐧🕊️🪽🐧🦢🐧🦢🐧🐥🐦🦢🐧🐥🐦".
Все символы в листинге Birb, отличные от эмоджи птиц, обрабатываются как комментарии.
Пример программы на языке Bird
Источник новости: habr.com