Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

form a core team #290

Open
nikomatsakis opened this issue Jan 25, 2018 · 22 comments
Open

form a core team #290

nikomatsakis opened this issue Jan 25, 2018 · 22 comments
Labels

Comments

@nikomatsakis
Copy link
Collaborator

nikomatsakis commented Jan 25, 2018

Hello all,

It's become pretty clear that I don't have the time to devote to LALRPOP that it really deserves. This is a shame, because I think there is lots of exciting things left to do in LALRPOP. In the short term, I think we need to improve the time it takes to compile (this may involve some rustc hacking, but I bet we can do some things on our side), fix the compilation issues of the regex engine, and probably write more documentation. But looking further out I think there's tons more: I'd like to see further improvements and shorthands to eliminate boilerplate; the ability to have modular grammars; more backends beyond LR-based ones; deep integration with procedural macros, once those become available; etc.

Therefore, I am looking to form a kind of "LALRPOP core team". I would like to mentor people in how LALRPOP works so that we can keep up momentum and support each other, and also to have more people involved in design when it comes to more complex features -- a lot of the features I have in mind get stalled because I just can't decide how to resolve some syntactic question or other. To symbolize this shift in ownership, I have moved lalrpop to its own github org.

Consider this an "open invitation" -- if you are interested in being on the core team, leave a comment, and I will try to find things for you to do and mentor as needed. Assuming all goes well,
and you're still interested, I will add you to the org. All I ask is that you like the idea of continuing to hack on and improve LALRPOP going forward. =)

I am cc'ing the people who have contributed to LALRPOP releases in the past based on the git log, but the offer stands for anyone.

cc list

@Marwes
@Nemikolh
@ahmedcharles
@ashleygwilliams
@brson
@dagit
@dflemstr
@federicomenaquintero
@fhahn
@fitzgen
@gwenn
@jchlapinski
@jnbr
@joerivanruth
@king6cong
@larsluthman
@malleusinferni
@mchesser
@minijackson
@nick70
@nikomatsakis
@nixpulvis
@notriddle
@oconnor0
@paupino
@pensivearchitect
@pyfisch
@ravenexp
@reuben
@ruuda
@serprex
@shahn
@tildeio
@vmx
@wagenet
@wieczyk
@willcrichton
@withoutboats
@wycats

UPDATE: Edited to change references to time to something closer to my original intent.

@ahmedcharles
Copy link
Contributor

I'm interested, though I'm curious what level of time commitment you're looking for on average?

@Dylan-DPC-zz
Copy link

I'm interested. Though time is a constraint

@nikomatsakis
Copy link
Collaborator Author

I don't have in mind a very big time commitment or a specific number -- I'm not sure how to phrase it -- I guess I mean that I'd like it if you think you want to do more than just a one-off PR. (I think sometimes people know up front that they have a specific itch they want scratched and that's it -- nothing wrong with that, just doesn't fit my conception of a core team.)

LALRPOP doesn't seem to have that many urgent bug reports or anything -- I mostly just hope we can get enough people that we're landing a PR or two per month, putting out regular releases. Maybe push towards some kind of 1.0 release.

Anyway, gotta go do some other stuff today, but I'll check back in and put up some ideas for things we can do to get started!

@willmurphyscode
Copy link

I am definitely interested!

@sunjay
Copy link

sunjay commented Jan 25, 2018

I am interested! 🙋‍♂️

@franleplant
Copy link

franleplant commented Jan 25, 2018 via email

@gugahoa
Copy link

gugahoa commented Jan 25, 2018

What previous knowledge is expected to be able to help?

@Nemikolh
Copy link
Contributor

Count me in!

@udoprog
Copy link
Contributor

udoprog commented Jan 25, 2018

I depend on LALRPOP for a couple of things. It's a great project and I would love to help out making it even greater.

@k0pernicus
Copy link
Contributor

I am interested too :-)

@wieczyk
Copy link
Contributor

wieczyk commented Jan 25, 2018 via email

@nomadicmehul
Copy link

Count me in!

@nikomatsakis
Copy link
Collaborator Author

Wow, this is awesome. I'm sort of overwhelmed by how many of you there are, but that's great! I went through and tagged various issues as "Let's Do This". I left some notes on how to do it, but I don't have a ton of time this morning, so they are sometimes minimal. Please go ahead and take a look and leave a comment and/or ping me on gitter if you need some help getting started. =) Also feel free to look for other issues that I didn't tag; I'll try to add more over the weekend.

@nikomatsakis
Copy link
Collaborator Author

nikomatsakis commented Jan 26, 2018

@gugahoa

What previous knowledge is expected to be able to help?

A familiarity with parser generators helps, but I'm happy to try and explain things, and I think there is plenty of work to do that doesn't require diving into the guts of the LR(1) algorithm itself (to be honest, these algorithms aren't that complex anyway, though it takes some time to get your head wrapped around them; they kind of "do the obvious thing" -- tough of course that "obvious thing" took years to develop I suppose :) ).

@xmonader
Copy link

Hi I'm interested as well

@wieczyk
Copy link
Contributor

wieczyk commented Jan 28, 2018

@gugahoa

What previous knowledge is expected to be able to help?

Modern Compiler Implementation in ML

I whole-heartedly recommend this book, it contains chapters about LR/LALR/SLR parsers. It is not long text, but it explains topic very well and it is easy to read. In my humble opinion, the best place to start learning LR parsing.

(You can also find variant of this book dedicated to C and Java).

@nikomatsakis
Copy link
Collaborator Author

Another bug that might be an easy way in for someone who is interested: #307

By the way, so far @ahmedcharles and @Marwes have been added to the maintainers team. Thanks you two!

@nikomatsakis
Copy link
Collaborator Author

Here is another actionable bug, now with some mentoring instructions:

#325 (comment)

@nikomatsakis
Copy link
Collaborator Author

This bug would be a great way to come to understand LR(1) parsing more deeply:

#303

Right now, LALRPOP generates a bunch of code with every project, but I think we can extract out most of that into a generic function that lives in lalrpop-util. In fact, I've already gotten that far on my branch -- you can see the generic function here -- but now we need to modify the code generation to generate the trait impl that it needs. The trait provides information about the states etc.

@tekknolagi
Copy link

I am tentatively interested! I have quite a bit of time until mid-September, and then a moderate amount of time thereafter.

@nikomatsakis
Copy link
Collaborator Author

nikomatsakis commented Aug 30, 2018

So I've decided to try and take a different approach here. I'm going to close this issue, but instead I'm going to be holding weekly "sync meetings" in the gitter channel. The timing is Friday at 18:00 UTC (first meeting tomorrow). Don't worry if you can't attend, because we'll publish out some minutes. The main idea will be to select some issues to file, things to do every week, and try and generally chart our course and keep things moving.

@nikomatsakis
Copy link
Collaborator Author

Oh ps if you want to be added to a calendar invite, send me a privmsg on gitter.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests