Без заголовка
Я бы вам рекомендовал рассуждать не только по-программистски, но и соотноситься с терминологией и реалиями жизни. Но даже и в программистком рассуждении любая программа -- это структура данных, если мы говорим об архитектуре фон Неймана. В этом-то и фишка, что программы и пишутся (как данные), и исполняются (как программы), и психопрактики тут довольно разные. А насчет "объяснения функционально" -- объясните это пятилетним и шестилетним детям. Когда поймут, возвращайтесь -- и обсудим ваш позитивный опыт. Можете не использовать при объяснениях страшные слова, но детей возьмите сразу несколько (чтобы не считать, что для одного дитенка получилось случайно) -- главное, чтобы возраст был подходящий.