chicken-janitors
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-janitors] #853: coops: redefining things breaks methods


From: Chicken Trac
Subject: Re: [Chicken-janitors] #853: coops: redefining things breaks methods
Date: Sat, 30 Jun 2012 13:54:56 -0000

#853: coops: redefining things breaks methods
-------------------------+--------------------------------------------------
  Reporter:  megane      |       Owner:  felix   
      Type:  defect      |      Status:  assigned
  Priority:  minor       |   Milestone:          
 Component:  extensions  |     Version:  4.7.x   
Resolution:              |    Keywords:          
-------------------------+--------------------------------------------------

Comment(by sjamaan):

 We discussed this on IRC, and I think we came to the conclusion that this
 is expected (if somewhat unfortunate) behavior.  The classes might have
 the same name and be from the same module, but the class objects are
 entirely unrelated and don't know about eachother's existence.

 If you rename the second module to b, and don't import it, it works. If
 you rename but DO import, the class is redefined and the obj is of the old
 class.  The new foo procedure you defined in the second module overwrites
 the foo procedure defined in the first module instead of extending the
 earlier generic procedure.  If module a is imported in b, it will extend
 properly.

 If y'all agree this is not a bug, please close the ticket.

-- 
Ticket URL: <http://bugs.call-cc.org/ticket/853#comment:3>
Chicken Scheme <http://www.call-with-current-continuation.org/>
Chicken Scheme is a compiler for the Scheme programming language.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]