[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
equalp of structs - speed
- To: <email@example.com>
- Subject: equalp of structs - speed
- From: firstname.lastname@example.org
- Date: Wed, 24 Sep 97 14:38:15 -0500
- Return-receipt-to: <email@example.com>
(defstruct a (a0 0 :type number) (a1 0 :type number))
(defun a= (a0 a1)
(and (= (a-a0 a0) (a-a0 a1)) (= (a-a1 a0) (a-a1 a1))))
a= should be the same as equalp (and it seems to be), but equalp is
slightly less then twice as fast as a= compiled. One would expect
that, since equalp is a built-in, it would be at least 5 times faster
than a= (this is the case with home-brewed functions like length etc).
So, why is it that the performance win of using equalp instead of a=
is so low in CLISP?