From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Stephen Compall Newsgroups: gmane.lisp.guile.user Subject: Re: [GOOPS] Specializing to allow lazy method addition Date: 27 Jan 2004 17:27:52 -0600 Sender: guile-user-bounces+guile-user=m.gmane.org@gnu.org Message-ID: References: <87smkc5b22.fsf@alice.rotty.yi.org> <874qwhsa2u.fsf@zip.com.au> <1074535797.1517.64.camel@localhost> <87fze6x5bu.fsf_-_@alice.rotty.yi.org> NNTP-Posting-Host: deer.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1075247081 3383 80.91.224.253 (27 Jan 2004 23:44:41 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Tue, 27 Jan 2004 23:44:41 +0000 (UTC) Cc: Andreas Rottmann , Guile Users , guile-gtk-general@gnu.org Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Wed Jan 28 00:44:29 2004 Return-path: Original-Received: from monty-python.gnu.org ([199.232.76.173]) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 1Alcsf-0003Fw-00 for ; Wed, 28 Jan 2004 00:44:29 +0100 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.24) id 1AlcnW-0002L2-Uh for guile-user@m.gmane.org; Tue, 27 Jan 2004 18:39:10 -0500 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.24) id 1Alcm4-0002Jc-AZ for guile-user@gnu.org; Tue, 27 Jan 2004 18:37:40 -0500 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.24) id 1AlclX-0001zN-99 for guile-user@gnu.org; Tue, 27 Jan 2004 18:37:38 -0500 Original-Received: from [192.195.228.35] (helo=csserver.evansville.edu) by monty-python.gnu.org with esmtp (TLSv1:DES-CBC3-SHA:168) (Exim 4.24) id 1Alckr-0001fk-Q7; Tue, 27 Jan 2004 18:36:26 -0500 Original-Received: from csserver.evansville.edu (localhost.localdomain [127.0.0.1]) by csserver.evansville.edu (8.12.8/8.12.8) with ESMTP id i0RNRrlQ003652; Tue, 27 Jan 2004 17:27:53 -0600 Original-Received: (from sc87@localhost) by csserver.evansville.edu (8.12.8/8.12.8/Submit) id i0RNRqC6003648; Tue, 27 Jan 2004 17:27:52 -0600 X-Authentication-Warning: csserver.evansville.edu: sc87 set sender to s11@member.fsf.org using -f Original-To: djurfeldt@nada.kth.se In-Reply-To: Original-Lines: 44 User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2 X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.2 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-user-bounces+guile-user=m.gmane.org@gnu.org Xref: main.gmane.org gmane.lisp.guile.user:2732 X-Report-Spam: http://spam.gmane.org/gmane.lisp.guile.user:2732 Mikael Djurfeldt writes: > While the MOP for works, the MOP for isn't yet > implemented. This is a shame and I've for very long had had the hope > to find time to fix it. What we really quickly should do is to > document this situation so that people know that they cannot yet > subclass . > > The purity flag, which you ask about, marks that a class is > "untouched" by the user so that the C runtime can count on specific > slots existing and residing at specific locations within an object. > > The idea is that the runtime will look for specialized functions only > if the class isn't pure. Please tell me if this is accurate: all the Scheme-level procedure calls in libguile eventually go through scm_apply in eval.c, which contains a switch-on-type for the various kinds of applicable objects. The case that calls `scm_apply_generic', the generic I added a method to in trying to make a callable class, first checks for one of the flags in the struct, which is why I get "wrong type to apply" anyway. I ask this because I am more interested in making objects of any class applicable. One case of this is my makefile processor, which essentially processes forms, and used to be in closure form (where you applied the `object' to each form). -- Stephen Compall or s11 or sirian The Tao doesn't take sides; it gives birth to both wins and losses. The Guru doesn't take sides; she welcomes both hackers and lusers. The Tao is like a stack: the data changes but not the structure. the more you use it, the deeper it becomes; the more you talk of it, the less you understand. Hold on to the root. JSOFC3IP number key monarchist SWAT ARPA credit card gamma ASIO quarter S Key Watergate assassinate lock picking colonel MD2 _______________________________________________ Guile-user mailing list Guile-user@gnu.org http://mail.gnu.org/mailman/listinfo/guile-user