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

FunC frontend #56

Open
2 of 9 tasks
byakuren-hijiri opened this issue Aug 1, 2024 · 0 comments
Open
2 of 9 tasks

FunC frontend #56

byakuren-hijiri opened this issue Aug 1, 2024 · 0 comments
Assignees
Milestone

Comments

@byakuren-hijiri
Copy link
Contributor

byakuren-hijiri commented Aug 1, 2024

Below is an incomplete list of tasks required to implement the initial FunC support. This will allow us to create AST detectors and establish an API that we will later use to transform this into the IR supporting both Tact and FunC (#74).

  • [ ] Merge New Func backend: First iteration tact-lang/tact#559: Introduces the FunC parser which is capable to parse about 95% of FunC grammar. We have this limitation since FunC has a context-sensitive grammar.
  • Create AST that tracks code position and provides more convenient representation of FunC (no expr precedence hell, more sane representation of some nodes)
  • Parse it using the existing tree-sitter parser and convert it to the AST
  • Add the AST utilities module (like for Tact)
  • Create common interfaces for Tact and Func
    • Support AST detectors for FunC
  • Support multi-language projects
  • Func tools
    • AST dump
@byakuren-hijiri byakuren-hijiri added enhancement New feature or request tracking issue labels Aug 1, 2024
@byakuren-hijiri byakuren-hijiri pinned this issue Aug 1, 2024
@byakuren-hijiri byakuren-hijiri changed the title Support FunC Support FunC (tracking issue) Aug 1, 2024
@byakuren-hijiri byakuren-hijiri added this to the v1.0 milestone Aug 5, 2024
@jubnzv jubnzv changed the title Support FunC (tracking issue) Support FunC Aug 8, 2024
@jubnzv jubnzv modified the milestones: v1.0, v0.5 Aug 23, 2024
@jubnzv jubnzv added the blocked label Aug 26, 2024
@jubnzv jubnzv self-assigned this Aug 26, 2024
jubnzv added a commit that referenced this issue Aug 31, 2024
Will be useful in general, especially when working on #56
@jubnzv jubnzv mentioned this issue Aug 31, 2024
4 tasks
jubnzv added a commit that referenced this issue Aug 31, 2024
Will be useful in general, especially when working on #56
@jubnzv jubnzv modified the milestones: v0.4, v0.5 Sep 21, 2024
@jubnzv jubnzv changed the title Support FunC FunC frontend Dec 4, 2024
@jubnzv jubnzv removed enhancement New feature or request blocked labels Dec 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants