September 30, 2020 Adela Vais - SAOC Milestone 1 Update 2 - Dlang GLR Parser for GNU Bison | ||||
---|---|---|---|---|
| ||||
Hello! This is an update post for #SAOC2020. My plan for last week was to: - to continue analyzing the LALR1 D parser (done); - to continue familiarizing myself with the M4 functions used within the repo (done); - to start analyzing the C and C++ existing parsers, by writing programs that would help me understand the key differences between them (I didn't get to do this yet and I moved this on next week's to-do list). As of last week: - I continued analyzing the D LALR1 code and finished it for the most part. I found a few more bugs and solved them[0][1]. - I changed the return value of yylex() from int to TokenKind[2], as last week's patch was accepted. - I started adding to Bison's documentation, and I will try to finish it for the moment, and add to it as I solve more bugs or add new features. - The PR[3] for dlang/phobos is still open. - I started working on changing the default value of api.token.raw[4] to true - as Dlang uses TokenKind and not int as a return value, collisions that are avoided by api.token.raw can't happen. - I started working on adding lookahead correction[5] to D's LALR1 skeleton. This is a technique that allows for better error handling, and at the moment is not supported by the D backend. The plan for next week is: - to continue familiarizing myself with the M4 functions used within the repo (working on lookahead correction and continuing the add other features); - to start analyzing the C and C++ existing parsers, by writing programs that would help me understand the key differences between them. General milestones: [6]. Milestone 1 Update 1: [7]. [0]: https://github.com/akimd/bison/commit/de638df10447bde11a2a79c9c3233be1f7c406b6 [1]: https://github.com/akimd/bison/commit/2e5592b3abb94155e6814ddd985694df5dccfc67 [2]: https://github.com/akimd/bison/commit/f296669c0f23af63716050593865475471054941 [3]: https://github.com/dlang/phobos/pull/7642 [4]: https://www.gnu.org/software/bison/manual/html_node/_0025define-Summary.html [5]: https://www.gnu.org/software/bison/manual/html_node/Lookahead.html [6]: https://forum.dlang.org/post/ngdkxwyhrcduspuslfoe@forum.dlang.org [7]: https://forum.dlang.org/post/xxnwpbmagtzuhwmsusnu@forum.dlang.org |
Copyright © 1999-2021 by the D Language Foundation