
Doug Gregor wrote:
Hello fellow Boosters,
The need for an extensible, complete open-source C++ parser has been discussed on Boost over the years. There are myriad projects that parse approximations to C++ suitable for specific tasks (e.g., documentation generation), but there has never been a community project meant to handle all of C++ or serve as a common platform for new C++ tools. That is going to change, and I hope Boost will be involved.
Apple has begun development of "Clang", which aims to be a high- quality C/C++ parser and compiler. Clang is designed as a library for C++ tools, from IDE-supported tools like indexing, searching, and refactoring to documentation tools, static checkers, and a full C++ front end to the Low Level Virtual Machine (LLVM). LLVM is an advanced, open-source compiler infrastructure supporting all of the back-end functionality needed for a C++ compiler. Like LLVM, Clang is written in a modern C++ style, with a clean separation between the different phases of translation in C++ (lexical analysis, parsing, semantic analysis, lowering, code generation, etc.), all of which make Clang a pleasure to work with.
Clang is still in the early stages of development. At present, it parses and type-checks most of C, with code generation for some simple constructs. C++ support is not available yet, but Apple has dedicated significant resources to making Clang a successful C++ parser and compiler.
That said, Clang needs our help. Collectively, Boost developers have more knowledge about and a deeper understanding of C++ than any other community within C++. We have the C++ expertise to help implement the language well, and the library-design savvy to help build powerful, accessible interfaces that simplify the task of building new and improved tools for C++. The Clang team is asking for help implementing C and C++ features and are very open to new contributors.
Clang has the potential to be a top-notch, open-source C++ compiler and tool platform, from which we would all benefit. Let's help Clang get there sooner!
Links: Clang: http://clang.llvm.org/ LLVM: http://llvm.org/ Steve Naroff's talk motivating Clang: - Video: http://llvm.org/devmtg/2007-05/09-Naroff-CFE.mov - Slides: http://llvm.org/devmtg/2007-05/09-Naroff-CFE.pdf Clang announcement: http://lists.cs.uiuc.edu/pipermail/llvmdev/2007- July/009817.html
Cheers, Doug
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Sounds promising, but here: [root@maple clang]# make -j3 Makefile:4: ../../Makefile.common: No such file or directory make: *** No rule to make target `../../Makefile.common'. Stop. [root@maple clang]# ls AST clang.xcodeproj docs include Lex Makefile NOTES.txt README.txt test www Basic CodeGen Driver INPUTS LICENSE.TXT ModuleInfo.txt Parse Sema TODO.txt [root@maple clang]# find -name Makefile.common [root@maple clang]#