В Зоннон возможно создание динамических библиотек DLL.
Согласно документации, при вызове компилятора достаточно не указывать точку входа, и это прямо укажет компилятору, что требуется не исполняемый файл, а динамическая библиотека.
Пример:
zc /out:MyDLL Main.znn
Результатом выполнение будет файл MyDLL.dll (MyDLL.so в Linux), если в ходе компиляции не было ошибок. Использование DLL осуществляется через привязку настройки Reference в IDE, либо через опцию /ref:MyDLL в командной строке.
По всем возможностям компилятора полезно посмотреть документацию в формате PDF (идёт вместе с установщиком Зоннон).
Есть статья, в которой косвенно рассматривается этот вопрос.