Processing is a free graphical library and integrated development environment (IDE) built for the electronic arts, new media art, and visual design communities to teach non-programmers the fundamentals of computer programming in a visual context. Processing uses the Java language, with additional simplifications such as additional classes and aliased mathematical functions and operations. It also provides a graphical user interface for simplifying the compilation and execution stage. The Processing language and IDE have been the precursor to other projects, including Arduino, Wiring, and p5.js.