Перфолента.NET — это на удивление профессионально выглядящий язык программирования на платформе .NET, который поддерживает объектно-ориентированное и функциональное программирование, и на котором написан даже написан другой язык, функциональный язык программирования — Перфо.NET (интерпретатор).
Мой личный опыт
Когда я начал немного программировать на Перфоленте/Перфо, моё понимание языков программирования сильно изменилось. Я почувствовал себя как англоязычный программист, пишущий код на родном языке.
Это был очень интересный опыт. Я стал больше внимания уделять смыслу слов и терминов, стал строже относиться к названиям.
Раньше сложные понятия функционального программирования давались мне тяжело, но теперь всё стало проще. Лямбда-функции, замыкания, каррирование и т.д. — всё это я теперь понимаю по-другому. Особенно когда объясняю ребёнку.
Например, лямбда-функция — это просто формула из задачника по математике. Ребёнок понял это сразу! И мы пошли дальше, не останавливаясь.
По-моему, главный эффект даёт отказ от псевдонимов и алиасов. Я долго отучался давать названия, из которых сразу понятно, что это за сущность, а не «имена, которые означают...».
Второй эффект — это «сокращение контекста». Контекстное окно человека ограничено 3–5 вещами, которые он в состоянии держать в голове и обдумывать. «Псевдонимы/алиасы» съедают это контекстное окно. Поэтому избавление от прокладок в виде «print — это печать» и замена их на простые «вывести_в_консоль», «вывести_в_файл» и т.п. сильно облегчают понимание логики кода.
Некоторые говорят, что проблема окончаний в русском языке в коде — это проблема. Но на практике это не так важно, и по факту на это не обращаешь внимание.
Чем 100 раз прочитать лучше один раз увидеть, как это выглядит? Вот пара скриншотов:


Преимущества изучения программирования с помощью Перфоленты.NET
Изучение основ программирования с помощью языка Перфолента.NET даёт ряд важных преимуществ:
Оптимальная нагрузка при обучении. Для качественного усвоения материала 80% изучаемого должно опираться на уже имеющиеся знания, а 20% — быть новым. Это позволяет естественно связывать новую информацию с уже известной.
Русский язык ключевых слов. Нет необходимости учить английский: можно сосредоточиться на основных понятиях и концепциях.
Совместимость с синтаксисом 1С. Это упрощает переход для тех, кто уже знаком с 1С.
Простая и легковесная среда разработки (IDE). Установка и старт занимают минимум времени: поставил, открыл пример, скомпилировал. Это обеспечивает быстрый старт в изучении программирования.
Доступность для большинства пользователей. Язык изначально разработан для Windows 7/10/11, что делает его доступным для 99% пользователей.
Качество реализации языка Перфолента.NET
Язык профессионально реализован на платформе .NET. Он позволяет изучить ООП/Функциональное программирование, в том числе: параллельное программирование, лямбда-функции, замыкание, каррирование и т.п.
Развивается уже 12 лет: имеет устоявшийся синтаксис, полноценную документацию, официальный сайт и активное профессиональное сообщество.
Существует интерпретатор Перфо (2000 строк на Перфолента.NET) — лёгкая реализация языка Scheme/Lisp, предназначенная для изучения функционального программирования.
Отработана технология написания консольных приложений, пригодных для использования в бизнесе.
Имеется более сотни примеров проектов:
- заготовка «Тотал Командер» для консольного режима;
- игры (Тетрис, Змейка);
- простые веб-серверы;
- примеры для блокчейна и др.
Недостатки и ограничения Перфолента.NET
Оконные приложения в бета-версии. Разработка оконных приложений с помощью визуального редактора (как в Visual C++/Visual Basic) пока находится в бета-версии. Однако для начального изучения программирования это не критично: важнее быстро освоить базовые концепции и парадигмы.
«Зачем учить Перфоленту, если есть Си/Python/Паскаль?» Аргумент «лучше сразу учить популярные языки» не всегда оправдан. Человеческий мозг ограничен в объёме одновременно удерживаемой информации (обычно не более 3–5 элементов). Перфолента.NET предлагает необходимый и достаточный минимум для изучения основ ООП и функционального программирования — без погружения в второстепенные детали (установка и настройка IDE, языка, библиотек и т.п.). Освоив базовые концепции на Перфоленте (без англоязычных терминов), обучаемый легче перейдёт к Си++, Python, Haskell и сложным IDE.
«Перфолента — домашняя поделка?» Перфолента.NET основана на промышленном стандарте — платформе .NET, как и сотни других языков. Её архитектура и концепции соответствуют .NET со всеми его преимуществами и недостатками.
Нет версии для Linux. Однако возможна реализация Перфо на Linux хотя бы для переноса скриптов.
Как его можно использовать?
Ну, во-первых, изучить что-то принципиально новое.
Для профессиональных программистов: освоение Перфоленты — это как целый день управлять мышкой левой рукой, совершенно другой взгляд на обычные алгоритмы и код.
Для непрограммистов: возможность быстро понять основы программирования и написания простых алгоритмов без установки тяжёлых IDE и изучения объёмной документации, понять, вообще надо это вам или нет.
Позаниматься с ребёнком информатикой, вместо обычного морально устаревшего языка Кумир.
Прокачать собственные навыки.
Полезные ссылки:
Документация по языку Перфолента.NET
Документация по языку Перфо.NET
https://t.me/perfolenta — достаточно активное сообщество в Телеграмм.
P.S. Не надо ёрничать и в сотый раз писать тут выдуманные смешные примеры кода на русском языке на выдуманных языках программирования.