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

The Compiler... #64

Draft
wants to merge 20 commits into
base: develop
Choose a base branch
from
Draft

The Compiler... #64

wants to merge 20 commits into from

Conversation

yuri-kiss
Copy link

@yuri-kiss yuri-kiss commented Sep 25, 2024

Overhauls the entire internals (for descending etc) of the compiler, this is much more than meets the eye.
This is built on TacoDiva's "next-next" compiler.

(This should ALL be done before merging)
Todo:

  • (Obviously) Merge conflicts
  • Compiler API
    • Initial API for blocks
    • Exports
    • Cleanup of some functions to use new API's better
  • Native extension support for compiler API
    • Custom shape api
    • "dynamicChanges" boolean
    • registerSimple
  • Inline block support
  • "on branch end" support
  • Object support
  • Implement all of USB's blocks
    USB does not change or add to: Sound, Event or Sensing for ANY stack or inputs
    • Motion Updates
    • Looks Updates
    • Camera Category
    • Control Updates
    • Operator Changes
    • String Category
    • Data Updates
    • Procedure Updates and Changes
  • Port base blocks
    • IR gen (inputs)
    • JS gen (inputs)
    • IR gen (stack)
    • JS gen (stack)
  • isIterable and isBreakable
  • Branch support for Procedures
  • Pull down latest branch from TacoDiva's repo
  • Clean up exports

Formality's:

  • ESLint fixes
  • Comment the new code
  • Maybe get TacoDiva to take a look when we are done

Hat / Event blocks do not count as stack in this context
This relys on this GUI fix (Maybe USB only)
Unsandboxed/scratch-gui@52fff4c

@yuri-kiss yuri-kiss added enhancement New feature or request preplan preplanning labels Sep 25, 2024
@yuri-kiss yuri-kiss self-assigned this Sep 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request preplan preplanning
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants