Here are the differences between the ProcessingJS reference and what we support:
- We do not support the Java-like syntax changes to JS, like void, class, extends, and super.
- We use degrees by default for all angle parameters, instead of radians. Use angleMode to change to radians.
- We use mouseIsPressed instead of
mousePressedfor the boolean because it is less confusing to have both a function and a boolean with the same name. Similarly, we use keyIsPressed instead of
- We only support loading officially supported images and sounds via getImage() and getSound(), for moderation reasons.
- We do not support all PImage manipulation functionality, for performance reasons.
- We do not support all commands that are not specifically mentioned in the Documentation.
As long as a ProcessingJS Reference command is not among the forbidden ones for moderation reasons or performance reasons and it works, you can use it on Khan Academy. However, if a ProcessingJS Reference command does not work or works erratically, we do not consider it a bug unless it is specifically mentioned in the Documentation.