Глупо спорить о определениях. Предположим, что HOF есть в паскале (согласно какому-то там определению, без изменения собственно языка) - что от этого изменилось? Внезапно на паскале стало удобно писать и использовать стандартные библиотеки аля haskell?
Один из методов выхода из терминологического тупика - табуирование терминов. Табуируем термин HOF. Заменяем его на его смысл/свойства, и смотрим что получится.
Итак, эта штука, которую отныне нельзя называть, привносит в язык следующее:
enable partial application or currying, a technique in which a function is applied to its arguments one at a time, with each application returning a new function that accepts the next argument. This allows one to succinctly express, for example, the successor function as the addition operator partially applied to the natural number one.
Вопрос - в обероне-паскале это есть? Потому как если бы в них была бы эта штука, которую нельзя называть, в них было бы и частичное применение и карринг.
Ну и еще раз повторюсь - когда говорят есть вот эта штука в языке, или нет - подразумевают возможность безболезненно писать код на этом языке во вполне конкретном стиле. До С++11 в плюсах было весьма болезненно писать в функциональном стиле, а поскольку весть stl по сути своей является функциональщиной чистой воды, и является одновременно главной и стандартной либой плюсов, пользоваться плюсами было весьма болезненно. Сейчас же стало писать НАМНОГО приятней и проще. И код понятней. Именно потому, что теперь в плюсах теперь есть то, чего нельзя называть.