1 ;;; -*- Mode: Emacs-Lisp -*-
4 ;;; ILISP Lisp symbol utils.
6 ;;; This file is part of ILISP.
7 ;;; Please refer to the file COPYING for copyrights and licensing
9 ;;; Please refer to the file ACKNOWLEGDEMENTS for an (incomplete) list
10 ;;; of present and past contributors.
12 ;;; $Id: ilisp-sym.el,v 1.3 2001-07-02 09:40:49 youngs Exp $
16 ;;; 19990804 Marco Antoniotti
17 ;;; This should become a DEFSTRUCT
19 ;;; (defstruct (lisp-symbol (:constructor lisp-symbol))
25 (defun lisp-symbol (package delimiter name)
26 "Create a LISP symbol."
27 (list package (when package (or delimiter "::")) name))
29 (defun lisp-symbol-name (symbol)
30 "Return the name of SYMBOL."
31 (car (cdr (cdr symbol))))
33 (defun lisp-symbol-package (symbol)
34 "Return the package of SYMBOL."
37 (defun lisp-symbol-delimiter (symbol)
38 "Return the qualifier of SYMBOL."
42 (defun lisp-symbol= (symbol1 symbol2)
43 "Return T is SYMBOL1 is equal to SYMBOL2."
44 (and (string= (lisp-symbol-name symbol1) (lisp-symbol-name symbol2))
45 (string= (lisp-symbol-package symbol1) (lisp-symbol-package symbol2))
46 (string= (lisp-symbol-delimiter symbol1)
47 (lisp-symbol-delimiter symbol2))))
49 ;;; end of file -- ilisp-sym.el --