На заглавную страницу проекта D
К простоте языков программирования
§ 1. Введение
Почему же так трудно оказыается некоторым написать свой язык программирования таким, каким они его хотят? Они верятно забыли о простоте, о том что простое на входе должно быть простым на выходе, при всём интеллекте компиляторов им не следует забывать, что они всего лишь инструменты.
§ 2. Подробнее
Безусловно, что каждый язык программирования стремится к простоте. Однако характер разработчика непременно отражается в созданном им языке как в зеркале. Поэтому и пути получения простоты разные.
- Простота ошибочная — когда стремились к простоте, однако получили её не там (впример, хотели простоту при написании операционных систем, а получили только для хелловорда; также можно сказать сложнее: стремились к простоте написания легких приложений для домашних страниц, однако в довесок получили простоту sql-уколов, поэтому первая простота сошла на нет при избавлении от второй).
- Простота неверная (псевдопростота) — когда в результате получили простоту только на первый взгляд. Например исходный код программы легок и вполне безобиден, однако бинарный код получить крайне затруднительно, а если и можно, то его размер будет упакован в архив .zip и равен никак не меньше 3Мб. Таким образом простота здесь только видимость. В реале же (в ядре процессора) всё далеко не просто.
- Простота дифференцированная — простота тут есть, однако для ее имплементации требуется некоторое количество стороннего софта и функций. Например интерпретатор есть и работает, однако для полноценной компиляции (создание носимого кода) нужно какое-то gcc.
- Простота коммерческая — простота в каждом нужном аспекте выясняется в результате платных телефонограмм с группой поддержки. Требуется ССР (Специальная Среда Разработки) для достижения оптимального продукта.
- Простота абсолютная (дзен-простота) — Конец вектора простоты. Такие языки программирования содержат всего одну комманду nop (в переводе с англ. хлопок одной ладонью). Эта простота языков программирования для компьютеров неодстижима, потому как реализовать её можно, а реализоавывать с помощью неё можно только в определенном состоянии (нирване).
- Простота неактуальная — особый вид простоты. Она безусловно есть, однако входит с текущим окуржением в такой диссонанс, что вызывает побочные эффекты (стресс и депрессию).
- Простота истинная — простота просто есть, без всяких оговорок.
Любая сложность (как объект с бесконечным количеством информации (см. Шеннон)) может быть представлена в виде белого шума. Поэтому предлагаю проверять языки программирования на слух. Загружайте в ваш любимй звуковой редактор бинарный файл (не исходник, чтобы избежать обманного эффекта псевдопростоты) и нажимайте play.
Если результат похож на белый шум (шипенье), то языку программирования до простоты предстоит проделать ещё долгий путь.
Позднейшее дополнение: в последнем выпуске модификации языка Д — LS-Д возможность компиляции в звуковой файл уже встроена в ИДЕ (подробнее см. ls-g § A).
§ 3. Вывод
Надеюсь, что этот небольшой трактат, посопсобствует пониманию вами сути языков программирования. Поняв, вы поймете также, что пункт 7 ещё не достигнут, поэтому нам с вами предстоит писать ещё очень много языковв программирования от стрессов и депрессий.