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