Just to clarify: The wiring programming environment doesn't actually RUN the program, it simply compiles it and then loads it into the microprocessor on the wiring board. So, you really want to do this:
Processing -> Wiring Board
To connect processing and the wiring board you will probably want to use the serial communication libraries. To make a light turn on and off, I would recommend just sending a single byte from processing whenever the user pushes a button (like: 0 == off, 1 == on).
To send bytes via processing, check out the serial library reference:
http://www.processing.org/reference/libraries/serial/Serial_write_.html
Then, in wiring write code to watch the serial port and update the LED state any time data is available. Here is some *slightly* modified code taken from http://www.wiring.org.co/reference/libraries/Serial/Serial_available_.html
(also, I'm not at home so I can't test this to make sure it works..)
Code:
int val;
int LED_PIN = 4;
void setup() {
pinMode(LED_PIN, OUTPUT);
Serial.begin(9600);
}
void loop() {
if( Serial.available() > 0) {
val = Serial.read();
}
if(val == 0)
digitalWrite(LED_PIN, LOW);
else
digitalWrite(LED_PIN, HIGH);
}