По просьбе, выраженной в комментариях, попытался разобраться в том, как совместить Mono с Object Pascal. Здесь оказалось всё не так просто, хотя в описании Mono сказано, что она может работать с Object Pascal. Дело в том, что по умолчанию в Mono есть только компилятор для C#. Для остальных языков надо устанавливать компиляторы, которые совместимы с Mono, то есть которые компилируют исходные коды не в исполняемые файлы, а в байт-коды. Несмотря на то, что в этом примере мы получили ЕХЕ-файл, это не обычный ЕХЕ-файл Windows. Это файл, который содержит байт-код для выполнения в среде Mono. За счёт этого и достигается кроссплатформенность - если, например, на компьютере с Linux установлена Mono, то байт-код, сгенерированный в Mono на Windows, будет работать в среде Mono и на Linux, и на любой другой операционной системе. В этом отличие Mono от кроссплатформенных компиляторов, таких как FreePascal - для каждой операционной системы (ОС) там свой компилятор, и для каждой ОС вам придётся компил