While a script can always use RexxArpLib's PostMsg function, this can be ugly. Provide a way for a script to communicate with the user that is consistent with the application.
"Consistent with the application" may mean handling error messages differently from other messages. Provide that if needed.
There should be some way of aborting long running scripts. MFF+ uses a requester with a single gadget - "Abort". Mg uses the "quit" keyboard command, which is consistent with the application.
Depending on the application, you may need various things from the user - files, text strings, or numbers. Some method of getting such should definitely be available.
Simple yes/no questions are very common. You should consider adding a seperate method for asking such questions.
On to the application, or up to nouns.
Mike W. Meyer