[Ecls-list] Status of CVS

Juan Jose Garcia-Ripoll jjgarcia at users.sourceforge.net
Mon May 5 13:14:20 UTC 2008


I have committed Geo's fix for the compiler. I must apologize, because
I am bitten again and again by the same problem, which is that all my
versions of GCC admit CAR(x) as a left hand side of a C expression.
This happens even if I set up the strict ANSI flag (gcc -ansi)!!! This
is really annoying.

Anyway, the status of CVS should be that we have two branches.
  - HEAD (CVS 2008-05-05 14:58), the default source tree
  - sealed_slot (CVS 2008-05-05 14:57), added today

The HEAD or main branch, compared to last week, only contains the fix
mentioned before. The sealed_slot branch contains a lot more new

  - The new implementation of ASDF:MAKE-BUILD, documented in

  - ECL now permits direct slots with an allocation of type :INSTANCE to have an
    explicit location index. These are called SEALED SLOTS. This location is
    enforced by COMPUTE-SLOTS and it is inherited by other subclasses. Conflicts
    are detected and the slot index is used to optimize the slot accessor

  - ECL now adds another MOP extension, which is an option :SEALEDP that applies
    to classes and which seals all its slots, creating additional direct slot
    definitions for slots that were not sealed in parent classes.

  - The compiler now recognizes access to sealed slots when the
associated classes
    have already been defined and the type of arguments to the
accessors is known
    (either by some explicit declaration or by induction). For low
safety or large
    speed settings, this leads to inline access to such slots using
the precomputed

 - The compiler optimizes TYPEP if the type argument is constant and known.

I will conduct more tests throughout the week, with the goal of mergin
sealed_slot by Thursday. Help is really welcome if somebody wants to
test and look for problems in branch "sealed_slot".



Facultad de Fisicas, Universidad Complutense,
Ciudad Universitaria s/n Madrid 28040 (Spain)

More information about the ecl-devel mailing list