Найти в Дзене

Каким должен быть язык программирования для начинающих?

Предположим, у нас есть возможность создать с нуля новый язык программирования. В основном, он будет применятся для обучения основам программирования. Каким он должен быть? Давайте пофантазируем... Зачем нам ещё один Си-подобный язык? Си бесподобен. Было бы странно, если бы американцы, при создании языка программирования, брали ключевые слова из французского или санскрита. В нашем случае, русский язык – единственный вариант. Новичков лучше не пугать сокращениями типа brbs или sbis. А если в программе нужен переход по условию, то почему бы так и не писать Если … Иначе ... ? А длина строки по логике должна вычисляться выражением Длина. Тот же Си создавался еще в эпоху терминалов. Т.е. у программистов не было персональных компьютеров. Только общественные (как бани). Поэтому программа, зачастую, писалась заранее, на бумаге, и затем, во время сеанса работы нужно было быстренько её набрать и отладить. Сейчас набор текста стал настолько обыденным делом, что лучше писать выражения без сокращ
Оглавление

Предположим, у нас есть возможность создать с нуля новый язык программирования. В основном, он будет применятся для обучения основам программирования. Каким он должен быть? Давайте пофантазируем...

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

Он должен быть другим

Зачем нам ещё один Си-подобный язык? Си бесподобен.

Он должен быть основан на родном языке

Было бы странно, если бы американцы, при создании языка программирования, брали ключевые слова из французского или санскрита. В нашем случае, русский язык – единственный вариант.

Он должен быть простым

Новичков лучше не пугать сокращениями типа brbs или sbis. А если в программе нужен переход по условию, то почему бы так и не писать Если … Иначе ... ? А длина строки по логике должна вычисляться выражением Длина. Тот же Си создавался еще в эпоху терминалов. Т.е. у программистов не было персональных компьютеров. Только общественные (как бани). Поэтому программа, зачастую, писалась заранее, на бумаге, и затем, во время сеанса работы нужно было быстренько её набрать и отладить. Сейчас набор текста стал настолько обыденным делом, что лучше писать выражения без сокращений, чем постоянно сверяться со справкой - как там это сокращается.

Он не должен быть объектно-ориентированным

Новичку может быть не очень понятно зачем в одной программе куча подпрограмм и все с одинаковыми названиями. Чтобы нарисовать человечка на экране, ООП не нужно.

Он должен быть достаточно мощным

чтобы можно было реализовать любую практическую задачу. Вплоть до создания отраслевой системы управления финансами. Но без премудростей. Прежде чем переходить к Data Science и Machine Learning, неплохо было бы изучить базовые алгоритмы сортировки.

Он должен быть проверен годами практического использования

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

Среда разработки должна весить меньше 1 Мб.

Это не опечатка. Меньше одного мегабайта. Не у всех есть 4G интернет. Имеется в виду полноценная среда разработки с редактором форм, и с текстовым редактором с подсветкой синтаксиса. И справка по всем элементам программы.

Он должен быть интерпретатором

При создании простеньких программ их интересно запускать после каждого написанного предложения. А если, при этом, каждый раз надо будет компилировать сборку, то на это будет уходить слишком много времени. Интерпретатор запускается мгновенно. А ещё, можно программно создавать другие программы. Ведь это просто текст. Быстродействие больше зависит от реализации самого интерпретатора. А если он представляет собой оптимизированную и компактную программу, написанную на С++, то выполнятся будет именно она. Очень быстро.

Сам интерпретатор должен быть бесплатным

. А программы можно писать в Блокноте. Так даже интересней: один на один с компьютером без лишних посредников.

Язык не должен зависеть от других библиотек

Скачал интерпретатор и вперед – пиши программки.

Язык должен быть бесплатным, но не бесхозным

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

Всё! Условия определены. Теперь можно приступать к созданию такого языка.

Раз.. Два…. Готово! Так как программы будут создаваться в режиме творчества и игры, то назовем это ПРОграммный краФТ, или просто ПРОФТ.

«Раз-два» это не фигура речи, а количество десятилетий, которое ушло на создание и совершенствование такого языка программирования.

Приведенные выше условия – описание языка программирования ПРОФТ и его реализации – ПРОФТ-5. Все справочные материалы и программы находятся на официальном сайте proft5.ru. Цифра 5 в названии программы - это номер попытки (версии), с которой получилась более-менее годная реализация. А также номер года нашего тысячелетия, когда был создан ПРОФТ-5.

Данная статья открывает серию материалов о ПРОФТ-5. Прочитав их, вы без труда научитесь создавать несложные программки, познакомитесь с миром программирования, роботов и красоты математики.