You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Improvements and optimizations to the Program Syntax Framework
Enhancements and performance optimizations to the Execution Engine
Addition of Telemetry and Debugging support
We need to revisit some design considerations made while initially building the Program Syntax Framework. This framework is responsible for defining the business logic and rules for units of a program's syntax (literals, expressions, statements, blocks, functions) and maintaining the Syntax Tree that represents a program. There's scope for some work to be done in it's refinement.
The Execution Engine handles the runtime behavior of a program. Currently, it is in a very rudimentary state and is a work-in-progress. The goal is to build a low overhead interpreter that supports pseudo real-time and concurrency. Of course, JavaScript is single-threaded and the JavaScript engine on the browser doesn't support concurrency. So, we'll have to mock a closer behavior with Events.
It is desirable to be able to monitor the runtime states of an executing program. We want to collect execution information, messages, errors while a program is executing, and also control the execution itself. The goal is to add support for the said.
Ticket Contents
Description
There are three parts to this project:
We need to revisit some design considerations made while initially building the Program Syntax Framework. This framework is responsible for defining the business logic and rules for units of a program's syntax (literals, expressions, statements, blocks, functions) and maintaining the Syntax Tree that represents a program. There's scope for some work to be done in it's refinement.
The Execution Engine handles the runtime behavior of a program. Currently, it is in a very rudimentary state and is a work-in-progress. The goal is to build a low overhead interpreter that supports pseudo real-time and concurrency. Of course, JavaScript is single-threaded and the JavaScript engine on the browser doesn't support concurrency. So, we'll have to mock a closer behavior with Events.
It is desirable to be able to monitor the runtime states of an executing program. We want to collect execution information, messages, errors while a program is executing, and also control the execution itself. The goal is to add support for the said.
The framework code is contained in github.com/sugarlabs/musicblocks-v4-lib.
Goals & Mid-Point Milestone
Goals
Setup/Installation
Expected Outcome
A working execution engine integrated into Music Blocks v4
Acceptance Criteria
Implementation Details
Mockups/Wireframes
Product Name
Music Blocks v4
Organisation Name
Sugar Labs
Domain
Education
Tech Skills Needed
Mentor(s)
@meganindya @walterbender
Category
Backend, Documentation, Frontend
The text was updated successfully, but these errors were encountered: