December 13, 2020 Mihaela Chirea - SAOC 2020 Milestone 3 Update 2 - Improving DMD as a Library | ||||
---|---|---|---|---|
| ||||
Hello! Here is an update of the progress made since the last update: - Worked on the FileManager - Checked the locations of all AST nodes produced by the parser. Besides VarDeclaration and FuncDeclaration that start with the names and skip the types and storage classes (as mentioned here [1]), CallExp also seems to start at a weird position: skips the function name and sets loc to the location of '(': foo(1, 2); // starts at column 4 1.foo(2); // starts at column 6 Next steps: - Finish integrating the FileManager into the compiler - Start looking into hiding the TypeInfo nodes when not needed [2] - Insert a UserAttributeDeclarationItem node (as suggested here[3]) to preserve the location of user defined attributes The tasks I planned for this project can be found here [4] [1] https://forum.dlang.org/post/oqbvebbgpyeyxadgisfb@forum.dlang.org [2] https://forum.dlang.org/post/iopxhnudlrgiqwjxzihe@forum.dlang.org [3] https://forum.dlang.org/post/ymtjsccajclfhjrwjcrj@forum.dlang.org [4] https://forum.dlang.org/post/kfcxcjauafpcrmfuajam@forum.dlang.org |
December 13, 2020 Re: Mihaela Chirea - SAOC 2020 Milestone 3 Update 2 - Improving DMD as a Library | ||||
---|---|---|---|---|
| ||||
Posted in reply to Mihaela Chirea | On Sunday, 13 December 2020 at 00:24:50 UTC, Mihaela Chirea wrote:
> Hello!
>
> Here is an update of the progress made since the last update:
> - Worked on the FileManager
> - Checked the locations of all AST nodes produced by the parser. Besides VarDeclaration and FuncDeclaration that start with the names and skip the types and storage classes (as mentioned here [1]), CallExp also seems to start at a weird position: skips the function name and sets loc to the location of '(':
>
> foo(1, 2); // starts at column 4
> 1.foo(2); // starts at column 6
>
> Next steps:
> - Finish integrating the FileManager into the compiler
> - Start looking into hiding the TypeInfo nodes when not needed [2]
> - Insert a UserAttributeDeclarationItem node (as suggested here[3]) to preserve the location of user defined attributes
>
> The tasks I planned for this project can be found here [4]
>
> [1] https://forum.dlang.org/post/oqbvebbgpyeyxadgisfb@forum.dlang.org
> [2] https://forum.dlang.org/post/iopxhnudlrgiqwjxzihe@forum.dlang.org
> [3] https://forum.dlang.org/post/ymtjsccajclfhjrwjcrj@forum.dlang.org
> [4] https://forum.dlang.org/post/kfcxcjauafpcrmfuajam@forum.dlang.org
Thanks for your work!
I believe many are looking for using the compiler as a library for things like server language in IDEs, so that's awesome!
|
Copyright © 1999-2021 by the D Language Foundation