Как стать автором
Обновить

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

Время на прочтение 2 мин
Количество просмотров 12K
Каждый программист хотя бы раз в своей жизни мечтал об идеальном языке программирования. Конечно, у каждого программиста свои представления об идеальности. Вот и у меня были свои мечты, пока я наконец не решился реализовать самостоятельно язык программирования своей мечты. Что из этого вышло судить вам.

Начал я с имен переменных и функций. Реализовал многословные идентификаторы с поддержкой всех доступных человеческих языков.

Число 1 = 1;
Число номер 2 = 2;
Сумма = Число 1 + Число номер 2;
print Сумма; print; 
function Открытие двери в поезде() {
  print "Дверь открыта"; print;
}
Открытие двери в поезде();

Неплохо, да? Но явно не дотягивает до мечты. Поэтому пришлось добавить синонимы.

synonym "равно", "=";
synonym "равна", "=";
synonym "плюс", "+";
synonym "Вывод", "print";
synonym "Функция", "function";

Число 1 равно 1;
Число номер 2 равно 2;
Сумма равна Число 1 плюс Число номер 2;
Вывод Сумма; Вывод; 
Функция Открытие двери в поезде() {
  Вывод "Дверь открыта"; Вывод;
}
Открытие двери в поезде();

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

Эта простенькая программа выглядит просто изумительно. Не правда ли?

// 
// Нахождение наибольшего общего делителя двух чисел
//
Первое число = 57;
Второе число = 1332;
while (Первое число <> 0 and Второе число <> 0)
{
  if (Первое число > Второе число)
    Первое число = Первое число % Второе число;
  else
    Второе число = Второе число % Первое число;
}
print(Первое число + Второе число);

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

function озеро() {}
озеро = "глубокое";

Описания функций можно размещать где угодно. Какое из них будет активно решается во время выполнения программы.

бухгалтер = "глупый";
if(бухгалтер = "глупый") {
  function summa() {
    return 10;
  }
} else {
  function summa() {
    return 20;
  }
}
print summa(); print;

Между словами в именах может стоять различное количество пробелов, символов табуляции или перевода строки.

Куда
будем 
перемещать
этот   стол = "на свалку";
print Куда будем перемещать этот стол; print;

Язык программирования имеет много самых различных встроенных функций. По крайней мере он может быть неплохой заменой бейсику. В настоящий момент существует только онлайн версия языка. Язык написан на PHP.

Все подробности вы можете найти на сайте Язык программирования.
Теги:
Хабы:
-56
Комментарии 79
Комментарии Комментарии 79

Публикации

Истории

Работа

PHP программист
175 вакансий

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн
PG Bootcamp 2024
Дата 16 апреля
Время 09:30 – 21:00
Место
Минск Онлайн
EvaConf 2024
Дата 16 апреля
Время 11:00 – 16:00
Место
Москва Онлайн