It might be worth mentioning that Khan Academy's main CS course has been based on an in-browser Processing.js environment, since even before P5 existed.
Interesting, I did not know it predated p5. That explains some of the inconsistencies and weird restrictions - I remember it only allowing specific syntax for things like declaring functions
processing.js is unfortunately abandoned - which is a great pity since P5, it's successor, has some fundamental changes from the original Processing syntax.
Used to be you could copy and paste code that would run on desktop (Processing), browser (processing.js) and mobile (Processing for Android) and it would just work.
I do understand why P5 is important, though, with the popularity of JavaScript.
Moderated at Khan in their CS area for a while around 2012, and really enjoyed helping people just getting started with programming. I still have 1/2 a dozen unfinished canvas/processing.js games and projects from back then as well. There's just something very rewarding about using that combo for rapid prototyping and iteration on a project.