harbour-sextant/lisp/local-projects/sextant/sextant.lisp
Renaud Casenave-Péré 75178601e6 Make a boilerplate sextant package
Start a slynk server or run tests
2025-08-26 23:14:41 +02:00

25 lines
649 B
Common Lisp

(uiop:define-package :sextant
(:use :cl)
(:export #:start-slynk
#:stop-slynk
#:slynkp))
(in-package :sextant)
(defun sym (symbol package)
(intern (symbol-name symbol) package))
(let (slynkp)
(defun start-slynk ()
(unless (find-package :slynk)
(require :ecl-quicklisp)
(funcall (sym 'quickload :ql) :slynk))
(funcall (sym 'create-server :slynk)
:interface "0.0.0.0" :port 4005 :dont-close t :style :spawn)
(setf slynkp t))
(defun stop-slynk ()
(when (find-package :slynk)
(funcall (sym 'stop-server :slynk) 4005)
(setf slynkp nil)))
(defun slynkp () slynkp))