I am new to paparazzi, so I will first shortly introduce myself: I'm Christophe, I work at ENAC school, teaching networks and data link technologies, and I am more familiar with computer science than with electronics.
Before I enter in the core subject of my mail, I would like to say that, as a newcomer I may question some well established things. My intent is not to break anything or criticize the work of others for the sake of a "holly-rule-of-thumb", but just to find a way to contribute to the project.
So now, lets jump right into the core subject!
As I do not have anything to send flying, I had a look at the building system and at some of the opened issues. I first have to admit that I am discovering OCaml, so diving into all this was not an easy task.
I will not discuss in this mail my feeling about the hole building systems and tooling (, mainly because I miss experience in building and customizing, so maybe my understanding is not accurate enough to have pertinent proposals.
But as I went through the code, I think you will agree, I found it really difficult to maintain and improve, except from maybe one or two specialists. IMHO it is not desirable for an open source project like paparazzi.
This lack of maintainability is primarily bound to the lack of comments in the code, and secondary to the quite exotic language (OCaml) used all over the building tools (especially generators). OCaml is certainly a very interesting and powerfull language, but it may not be the most appropriate for a maintainable xml file parsing code.
So I started looking at alternative solutions and already have a partial airframe generator: a more or less one to one function rewriting of the current OCaml gen_airframe.ml.
Some open issues already call for some more in-depth redesign of the building system, so it may also be an oportunity to do so.
I think I could try contributing on these subjects (which are quite remote from the core UAV stuff), but I would like to be sure that there is a common aggreement from the insiders that it is worth working on that and maybe gather some improvement ideas from you.