Я провел небольшое исследование по этому вопросу, и я получаю пробелы. Похоже, что в Common Lisp есть способы реализации обработки Unix-сигналов, зависящие от реализации, но есть ли пакет, который дает способ кросс-реализации для обработки сигналов?
Я бы в основном хотел послушать SIGINT и сделать аккуратное завершение работы моего приложения. Я использую Clozure CL 1.7 в Linux ... как уже упоминалось, это было бы замечательно для пакета для этого, но если мне придется прибегнуть к специфичному для реализации коду, это нормально.
Я также не совсем женат на использовании SIGINT (хотя это идеально). Я могу использовать другой сигнал, если это необходимо.
Если это будет грязно, есть ли у кого-нибудь еще предложения по изящному закрытию приложения lisp из-за пределов приложения? У меня была одна идея - создать файл, за которым следит приложение, и, если он обнаружит файл, он закроется ... хотя и немного хакерский.
Спасибо!