Mathieu Lirzin <m...@gnu.org> writes: > Hello Matthias, > > Matthias Paulmier <matthias.paulm...@etu.u-bordeaux.fr> writes: > >> I'm a french CS student at the University of Bordeaux. I'm currently >> following a >> masters degree course specialized in network communications and >> administration. >> I've been interested in free software for a couple of years now and have been >> willing to help a project for some time, but never found one I could help >> with a >> significant contribution before that. >> >> I have decided to candidate for the project "Parse Makefile.am using an >> Abstract >> Syntax Tree". > > Your proposal is very welcome. Google Summer of Code is a good > opportunity to start contributing to Free Software. > >> The reason I'm choosing this subject over the other one is that I already >> have >> good knowledge about ASTs. I have worked on a small programming language as >> an >> assignment (project here : >> <https://services.emi.u-bordeaux.fr/projet/viewvc/compilfinal/> but it is >> very >> poorly written). It is a very basic interpreter for a trimmed Pascal >> programming >> language written in C with Flex and Bison. On this project I've worked on the >> syntax and semantic analysis as well the lexer (which is not a big deal with >> Flex). >> >> I've already met with Mathieu Lirzin to talk about the project so I have a >> general idea of what is expected of this GSoC. From my understanding, both >> proposed subjects' goal is to go towards Automake's eventual modularization. >> The >> benefits of generating this AST from a Makefile.am file would be to separate >> the >> different code generation phases, improve the test suite by testing each >> phase >> separately and probably others that it can't think about now. >> >> My knowledge in Perl may be my weak point for this project as I only know a >> bit >> of the syntax. But I am familiar with other programming languages, >> principally C >> and Python. > > The background you have of this compilation course would be helpful for > this project. IMO The lack of knowledge of Perl is not a big deal, > however it means you will have to acquire a basic knowledge of Perl > during the "Community Bonding" period.
That's what I was planning on doing. Should this be added to the roadmap ? Or is it only about the coding part ? >> If you have any suggestions on documents I can read or software I can check >> to >> prepare for this project I'll be glad to check them. I know texinfo is >> written >> in Perl and generates an AST so I'll check that. > > Yes looking at Texinfo will be interesting for that. > > I think you should start thinking on a roadmap with the milestones and > deadlines for your formal application. The deliverables that are > expected for this project are on one hand a Perl library capable of > parsing 'Makefile.am' files, of injecting rudimentary predefined > compilation rules based on the semantic analysis, and of dumping the > resulting 'Makefile.in'. A example script using that library should be > developped to easily be able to check the progress of the parsing and > code generation work. I'll write a first draft of my application this weekend and keep you updated on it here. I have a good idea of what it will look like. I will follow the guidelines for SoC[1]. I don't know which file format is required by google since the applications are not open on their website yet so I'll write it as a pdf file and put it on my personnal web page so I can show it here. [1] <https://www.gnu.org/software/soc-projects/guidelines.html> and Thanks for reading. -- Matthias Paulmier