
Re: Will ISR's be supported?
An interrupt service routine (ISR) is a function that is executed when a change happens on the Arduino.
Normally it's when a particular digital pin changes value (goes from low to high or high to low). When that happens, the Arduino
interrupts whatever code was being executed and immediately executes the ISR function.
Simple example: a button is hooked up on digital pin 2. If that button is pushed it forms a circuit making digital pin 2 go from low to high. When that happens the Arduino stops what it was doing and calls your ISR function.
Here is a real basic example from the Arduino website
http://arduino.cc/en/Reference/AttachInterrupt .
In the code the function blink() is called whenever
interrupt 0 changes (interrupt 0 is digital pin 2 just to make it confusing

)
I normally use interrupts for quadrature encoders on motors. As a motor spins, a pulse (actually two) is sent from the encoder to the Arduino. I count each pulse using an ISR and I can determine how much the motor has spun and in which direction. The NXT motors for example have encoders inside them and they too send pulses to the NXT (through pins 5 & 6 to be exact).
There are also timer interrupts as (as well as interrupts for I2C, SPI, UART, etc...).