Friday, April 28, 2000

Errata Update; Seminar Update; Mailing List Update

Three things:
- EC++ errata updated.
- Enrollment limit placed on June STL Seminar.
- Mailing list migration in the offing.


I just uploaded an updated version of the Effective C++ errata list. This
is because I modified the source in preparation for the ninth printing. Of
all the changes, this is the most significant:
  ! 1/21/99 sdm 225-6 Contrary to the second bullet on this page,         4/28/00
                      names introduced via standard C headers *are* in
                      namespace std. Matt Austern explained the
                      reason for this in a posting to
                      comp.lang.c++.moderated on 1/18/00:

                        <cfoo> headers define symbols in namespace std
                        only, while the <foo.h> headers define them in
                        namespace std and then import them into the
                        global namespace as if by using-declarations.
                        This is described in section D.5, paragraph 2,
                        of the C++ standard.

                        It clearly wouldn't work for the <cfoo>
                        headers to define names in namespace std only
                        and for the <foo.h> headers to define names in
                        the global namespace only. If we did it that
                        way then (for example) we'd get two different
                        ldiv_t types, one from <stdlib.h> and one from
                        <cstdlib>. As is we've instead got a single
                        ldiv_t that can be referred to from two
                        different namespaces. Because of Koenig
                        lookup, it makes a difference which one it was
                        originally defined in.

                      I reworded the bullets to state for each one
                      what's in the global namespace, what's in std,
                      and what's in both.

* * *

For a variety of reasons, we just placed an enrollment limit of 35 on the
STL seminar I'll be presenting in June (
Because the class won't be too big, I'm hoping to have a lot of interaction
with everybody who attends. Last I heard, there were about 30 people
signed up, so if you're interested in attending the seminar, now would be a
good time to grab one of the remaining slots. It also looks like I'm
managing to convince several people with lots of STL experience to drop in
and offer help during exercises, so this should be a good opportunity to
have people look over your shoulder and explain that the error message that
never uses the word "iterator" is complaining about your iterators :-)

* * *

Because my ISP is discontinuing support for mailing lists, I've set up a
new mailing list at eGroups, I'm not yet done
setting things up, but when I'm finished with that, I'll do my best to
transfer everybody over from the current mailing list to the new one. In
theory, nothing can possibly go wrong (ahem), but don't be surprised if you
get a few pieces of mail in the next couple of weeks that serve only to
tell you about mailing list administrivia. With any luck, this will be a
painless transition for all of us.


No comments: