Автоматизация программирования.

Программирование, Хакинг, Безопасность, Софт, Железо, а также всё связанное с компьютерами
BDK
Сообщения: 3059
Зарегистрирован: 17 май 2015, 23:27
Откуда: Беларусь
Благодарил (а): 131 раз
Поблагодарили: 321 раз

Автоматизация программирования.

Сообщение BDK » 17 мар 2019, 11:26

О том чтобы автоматически генерировать эффективный программный код я задумывался почти с самого начала своей программистской практики - еще года с 1995-го. Но тогда мне совершенно не было понятно как даже подступиться к этой задаче. На данный же момент имеется вполне четкая картина вопроса.

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

Таким образом низкоуровневое программирование является ни чем иным как просто поиском такой последовательности операций которые наиболее эффективно выполняют преобразования эквивалентные заданным в лаконичной высокоуровневой формулировке.
При этом сами заданные преобразования данных могут быть описаны на сколь угодно абстрактном языке и сколь угодно лаконично. Но попытка в лоб запрограммировать задачу напрямую из такой высокоуровневой формулировки - задача для человека нетривиальная. И это именно та работа на которую тратится более 90% времени многомиллионной братии программистов во всем мире и сотни миллиардов долларов ежегодно.

Таким образом задача автоматизации низкоуровневого программирования заключается всего лишь в поиске наиболее эффективного частного низкоуровневого кода выполняющего преобразования данных эквивалентные тем что выполняет высокоуровневое описание задачи. То есть по сути это просто задача по созданию высокоэффективного, интеллектуального компилятора, который переводит программу из очень лаконичного высокоуровневого языка в высокоэффективный низкоуровневый код.

Таким образом задача автоматизации программирования распадается на две основных :
1.Создание лаконичного языка высокого уровня абстракции.
2.Создание интеллектуального компилятора из этого языка в эффективный низкоуровневый код под заданную платформу.

И эта задача решается элементарно при помощи разрабатываемой мною системы ИИ. Она изначально продумана так чтобы реализовать и 1-й и 2-й пункт.

По принципу работы система схожа с гугловской шахматной программой AlphaZero которая демонстрирует запредельную по сравнению с человеком силу игры в шахматы. Со своей системой я ожидаю примерно схожего превосходства по сравнению с программистом человеком. То есть я ожидаю что система не только сможет заменить низкоуровневого программиста но и запредельно превзойдет его по качеству.

BDK
Сообщения: 3059
Зарегистрирован: 17 май 2015, 23:27
Откуда: Беларусь
Благодарил (а): 131 раз
Поблагодарили: 321 раз

Re: Автоматизация программирования.

Сообщение BDK » 26 мар 2019, 10:39

Всё даже более осязаемо чем кажется. Это буквально выглядит как правка и формование ткани событий собственными "руками". То есть это конечно же работа - это как пахать огород, как рубить дрова. Это не по мановению волшебной палочки всё происходит. Но это работа именно на внутренних психических уровнях - то есть буквально чтобы убрать внешнее препятствие - нужно потрудиться на внутреннем уровне чтобы прорубить или пропилить некий психо-ментальный блок на тонком уровне. Причем вся структура событий воспринимается буквально осязаемо - как довольно плотные ткани и породы. Причем похоже в большинстве случаев чтобы произвести изменения в ходе событий нужно не столько поправить внешние породы сколько ткани прилегающие к своей собственной психике, посколько внешние структуры уже давно сильно связаны с нашими собственными структурами и происходящие с нами события в основном порождаются нашими собственными структурами а не внешними. То есть работа заключается именно в приведении в порядок своих собственных структур, а уже изменение внешних событий происходит просто как естественное следствие. Это примерно как вынять занозу которая долгие годы порождала мучения, или вправить свою собственную сломанную кость, устранив иначе неизбежную инвалидность на всю жизнь и т.п. Так же как первобытный человек учился всем этим вещам на физическом уровне, а сейчас мы учимся подобному на психическом уровне - исцелять себя и структуру событий связанную с нами.

С работой весь этот процесс роднит то обстоятельство что все эти изменения в событиях происходят только если выполнять медитацию - без труда нет и рыбки из пруда. Если медитацию не делать то ничего подобного и не происходит. И если допустим сделать медитацию сегодня а завтра на неё забить - будет сделана часть работы а остальное останется не доделанным - соответственно и структура событий изменится лишь частично, но до тех пор пока работа не будет сделана полностью - например пока не будет "построен хлев для скотины" - это не наполнит жизнь новыми возможностями. Частично сделанная работа будет стоять повсюду вокруг в виде недоделок которые не позволяют ими пользоваться и человек будет продолжать жить по старому. Поэтому в медитации как и в любой работе очень важное условие - продолжать и продолжать, пока работа не будет сделана до конца.

Конечно может возникнуть закономерный вопрос "что и там тоже надо работать ?!! Какой тогда смысл менять одну бесконечную работу на другую?". Но смысл а том что работа на тонком уровне неизмеримо эффективней. То есть если и есть возможность когда нибудь завершить всю работу - то на тонком уровне шансы для этого неизмеримо выше, в отличие от действительно бесконечного сизифова труда на грубых уровнях.

Что касается разгрузки от низкоуровневой работы то это происходит уже на первых этапах. Это выглядит примерно так же как изменилась работа в промышленности с приходом автоматизации - инженеры так же работают 8-ми часовой рабочий день как раньше рабочие - но эти 8-ми часовые рабочие дни не идут ни в какое сравнение. И чем на более глубоком уровне работаешь тем сильней это отличается от привычного нам понятия работы - это не связано с мучительным физическим трудом. Это связано с вдохновением и работой на уровне креативной мысли. Это совсем другая работа. Это на самом деле работа от которой получаешь гораздо больше удовольствия. Но тем не менее - это всё таки работа, и её надо намеренно выполнять. Иначе произойдет падение. Это как поддержание полета - требует постоянных определенных усилий, но это не сравнимого с теми постоянными усилиями в которых живут те несчастные копошащиеся там далеко внизу.

В будущем, по мере освоения медитации, люди практически полностью уйдут от известных нам сегодня видов работы. Вся работа переместится исключительно на тонкие уровни, а на физическом уровне люди будут всё время выглядеть как "бездельники" занятые только интересным времяпрепровождением. Но позволить себе это они смогут только благодаря постоянной работе на тонком уровне. Постоянной медитации.