]> granicus.if.org Git - clang/blobdiff - www/get_involved.html
list delta and distcc.
[clang] / www / get_involved.html
index 3a29e2e5bad24e33f6e909d22c2d2ceac7740502..398a1151e537919772cc6fda638c2e4e67166adb 100644 (file)
@@ -89,12 +89,9 @@ of <a href="http://llvm.org/docs/SourceLevelDebugging.html">LLVM debug info</a>
 straight-forward if you follow the example of what llvm-gcc generates.</li>\r
 \r
 <li><b>Continue work on C++ support</b>: Implementing all of C++ is a very big\r
-job, but there are lots of little things that can be done.  Right now we support\r
-some small things like references and bool.  We also support parsing of\r
-namespaces, but don't build ASTs for it.  It would be straight-forward to\r
-implement support for representing namespaces, then add support for things like\r
-foo::bar::baz.  Likewise, lots of other little pieces can be picked off and\r
-implemented.</li>\r
+job, but there are lots of little pieces that can be picked off and implemented.\r
+See the <a href="cxx_status.html">C++ status report page</a> to find out what is\r
+missing and what is already at least partially supported.</li>\r
 \r
 <li><b>Improve target support</b>: The current target interfaces are heavily\r
 stubbed out and need to be implemented fully.  See the FIXME's in TargetInfo.\r
@@ -119,7 +116,22 @@ things.  I don't think that there is a specific licensing reason to reimplement
 libgcc, but there is a lot of room for improvement in it in many \r
 dimensions.</li>\r
 \r
-</ul>\r
+<li><b>Implement an tool to generate code documentation</b>: Clang's\r
+library-based design allows it to be used by a variety of tools that reason\r
+about source code. One great application of Clang would be to build an\r
+auto-documentation system like doxygen that generates code documentation from\r
+source code. The advantage of using Clang for such a tool is that the tool would\r
+use the same preprocessor/parser/ASTs as the compiler itself, giving it a very\r
+rich understanding of the code.</li> </ul>\r
+\r
+<li><b>Use clang libraries to implement better versions of existing tools</b>:\r
+Clang is built as a set of libraries, which means that it is possible to\r
+implement capabilities similar to other source language tools, improving them\r
+in various ways.  Two examples are <a href="http://distcc.samba.org/">distcc</a>\r
+and the <a href="http://delta.tigris.org/">delta testcase reduction tool</a>.\r
+The former can be improved to scale better and be more efficient.  The later\r
+could also be faster and more efficient at reducing C-family programs if built\r
+on the clang preprocessor.</li>\r
 \r
 <p>If you hit a bug with clang, it is very useful for us if you reduce the code\r
 that demonstrates the problem down to something small.  There are many ways to\r