>Apex does not use a project mechanism.  If the compiler sees a
>with clause, it knows what the file name must be, and then searches
>the imported subsystems/views for it.  There is no need to register
>files, or have project mechanims etc.  So long as the source code
>files are named correctly and are located in a subsystem/view the
>compiler will find them.  This is why Apex can perform it's automated

So what is the difference between "registering files" and "importing
subsystems/views" from an Ada source code perspective? Very little it would
seems. I haven't used Apex, but how does it handle multi-compilation unit files?
Does it have the same restrictions as GNAT (i.e. one compilation unit per file)?

If this is true, then I would guess that the Apex mechanism is not that
different to the ada-mode mechanisms for Projects using Emacs and GNAT.