Here is a different point of view on the usefulness of easyC.
This is not a binary decision: easyC should/shouldn't exist, or easyC is better/worse than eclipse. For some people who are very comfortable writing lots and lots of C code with a good development environment then eclipse makes sense. For those without that experience then I've seen easyC enable them to do things with robots that they would never be able to do without it.
In classes, we used to use MPLab. For the last two years we've introduced easyC. What I found was that on 3-4 person teams, with MPLab and C only 1 or maybe 2 students on a team understood the program they wrote. With easyC, all the team members could participate in programming. easyC lowered the "barrier to entry" for new programmers significantly. Mentors are always telling me that easyC enables the students to write the code instead of the adults.
We did a beta test of easyC last year when it was released. About 10 FRC teams brought their 2005 robots with cameras for a day before the start of the 2006 season. Almost all the teams got the camera working and doing something. Some had it following them while they walked around the room with tetras. The interesting result was that many said that they got further in that one day than in the entire 6 weeks the previous year.
So, Jamie and others, if you're writing code with stuff like this:
Code:
#define LINE(txt) #txt "\r\n"
#define PID_VARS(prefix) int prefix##_pid_p, prefix##_pid_d; static int prefix##_pid_i
#define MSG(fmt) #__FILE__ ":" #__LINE__ ": " #fmt "\r\n"
then you should stick with eclipse, and we all aplaud you for the work you're doing making it such a good development environment for FIRST teams.
If you're a team with less programming experience, then I'd argue that easyC can be a huge help and let you realize your goals.
By the way, another model is teams with mixed very skilled programmers and others with less experience. The experienced members might write complex C algorithms and low level code. Then the up-and-coming programmers could use easyC, importing the C code either as a library or source, then write (and understand) the high level operation of the robot using blocks.