<commit_before>(cl:in-package #:common-lisp-user)

(defpackage #:sicl-common-lisp
  (:nicknames #:scl)
  (:export . #.(let ((symbols '()))
		 (do-external-symbols (symbol '#:common-lisp)
		   (push (symbol-name symbol) symbols))
		 symbols))
  (:shadowing-import-from
   #:common-lisp
   ;; Lambda list keywords.  The have no definitions associated with
   ;; them, so it doesn't matter what home package they have.
   #:&optional #:&rest #:&body #:&key #:&allow-other-keys
   #:&aux #:&whole #:&environment
   ;; Symbols that have to do with declarations and that have
   ;; no other meaning, or at least no meaning that we are currently
   ;; interested in.
   #:declare #:inline #:notinline #:ignore #:ignorable #:type #:ftype
   #:optimize #:debug #:speed #:compilation-speed #:space #:safety))

(defpackage #:sicl-clos
  (:use #:sicl-additional-conditions
	#:sicl-code-utilities
	#:sicl-common-lisp)
  (:export
   ;; MOP classes
   #:class #:standard-class #:built-in-class #:structure-class
   #:standard-object #:function
   #:generic-function #:standard-generic-function
   #:method #:standard-method
   #:method-combination
   #:slot-definition
   #:direct-slot-definition
   #:effective-slot-definition
   #:standard--slot-definition
   #:standard-direct-slot-definition
   #:standard-effective-slot-definition
   ;; Functions related to slot definitions.
   #:slot-definition-name
   #:slot-definition-allocation
   #:slot-definition-type
   #:slot-definition-initargs
   #:slot-definition-initform
   #:slot-definition-initfunction
   #:slot-definition-readers
   #:slot-definition-writers
   #:slot-definition-location
   #:make-direct-slot-definition
   #:make-effective-slot-definition
   #:compute-effective-slot-definition
   ;;
   #:defclass #:find-class
   #:class-name #:class-of
   #:allocate-instance #:make-instance
   #:initialize-instance #:shared-initialize #:reinitialize-instance
   #:make-instances-obsolete
   #:update-instance-for-different-class
   #:update-instance-for-redefined-class
   #:method #:standard-method
   #:make-method #:add-method #:call-method #:find-method
   #:method-qualifiers #:compute-applicable-methods #:next-method-p
   #:invalid-method-error
   #:no-applicable-method #:no-next-method #:remove-method #:defmethod
   #:method-combination #:define-method-combination #:method-combination-error
   #:make-instance
   ;; Generic functions.
   #:generic-function #:standard-generic-function
   #:defgeneric #:ensure-generic-function
   #:slot-value #:slot-missing #:slot-boundp #:slot-makunbound
   #:print-object #:describe-object #:documentation
   ;; SICL-specific macro
   #:define-built-in-class))

(defpackage #:sicl-conditionals
  (:use #:sicl-common-lisp))

(defpackage #:sicl-cons-high
  (:use #:sicl-common-lisp))<commit_msg>Begin work to make the SICL-CLOS package look more like the final version.<commit_after>(cl:in-package #:common-lisp-user)

;;; FIXME: The list of exported symbols is not complete.

(defpackage #:sicl-clos
  (:use #:common-lisp)
  (:export
   ;; MOP classes
   #:class #:standard-class #:built-in-class #:structure-class
   #:standard-object #:function
   #:generic-function #:standard-generic-function
   #:method #:standard-method
   #:method-combination
   #:slot-definition
   #:direct-slot-definition
   #:effective-slot-definition
   #:standard--slot-definition
   #:standard-direct-slot-definition
   #:standard-effective-slot-definition
   ;; Accessors for class metaobjects. 
   #:class-name
   #:class-direct-superclasses
   #:class-direct-slots
   #:class-direct-default-initargs
   #:class-precedence-list
   #:class-slots
   #:class-default-initargs
   #:class-finalized-p
   #:class-prototype
   ;; Accessors for generic function metaobjects.
   #:generic-function-name
   #:generic-function-argument-precedence-order
   #:generic-function-lambda-list
   #:generic-function-declarations
   #:generic-function-method-class
   #:generic-function-method-combination
   #:generic-function-methods
   ;; Accessors for slot definition metaobjects.
   #:slot-definition-name
   #:slot-definition-allocation
   #:slot-definition-type
   #:slot-definition-initargs
   #:slot-definition-initform
   #:slot-definition-initfunction
   #:slot-definition-readers
   #:slot-definition-writers
   #:slot-definition-location
   ;; Macros
   #:defclass #:defgeneric #:defmethod
   ;; Generic functions.
   #:compute-effective-slot-definition
   #:find-class
   #:class-of
   #:allocate-instance
   #:make-instance
   #:initialize-instance
   #:reinitialize-instance
   #:shared-initialize
   #:make-instances-obsolete
   #:update-instance-for-different-class
   #:update-instance-for-redefined-class
   #:make-method #:add-method #:call-method #:find-method
   #:method-qualifiers #:compute-applicable-methods #:next-method-p
   #:invalid-method-error
   #:no-applicable-method #:no-next-method #:remove-method #:defmethod
   #:method-combination #:define-method-combination #:method-combination-error
   #:make-instance
   #:ensure-generic-function
   #:slot-value #:slot-missing #:slot-boundp #:slot-makunbound
   #:print-object #:describe-object #:documentation
   ;; SICL-specific classes
   #:real-class #:regular-class
   ;; SICL-specific functions
   #:ensure-method
   ;; SICL-specific macro
   #:define-built-in-class))
{'fraction_non_alphanumeric': 0.14982119329945418, 'fraction_numerical': 0.0, 'mean_word_length': 4.080305927342256, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '201221', 'n_tokens_mistral': 1822, 'n_tokens_neox': 1642, 'n_words': 316}