> Значит так. Я не знаю, как там было в OS/2 и BeOS,
> но в UNIX-е
> стандартных способов взаимодействия с системой у нас два (основных):
> 1) линковка с библиотекой и вызов С-ных функций
> 2) вызов внешнего исполняемого файла и взаимодейтсиве с ним через пайп Библиотек в UNIX, как минимум, два типа. Один из них линкуется, другой нет. Линковать с интерпретируемым кодом вряд ли возможно :-) Но использовать динамически подключаемые библиотеки запросто. Можно и вызвать исполняемый файл (это, наверное, вообще везде можно) хоть через пайп, хоть обычным вызовом с параметрами командной строки.
> Вопрос: где и кем реализованы функции FtpPut, FtpSetUser, FtpLoadFuncs и т.п
> из твоего примера?
Реализовано всё компанией IBM как часть всех своих осей (в данном случае, OS/2) - специально дал ссылку на полное описание. Это вообще свойственно для решений IBM - и под OS/2 на писюке, и на OS/390 на мэйнфрейме REXX работает одинаково по сути.
На случай, если какого-то функционала нет в самой системе, реализовано огромное количество дополнительных библиотек специально для REXX - большие каталоги есть в Сети. Есть для него и графические библиотеки, с помощью которых несколькими строчками кода можно создавать окна с нужным функционалом.
> Каким образом "система" дает знать о внутренностях текстового процессора?
> И соответственно каким образом rexx о них может узнать?
> На каком языке rexx и система говорят друг с другом?
> И о какой систем идет речь? OS/2, Windows?
Уже сказал, в моём примере - IBM OS/2 Warp.
Стандартным для системы. И в виндовозе, и в OS/2 Warp, кроме всего прочего, присутствуют DLL-ки, которые содержат какое-то количество доступных из вне функций. А вызывать эти функции можно как их сишных программ, так и из программ на REXX.
Текстовый процессор тоже даёт большую часть своих функций наружу. Это может быть как виде функций из DDL, так и в виде COM, DCOM, OLE2 или других вариантах.
В том-то как раз и суть REXX, его философия, если хотите - он как универсальный инструмент чуть ли не для любых задач. Как клей, который всегда под рукой. Он стандартный для всех осей IBM и используется там настолько широко, что очень многие программы, включая сторонние, пишут на нём инсталяторы. Даже многие конфигураторы базовой системы написаны на REXX. Реализацию REXX для винды не пробовал, но, зная политику IBM, уверен, что работает он на винде в родной среде от IBM точно так же, как и в других осях.