This is the mail archive of the
mailing list for the libstdc++ project.
summer of code (2009) ideas
- From: Benjamin Kosnik <bkoz at redhat dot com>
- To: libstdc++ at gcc dot gnu dot org
- Date: Wed, 1 Apr 2009 19:18:14 -0700
- Subject: summer of code (2009) ideas
Sorry y'all, I got backlogged with this due to travel in March. I
realize that this deadline is fast approaching.
Here are some of my ideas about things that might be interesting
to do or work on this summer. I've divided it up into documentation,
C++0x, and experimental work.
Feel free to add to this.
a) Add docs for
- stateful allocators, and support or lack thereof
- Tom Tromey's suggestion of www.cppreference.com/wiki/start
as a C++ introduction.
- array_allocator: use, bugs, etc
- demangler use, nobody finds this documentation.
- Detail ISO C++ 1998, 2003, 200x. Add POSIX, CXXABI
code needs -pthread when compiling
size restrictions on native_type, detail what impl points to in
- code conversions, see gcc bugzilla
- cxxabi-forced.h needs some kind of description. Should this just
be in cxxabi.h?
_GLIBCXX_ATOMIC_BUILTINS versus __default_lock_policy's
b) design and structure
- convert pb_ds docs to docbook
- tie docbook xml to doxygen XML references.
How to best do this? Need permanant anchors in output html files.
- SGI STL programmer's reference integration
- improve doxygen output for known trouble spots chrono,
type_traits, random, shared_ptr. All std-declared names part of
spec should be visible. Lots of new features are not showing up
in the doxygen-generated index. Examples are std::ref in
functional, all of bits/move.h
c) formatting, markup, output
- indexing for PDF output
- docbook printing
- investigate derived design
- shared memory testing
- docs for Lawrence Crowl about current status
- execute tests for member functions
3) Extensions and Experimental
a) parallel mode
- unify parallel mode types with C++0x
- unify parallel mode atomics with C++0x
- parallel containers
- exception safety
b) lock free containers
- see P. Jordan's work, build on it
c) shared memory
d) shared objects