2008Q2 Grant Proposal - Add Perl support to Netbeans

| | Comments (13)
  • Name: Sven Dowideit
  • Title: First class Perl support in an activly maintained cross platform IDE (Stage 1, project and debugger)
  • Synopsis: 
Add Perl Project, Perl Syntax highlighting, Perl Debugging and Perl Refactoring support to NetBeans (stage 1)
Name:
Sven Dowideit

Project Title:
First class Perl support in an activly maintained cross platform IDE (Stage 1, project and debugger)

Synopsis:
Add Perl Project, Perl Syntax highlighting, Perl Debugging and Perl Refactoring support to NetBeans (stage 1)

Benefits to the Perl Community:
Give Perl developers access to a first class Perl IDE, thus simplifying entry into Perl for new Developers

Deliverables:
Stage 1 is to create a Perl project support and debugger Netbeans Plugin, laying the groundwork for the later stages of integrating Perl language support.

Project Details:
The complete project can be broken into the following components:
  1. Perl Project support, with Options panel
  2. Debugger
  3. Syntax colouring and completion, with intellisense support
  4. Perl Critic, Warnings and Errors 
  5. PPI
(only point 1 & 2 are covered by this grant)

While Netbeans, and thus the basis of the Plugin are written in Java, I hope to be able to call out to existing Perl modules, such as PPI and PerlCritic as much as possible.

Project Schedule:
Stage 1 is expected to be completed within 2-3 months, with alpha and beta releases made for testing, comment and re-design along the way.

6-12 months to complete all components, each building on the work of the previous.

Bio:
I'm a Software engineer and TWiki consultant with over 10 years experience developing integrating complex development tools.

Amount Requested:
$3000-6000 ?

13 Comments

Just a comment on #3, "Syntax colouring and completion, with intellisense support".

I know it's not part of the delivery, but I would estimate that "intellisense" is about two orders of magnitude more difficult than "syntax colouring". So grouping these two together may not make much sense when it comes to project planning.


/J

I'm very happy with this project idea and think it would be great to have Perl support in such a popular editor. However, I'm wondering if it would be possible to split #3, "Syntax colouring and completion, with intellisense support" into two parts and make the syntax colouring part of the deliverables. It just seems to me that syntax colouring is a fairly basic feature for a programming editor. What do you think?

The Eclipse' extension epic have all these features that you want into NetBeans... years ago.

Another project to reinventing wheels?

I would prefer that this project will become to add more features to epic.

The Eclipse' extension epic have all these features that you want into NetBeans... years ago.

Another project to reinventing wheels?

I would prefer that this project will become to add more features to epic.

Highlighting

Yes, it could be possible to split colouring and intellesense - and I will certainly do some if I have time - BUT - after messing about with many other editor's syntax colouring, and their failures wrt unescaped quotes within regex's, and #'s that aren't comment markers, I thought discretion was in order. In the longer term, I hope to be able to use AdamK's PPP work for this, but _that_ will be a future proposal :)


Eclipse & EPIC

In all the years that I have tried to use Eclipse, I have not once had an enjoyable experience with it. It has always managed to fail to be responsive, installable or helpful to me.

I realise this is a woefully biased, unhelpful thing, but it is what has happened.

In comparison, I've found NetBeans, and its SunStudio personality for C++ pretty impressive on all my development platforms, just missing Perl support.

Perhaps it would be better to say this proposal is not re-inventing a wheel, just providing support for other Developer's personal (or comercial) preferences?

It's hard for me to get excited about this proposal. I use Emacs, and I imagine a lot of existing Perl programmers are using one of Emacs, Vim, and probably TextMate.

Big IDEs like NetBeans and Eclipse just aren't very Perl. Plus there's a lot of them, so does adding some basic Perl support to just one matter?

Why not Komodo? Isn't that open source now? Doesn't it already have a fair bit of Perl support baked in?

This project doesn't much excite me. OTOH, maybe support in these sorts of editors is the key to enticing existing Java/C++/C# programmers to check out Perl.

I'm with Dave, with this rephrasing: it doesn't excite me, because I don't care about that IDE. I can believe that a lot of people do, and some evidence would make this proposal seem more worthwhile. NetBeans is a big deal, and I imagine that having good support for Perl there would lower the barrier for entry to people who would consider using it.

Responding to the people who question the value of an IDE:

I have used Emacs for Perl coding since I learned Perl in 1999. I have been using Eclipse for Java development for about a year now. I hated coding Java in Emacs, but Eclipse is amazingly productive. The IDE features I really miss when I go back to Perl are:

* Instant (INSTANT!) access to documentation by hovering over a method or class name
* Auto-complete of method/variable names -- saves a trip to the docs when you can't remember if the variable is spelled $color or $colour

Like some others, I've tried EPIC for Perl coding in Eclipse. I hate to say anything negative about the clearly large amount of work invested in that plugin, but it just wasn't good enough for me to adopt it enthusiastically. Because of that I would be thrilled if more effort were expended improving Perl integration into existing IDEs. I admit that I've never tried Komodo (I feel a little guilty about that given all the talk time I've given to Perl IDEs...)

I would rather see more energy be invested in Komodo or EPIC than starting a new integration project, but given that there are no other IDE grant proposals this quarter, I think this proposal is worth funding.

Komodo is a non starter from what I can see - the Free OSS Komodo does not do debugging - thats what you pay for the closed source one for - and that doesn't run on any of the platforms I'm working on.

I'd love to have an IDE which is not too complex (like Eclipse) and which could attract other people to Perl as well. So this proposal should definitely be funded.
To all those 'I have Emacs/Vim/echo, I need no IDE'-people: I'm sure _you_ don't need 'em, but there are a lot of interested guys out there who would appreciate Perl support in Netbeans - and thus the whole Perl community would benefit from it.

Chris:
* You can access to documentation with Ctrl+Shift+H (call to perldoc executable with the name of class selected).
* Auto-complete. EPIC can auto-complete vars and methods (Content assist at the features page).

Sven:
You are right: Eclipse is evil application ever for installation. But, once installed, I have written projects with thousands of lines.

I think that this is a very worthwhile project.

I'm using NetBeans 6.x with Ruby/JRuby and it's great.

I tried Eclipse and some Eclipse-based Rails editor and they were both too slow and in the way.

NetBeans is a joy, however, and I use Vi/Vim and cat >> myfile all the time....

Having Perl is NetBeans would be awesome!

I really don't like to see comments like "I use Emacs" or "Big IDEs like NetBeans and Eclipse just aren't very Perl.". The first one is simply an expression of personal taste and therefore irrelevant in this context. And the latter one I simply don't understand. I'd rather say giving people yet another opportunity to code perl is very perlish (timtowtdi).

I use vim most of the time - but most people starting out with programming today grab some IDE and start there. If we want to attract new people to the perl community we should make it easy for them to experiment with perl.

Yes, NetBeans is only one IDE of many. But if the proposed project is successful others might follow ;-)

The more people we attract to perl the bigger is my chance to work with them at $job using perl. So +1 from me for this proposal.

Leave a comment

About this Entry

This page contains a single entry by Alberto Simões published on May 1, 2008 9:00 PM.

2008Q2 Grant Proposal - Solidifying and Extending the Blog Normalize project was the previous entry in this blog.

2008Q2 Grant Proposal - Perl on a Stick is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.

Powered by Movable Type 4.11