A detailed explanation of how Scratch 3.0 works as a programming language.
To read it, you can visit the published page, or view the source markdown files in this repository.
Note
I know the last commit was a month ago, but I've started making progress offline and I'll commit it here soon! Apologies for the long wait, I've been busy with other things and haven't had much time to work on this. I am still highly motivated to finish thanks to the two stars (actual people who want it!), incredible success of Scratch Everywhere! (shows potential of Scratch ports), and other projects I want to work on (which need this as a guide). I will find time in my life where possible to bring the spec into a usable state. Stay tuned!