The OOPic firmware defines numerous built-in "objects," which can provide custom methods and properties. The objects may be wrappers for hardware, such as an external infrared sensor or a built-in LED, or logic helpers, such as dividers or logic gates.
The OOPic also makes use of "virtual circuits," where the programmer can create links between object properties.
The following is an example piece of code written in the BASIC syntax, which links a built-in clock that cycles every 1 Hz to an LED.
This virtual circuit behaviour gives the programmer considerable control and flexibility, and allows for better reaction to real-time behaviours thanks to "Events". The OOPic actually spends the majority of its time updating the virtual circuits, compared to looping through a user's code, so it's in the programmers best interest to use virtual circuits over traditional programming techniques as often as possible.
OOPIC also refers to Object Oriented Particle In Cell which is an object-oriented implementation, written at Berkeley, of a specific method of plasma physics simulation known as particle in cell.