Alterator is layered:
- implement system interaction,
- implement UI and configuration logic,
Frontends are implemented in Scheme. Backend/frontend interaction is performed through sockets by the specific Lisp-inspired protocol.
Backends may be written in any language, and there are existing libraries for POSIX shell and Perl for dealing with frontend communication protocol.