Skip to main content

  | मौसम…

411 समाचार
Public archive edition · Attributed source reporting with original dates · AI drafts are excluded

411 REFERENCE · Wikibooks

Scratch Virtual Machine/Introduction

Reference material by Wikibooks contributors. This retains its source identity and is not 411 news reporting.

Scratch is a visual block-based programming language. It is implemented via the Scratch Virtual Machine (VM), a program responsible for maintaining the state of a Scratch project and executing its scripts. This book documents its behavior and quirks independently of any programming language so that it may be clearly understood and reimplemented for any purpose. Scope This book currently documents Scratch 3.0, which is mostly backwards compatible with previous versions. The source code of its virtual machine and the behavior of the programming language it is written in (JavaScript) will be used for verifiability, with the Scratch Wiki and MDN Web Docs as supporting materials. Changes in Scratch's behavior over time as the result of updates to the VM's code will be noted. All information included here will relate to implementing Scratch. Resources otherwise relating to Scratch can be found in the Scratch book. Information about specific Scratch Virtual Machines that does not affect the actual behavior of Scratch will generally not be documented, unless such information would further understanding. The inner workings of Scratch will be documented extensively, but within reason. If, for example, an exploit were found that allowed executing arbitrary JavaScript code, this book will not attempt to reinvent all of JavaScript. Explanations of behaviors on specific web browsers and computer setups will be avoided where possible to ensure Scratch remains flexible in its implementation.