;;;; cl-scopes/core - here comes the real action (defpackage :scopes/core (:use :common-lisp) (:local-nicknames (:config :scopes/config)) (:export #:config #:service-config #:message #:context #:name #:send)) (in-package :scopes/core) (defclass config (config:root) (services)) (defclass service-config (config:base) (start)) (defclass message () ((domain) (action) (class) (item) (sender) (timestamp) (data))) (defclass context () ((name :reader name :initarg :name))) (defgeneric send (rcvr msg) (:method ((rcvr context) msg) rcvr msg)) (defvar *context* nil) (defun printer (name) (make-instance 'context :name name))