Skip to content

Implement async / await #818

@Razican

Description

@Razican

ECMASCript feature
We currently have no support for async / await in Boa. These two keywords are used to create "promises" that will be executed asynchronously, without blocking the execution of the code that follows.

There are two types of async constructs:

Implementing this has to be done in two phases. First we need to be able to parse these async constructs, and for that, we will need new AST nodes and new parsers, that will be called when finding the async keyword.

After the parsing is done, we need to implement the execution. This will be a bit tricky, since we currently just execute the nodes one by one. This means we need to follow the spec in the "Runtime Semantics" for these two constructs, and implement the needed methods.

This might require further talk in #367.

Metadata

Metadata

Assignees

Labels

A-EnhancementNew feature or requestA-ExecutionIssues or PRs related to code executionC-ParserIssues surrounding the parserE-HardHard difficulty problemHelp WantedExtra attention is needed

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions