Shop OBEX P1 Docs P2 Docs Learn Events
Why PropGCC and Eclipse? — Parallax Forums

Why PropGCC and Eclipse?

Daniel HarrisDaniel Harris Posts: 207
edited 2011-12-15 14:23 in Propeller 1
Hello Folks,

With the recent alpha release of PropGCC, I'd like to briefly explain some of Parallax's motivation behind GCC and the Eclipse IDE for the Propeller.

We feel that bringing the C and C++ languages to the Propeller family is incredibly important to the future of Parallax and Parallax Semiconductor. We very much recognize the need for a well understood, cross-platform, professional, and open source development suite for our goals in business and educational environments. The marriage of the GCC compiler and the Eclipse IDE will provide Parallax with an extremely powerful and flexible tool.

Of course, there is the glaring fact that C is the language of choice in the embedded development industry. Among other things, the debugging capabilities of GCC will give software developers access to a feature that has never really been natively available in the Propeller Tool. GCC also offers many code optimizations that were never able to be put into the Spin compiler.

Eclipse has so much to offer, too. From the beginning, Eclipse was developed with flexibility and configurability in mind. It is a tool that professionals are used to using and easily handles advanced features that embedded developers rely on. I'm not saying this is on the books, but there is the potential for Eclipse to be expanded to understand the Spin syntax. It can even be configured to present a different user interface for educational customers.

The mesh of these features, and more, is why Parallax chose the GCC/Eclipse combination for its Propeller development suite. When we are ready for full release, I think you guys will be pleasantly surprised at the completeness and ease of use of our new tool! :D

Comments

  • william chanwilliam chan Posts: 1,326
    edited 2011-12-15 00:29
    How does Catalina fit into all this?
  • LeonLeon Posts: 7,620
    edited 2011-12-15 01:29
    It doesn't, because it doesn't use Eclipse! :)
  • Heater.Heater. Posts: 21,230
    edited 2011-12-15 01:41
    I guess RossH or anyone else could do the Eclipse customization required for it to drive Catalina. All depends on if there is anyone who feels the need for it.
  • RossHRossH Posts: 5,512
    edited 2011-12-15 01:55
    How does Catalina fit into all this?

    Well, short answer is that it doesn't.

    Catalina uses Code::Blocks as its IDE. Given how well the Code::Blocks/Catalina combination works, I can't see why anyone would go to the effort of adding Catalina support to Eclipse - I believe it would in fact be quite difficult to do so. But integrating a new compiler into Code::Blocks is quite trivial - so naturally that's the option I chose. :smile:

    However, it is worth pointing out that Code::Blocks also suports GCC. So you don't need to use Eclipse - you really have a choice of IDEs: Code::Blocks (which will support both GCC and Catalina) or Eclipse (which will support only GCC).

    In my experience, if you're intending to use the IDE only for C or C++, you'll probably find Code::Blocks to be smaller, simpler, faster and easier to use than Eclipse. This is because Code::Blocks was developed specifically for C and C++ compilers, whereas Eclipse was designed to support all languages and compilers.

    Ross.
  • RossHRossH Posts: 5,512
    edited 2011-12-15 02:00
    Heater. wrote: »
    I guess RossH or anyone else could do the Eclipse customization required for it to drive Catalina. All depends on if there is anyone who feels the need for it.

    I did try Eclipse out when I was looking at IDEs - but just the sheer size and complexity of the beast was enough to put me off. Also, compared to Code::Blocks, Eclipse runs like a snail. But I guess some development houses will still prefer it since they need to amortize their investment in it.

    Ross.
  • Jorge PJorge P Posts: 385
    edited 2011-12-15 02:57
    I remember writing and posting a plugin for eclipse, here on the forums, that already recognizes spin files. but didn't get much feedback on it so I stopped working on it. Don't remember where exactly but its here someplace. I think I also added BS2 files to be recognized...

    EDIT:My bad, the plugin was for NetBeans IDE
  • Paul Sr.Paul Sr. Posts: 435
    edited 2011-12-15 03:41
    RossH wrote: »
    I did try Eclipse out when I was looking at IDEs - but just the sheer size and complexity of the beast was enough to put me off. Also, compared to Code::Blocks, Eclipse runs like a snail. But I guess some development houses will still prefer it since they need to amortize their investment in it.

    Ross.

    I agree with RossH 100% on this one. I have been using Eclipse (SpringBatch/Java Development) for well over a year now and what he says is REALLY true.

    I think it's great that there are rich options coming and they will help everyone grow substantially.

    The approach to expand beyond dedicated apps/dev tools taken by Parallax is commendable!
  • Heater.Heater. Posts: 21,230
    edited 2011-12-15 06:11
    Ross is right. Eclipse is big and slow and complex. It has always given me the run around when I use it for Android or the chip that shall remain unnamed here. At least in the latter case it can be excused as they have integrated a lot of specialist tools like timing analysis.
    Hopefully Eclipse can be tamed for hobby/casual users and present itself as simply as the Arduino IDE.
  • ReinhardReinhard Posts: 489
    edited 2011-12-15 08:58
    I think Eclipse is only usefull if GDB is integrated, othercase I prefer a simpler editor.

    The remote debugging feature of Eclipse is great.

    Reinhard
  • wrmiller19wrmiller19 Posts: 17
    edited 2011-12-15 09:54
    As a professional firmware engineer, I would greatly appreciate tools like those I find when developing for say a Blackfin, ARMx, or for anything from TI, HP, Intel, etc..

    This is an interesting chip, and (Spin) an interesting language. But I suspect if we design our next product with this or the Prop2, I suspect I'll write everything in C, and will need a full-power IDE

    Bill
  • BigFootBigFoot Posts: 259
    edited 2011-12-15 10:14
    When is Parallax planning on having this product available, it sounds like just what we need.
  • Daniel HarrisDaniel Harris Posts: 207
    edited 2011-12-15 11:02
    For the educational crowd, we are aiming for simplicity in the IDE. We should have one click compile/run and easy device configuration.

    Bill and BigFoot, it is good to hear that this is the kind of tool you are looking for as developers. We really want to get this thing right. As a tentative release date, we are shooting for May - June for the 1.0 release. I believe we can firm up that estimate once we are into beta stages, which should happen in about 2 months.
  • wrmiller19wrmiller19 Posts: 17
    edited 2011-12-15 11:43
    Excellent! Once the IDE/GUI is in place I will be very interested in spending time with this. Just downloaded Catalina and will be playing...er...running some benchmarks to see what kind of performance gains I can get using C vs Spin.

    Bill
  • ersmithersmith Posts: 6,099
    edited 2011-12-15 13:21
    wrmiller19 wrote: »
    Excellent! Once the IDE/GUI is in place I will be very interested in spending time with this. Just downloaded Catalina and will be playing...er...running some benchmarks to see what kind of performance gains I can get using C vs Spin.

    Although it does mean using the command line for now, it might be worth getting the propgcc alpha and trying it out for benchmarks too. GCC and Catalina are very different compilers, and have quite different performance characteristics and goals. For different projects you may find one or the other better.

    Speaking of performance... in -mcog mode (meaning compiling code to fit in COG memory) gcc is actually competitive with PASM. Heater has produced a full duplex serial driver in C, and I've done a VGA driver. For that last little bit of performance you'll need PASM, but for many projects C will be sufficient.

    Eric
  • wrmiller19wrmiller19 Posts: 17
    edited 2011-12-15 14:23
    Good point. Thanks.
Sign In or Register to comment.