Confused re C/C++, "Wiring" and "Process" langauges

I know C/C++ very well. But I don't understand the purpose behind the Wiring and Process languages. I read info about them on the web, but I can't understand what they have that is very different from from C/C++. Can you someone summarize?

Processing is based on Java, so is quite different to Wiring, which is based on C/C++.

They're essentially a set of libraries with make things easier for beginner programmers. I've heard people saying that "programming in qt" is like a different language, and arduino/wiring/processing is kind of the same way.

And Java is sort of C-like, except where it's not...

AWOL: Processing is based on Java, so is quite different to Wiring, which is based on C/C++.

That's not really helpful. Why would I use the Process or Wiring languages?

You would use [u]Processing[/u] in the [u]Processing[/u] IDE on your PC, to do PC things (capture images, play audio, do graphics, run a GUI...), and you would use Wiring on your Arduino to do Arduino things (toggle outputs, read analogue inputs, control PWM outputs, read/write SD cards, EEPROM...). The Arduino isn't powerful enough to run Java, so you can't run [u]Processing[/u] on your Arduino.

AWOL: You would use [u]Processing[/u] in the [u]Processing[/u] IDE on your PC, to do PC things (capture images, play audio, do graphics, run a GUI...), and you would use Wiring on your Arduino to do Arduino things (toggle outputs, read analogue inputs, control PWM outputs, read/write SD cards, EEPROM...). The Arduino isn't powerful enough to run Java, so you can't run [u]Processing[/u] on your Arduino.

Ahhh, now I understand. That makes perfect sense. Thank you.