Hello! No, I don't know D... It's incredible how many languages still keep emerging.
I have used Bison to process some languages (C headers and one language called TTCN3) and to parse execution logs, nothing special I guess. One thing that I have always encountered funny in Bison is the way to describe lists. For example, if you expect comma-separated list called my_list, you would write: my_list: element | my_list ',' element; I believe there could be some more elegant syntax to avoid that kind of loops. I don't know how much we can make up, but creating a simplified expression like this would help: my_list: %list ',' element; The directive %list would expand that expression into the previous one. I've also had problems generating the grammar in C++. Right now I only use C version of the code because of compilation/interaction problems with the lexer (I used flex). I don't know in which side is the problem, but every time I had to mix up C++ code from the project and C code from the parser/grammar resulted in a mess... Especially when I wanted to wrap different parsers in different classes and objects. Solving this would be a big improvement for me. I can use github if it's more convenient. I can adapt to anything right now. I will take a look again at the pending tasks. BR, Victor -----Original Message----- From: Akim Demaille <a...@lrde.epita.fr> Sent: Thursday, October 17, 2019 12:02 AM To: Morales Cayuela, Victor (NSB - CN/Hangzhou) <victor.morales_cayu...@nokia-sbell.com> Cc: Paul Eggert <egg...@cs.ucla.edu>; Bison Bugs <bug-bison@gnu.org> Subject: Re: Getting involved in Bison Hi Victor, > Le 16 oct. 2019 à 07:29, Morales Cayuela, Victor (NSB - CN/Hangzhou) > <victor.morales_cayu...@nokia-sbell.com> a écrit : > > Hello! > > Considering that this is the first time I collaborate in this project I would > like to start with something easy. Sure. It makes a lot of sense :) > First I'd like to get used to the way of working, code style and review, > testing... etc. I'll also send you a disclaimer form: contributions to Bison must be comply with FSF rules. > I could do as a first contact the graph generator clean up that you > mentioned. I have already had a look at the TODO list and other issues but I > can't figure out which one might also be easy to start with. I would say that you should start with something you are interested in, i.e., that you would like to use in Bison. What's your current use of it? > About my skills, I can write quite good C/C++ code (C++14), I have a long > experience with these two languages in projects of millions of lines. Good to know, thanks! You would be good at D too by any chance? We need someone for D :) > I am code reviewer in my company and I have been awarded a few times, so this > part shouldn't be a problem. I haven't used m4 before, although I will start > learning asap. M4 is special, no doubt about it. But in a sense, it's a functional programming language. At least, most part of our use of M4 is FP style. > Btw, how long time do you usually estimate for a feature/ to be delivered? Whatever it needs. > Could you also let me know how to check out the source project? Should I need > to register first in some git repository? I've never worked in open source > projects, not really sure how they are managed. See all the information Adrian sent. I would also add that if you plan to work on GitHub, it would make sense to fork my repo (https://github.com/akimd/bison). And them, take some time to read README and README-hacking.