Permalink
Browse files

added version comments to README

  • Loading branch information...
1 parent 249efe9 commit 8019a950a602a0d7f78a18d532e3ad7ef1c9d4bb @sake committed Feb 18, 2010
Showing with 28 additions and 8 deletions.
  1. +23 −4 README
  2. +2 −1 src/interface.lisp
  3. +1 −1 src/package.lisp
  4. +2 −2 src/redblack.lisp
View
27 README
@@ -1,12 +1,31 @@
README: cl-treemaps
===================
-cl-treemaps is an implementation of binary trees for Common Lisp. The interface
-is derived from the Common Lisp hash-table.
+cl-treemaps is an implementation of various binary trees for Common Lisp. The
+interface is derived from the Common Lisp hash-table.
+
+Currently only red-black trees are implemented. But AA trees and possibly others
+will follow shortly in time.
Dependencies
============
-The cl-treemaps package doesn't have any dependencies. The test part however
-needs FiveAM.
+The cl-treemaps package itself doesn't have any dependencies. The test part
+however needs FiveAM.
+
+
+Version History
+===============
+
+0.1
+===
++ Red black trees implemented with top down iterative algorithm.
+ Big credits to Julienne Walker for supplying the necesary insights.
+ (http://www.eternallyconfuzzled.com/tuts/datastructures/jsw_tut_rbtree.aspx)
++ Red black split and merge use insert to create new tree instead of reusing
+ an existing one. This will be fixed when I fully embrace the internal working
+ of the data structure.
++ Tests and examples on how to use the tree are also included.
++ The implementation is still not optimzed (see compiler warnings). Hints are
+ welcome.
View
3 src/interface.lisp
@@ -8,7 +8,7 @@
;;;
;;; This library is distributed in the hope that it will be useful,
;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
;;; Lesser General Public License for more details.
;;;
;;; You should have received a copy of the GNU Lesser General Public
@@ -28,6 +28,7 @@
;;;
(defun make-tree (&key (test #'<) (type :red-black))
+ "Tree constructor which selects the appropriate tree type depending on the type keyword."
(make-tree-intern test type))
(defgeneric clr-tree (tree)
View
2 src/package.lisp
@@ -8,7 +8,7 @@
;;;
;;; This library is distributed in the hope that it will be useful,
;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
;;; Lesser General Public License for more details.
;;;
;;; You should have received a copy of the GNU Lesser General Public
View
4 src/redblack.lisp
@@ -8,7 +8,7 @@
;;;
;;; This library is distributed in the hope that it will be useful,
;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
;;; Lesser General Public License for more details.
;;;
;;; You should have received a copy of the GNU Lesser General Public
@@ -28,7 +28,7 @@
((data :accessor data :initform nil
:documentation "A node consists of the values key, data, color, left, right.")
(testfun :accessor testfun :initarg :testfun :initform (error "No test function specified.")))
- (:documentation "Red-Black tree implementation."))
+ (:documentation "Red-Black tree."))

0 comments on commit 8019a95

Please sign in to comment.