[Ecls-list] Important bug fixed

Juan Jose Garcia-Ripoll juanjose.garciaripoll at googlemail.com
Wed Dec 10 15:29:23 UTC 2008

ECL's function for computing the class precedence list was wrong. It
failed to produce the right order for some moderately complicated
class hierarchies, such as the one of flexi-streams.

Since the code was very old, and I did not know how it works, I have
made two implementations. One follows the Hyperspec step by step, and
another one that conses a little bit less. The last one is active
right now. The code is in src/clos/defclass.lsp

I also had to add a new method STREAM-FILE-POSITION, which was not
specified in the original Gray streams proposal, but which is assumed
to exist by flexi streams (I presume due to it being available in

With these changes, flexi-streams _almost_ works. That means that the
flexi-streams for files do work, but there are still some errors left
with string streams, which I would like to solve before the end of the

As usual, the changes are available both in CVS and in the git repositories.



Instituto de Física Fundamental, CSIC
c/ Serrano, 113b, Madrid 28009 (Spain)

More information about the ecl-devel mailing list