There is more than one way to write an OLE/COM component with Functional Developer libraries. As we have seen, there are both high-level frameworks for developing particular kinds of components, and low-level FFI interfaces to the major Microsoft OLE/COM API libraries. Which Dylan library should you use to get the job done?
Most OLE/COM functionality is available through the low-level FFIs: OLE, COM, OLE-Dialogs, OLE-Control, and parts of OLE-Automation. You could use these libraries alone and achieve your goals, but it would be painful and unnecessary given that Functional Developer also offers some higher-level abstractions. Obviously it is much better to start with the higher-level libraries, and delve into the lower levels only if you have certain requirements they do not satisfy--this is particularly true if you are not experienced in implementing OLE/COM-based software using the C-based Microsoft APIs.
The following sections explain which OLE/COM libraries are suitable for particular tasks.