summaryrefslogtreecommitdiff
path: root/Sacla/share-2.lisp
diff options
context:
space:
mode:
authorMatthias Andreas Benkard <matthias@benkard.de>2008-08-03 10:44:49 +0200
committerMatthias Andreas Benkard <matthias@benkard.de>2008-08-03 10:44:49 +0200
commitd1db5cd7f2462e615a205cc910cf07755d1fa428 (patch)
treec7c369501c64060932cee550aa77f04700c2a683 /Sacla/share-2.lisp
parent109a0a68366842862997ea48d97f9f1429102c03 (diff)
Split Sacla/share.lisp into two parts.
Diffstat (limited to 'Sacla/share-2.lisp')
-rw-r--r--Sacla/share-2.lisp11
1 files changed, 11 insertions, 0 deletions
diff --git a/Sacla/share-2.lisp b/Sacla/share-2.lisp
new file mode 100644
index 0000000..a92010a
--- /dev/null
+++ b/Sacla/share-2.lisp
@@ -0,0 +1,11 @@
+(defun proper-list-p (object)
+ (when (listp object)
+ (do ((fast object (cddr fast))
+ (slow object (cdr slow)))
+ (nil)
+ (when (atom fast)
+ (return (null fast)))
+ (when (atom (cdr fast))
+ (return (null (cdr fast))))
+ (when (and (eq fast slow) (not (eq fast object)))
+ (return nil)))))