automake
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [GSoC] Proposal for "Parse Makefile.am using an AST"


From: Matthias Paulmier
Subject: Re: [GSoC] Proposal for "Parse Makefile.am using an AST"
Date: Thu, 08 Mar 2018 21:25:17 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux)

Mathieu Lirzin <address@hidden> writes:

> Hello Matthias,
>
> Matthias Paulmier <address@hidden> 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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]