CLDOC: A Clang-Based C/C++ Document Generator
Phoronix: CLDOC: A Clang-Based C/C++ Document Generator
CLDOC is a document generator for C and C++ projects to create documentation automatically out of comments as well as creating XML-based descriptions of the API. CLDOC is a new project but already sounds promising and is being powered by LLVM's Clang C/C++ front-end for its parser...
I wish it good luck, we really need good small and modern documentation tools. Doxygen is bloated, I had to download like 600MB.
what did you install, a fresh copy of Linux?
Originally Posted by mark45
I was/am on Ubuntu 12.10 amd64 and wanted to try to generate some doxygen stuff myself, and the installer downloaded like 600MB of random stuff, mostly "laTex" packages I guess.
doxygen isn't bloated. It has DEPENDENCIES. It's not the same thing at all. doxygen has a big job to do and it needs a lot of help.
I know that my own frustration with doxygen lies not with its bloat, but because it's not the same parser as the C++ compiler. It's just not sophisticated enough to handle a lot of fancy C++ constructs. I've found cases where it goes haywire and spits out bad XML if you give it really funky C++ code with namespaces, and complex expressions for default arguments, and multiple inheritance, all happening all at once. I am sympathetic to the doxygen developers, it's a real drag to have to maintain two different parsers that are basically both doing the same thing, and C++ has a real knack for allowing developers to write TRULY inscrutable code.
The thing that I really despise about C++ is its total abtuseness. you can have a line of code in your program that looks like this:
c = a + b;
and it looks like you have a simple addition and a simple assignment, but since both operators might be overloaded, this simple line of code is actually doing something else entirely, and you must pick your way through pages and pages of C++ header files to figure out just what is going on. You can specify types in your overloads so you can write pages and pages of overloads and the poor guy who has to read the code, he's got to pick over all of them to figure out which one is actually getting called. The assignment operator doesn't necessarily have to do any assigning, and the addition operator might not actually be adding anything at all.
Remind me again why we call computers "labor saving devices" when they make you jump through hoops like this. Of course doxygen is not going to be of any help to you here either, there's no way it has the sophistication necessary. However if the documentation generator is as smart as the compiler, it will be able to tell what is going on, and hopefully it will cross-reference you to the appropriate code.
Dependencies that amount to such a pile of megabytes does make it bloated, regardless of your interpretation.
As to your a + b is overcomplicated in C++ - it's your problem, I don't suffer from that paranoia, nor had problems with that.
Last edited by mark45; 02-13-2013 at 04:20 AM.
If not by using LaTeX, how else is doxygen to generate good-looking PDF documents?
I only said it might be the issue of the bloat, but I might be wrong or there could be other sources too.
Either way, your question is very good and should be addressed upstream. A web browser (Firefox) has
so much more functionality yet it's like 10-20 times smaller, so imo Latex should be rewritten
or someone needs to create a new project - not that anyone is willing to. But requiring a few hundred megs
just to be able to handle PDFs is clearly bad.
Dependencies and Bloat, respective to Doxygen
Regarding that thick stack of dependencies, while it's not exactly Doxygen's 'bloat', It's still system 'bloat'. More importantly it's worth stating, any resulting feelings of unease are legitimate. If the thought of installing huge mass of dependencies makes you cringe, I wouldn't be ecstatic installing Doxygen.
Originally Posted by frantaylor
Docbook? or any of the modern XML alternatives? XSL-FO?
Originally Posted by archibald
It's really not difficult to find better alternatives to Latex.
I mean, a solid reason exists for why we avoid troff in 2013.
Thanks; Latex is my go-to program if I want to create well-formatted documents, but I'll take a look into the alternatives.
Originally Posted by techzilla