Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
×
Programming IT Technology

Using the Ruby Dev-Tools plug-in for Eclipse 108

An anonymous reader writes "IBM Developerworks is running an article that introduces using the Ruby Development Tools (RDT) plug-in for Eclipse, which allows Eclipse to become a first-rate Ruby development environment. Ruby developers who want to learn how to use the rich infrastructure of the Eclipse community to support their language will benefit, as will Java developers who are interested in using Ruby."
This discussion has been archived. No new comments can be posted.

Using the Ruby Dev-Tools plug-in for Eclipse

Comments Filter:
  • RDT is good, but... (Score:5, Interesting)

    by MarkWatson ( 189759 ) on Monday October 17, 2005 @07:30PM (#13813050) Homepage
    ... because Ruby is a dynamic language it is more difficult for IDEs to autocomplete, etc.

    I do most of my development in Java, so I mostly use IntelliJ (best Java IDE, IMHO). However, I also really like Eclipse because in one IDE you can code in Java, C++, Ruby, Python, etc.
  • by Anonymous Coward on Monday October 17, 2005 @07:44PM (#13813114)
    block / column mode cut/copy/paste support..

    mcedit supports it (shift-f3)
    ultraedit supports it (alt-c)
    vim supoprts it (through some odd macro based extension)
    emacs supports it (obviously)

    now, not all have as nice of a support as ultraedit (my fave editor), but eclipse lacks this *BADLY*.
  • by hutchike ( 837402 ) on Monday October 17, 2005 @07:53PM (#13813170) Homepage Journal
    I agree. Auto-complete is the one thing that we could really do with here, but is sadly lacking. Sure I can press Ctrl+space and get a Ruby language list, but I really want to see methods available on the current object. This is not possible today. Having said that, RDT is WAY WAY better than the alternatives. Having installed Mondrian, Scite and FreeRide, RDT on Eclipse blows them all away. Regarding RadRails, yes it's nice but it's not a huge leap forwards from RDT - it just adds server start/stop in a new "Rails" perspective. Here's a toast to Ruby as the Web 2.0 language of choice for rapid and happy web development!
  • Re:RadRails (Score:4, Interesting)

    by Trejkaz ( 615352 ) on Monday October 17, 2005 @08:13PM (#13813268) Homepage

    RadRails is great, but the setup is a bit of a pain in the butt. I have to tell it where Ruby is, for instance... something it doesn't even need to know. It could just run "ruby" and let the path take care of it.

    But anyway, any steps towards autocompletion and automated code refactoring for Ruby are fine by me. And moving into an IDE which is capable of these things is a step. :-)

  • Re:trollish comment (Score:3, Interesting)

    by JLyle ( 267134 ) on Monday October 17, 2005 @09:48PM (#13813711) Homepage
    I know you're just trolling (and being honest about it), but I just got back from the fifth annual Ruby Conference. The attendance at this year's conference was three times what it was at last year's, due in no small part to the success of Rails over the last year. The latest Rails book, Agile Web Development with Rails, is hovering around the number two spot on Amazon.com's list of popular "Computers & Internet" books. I'm told that they've sold some 20,000 copies of the book since it was published in July. So, apparently, someone cares...
  • Re:trollish comment (Score:2, Interesting)

    by meatball_mulligan ( 633993 ) * <r_mexico@comcas[ ]et ['t.n' in gap]> on Monday October 17, 2005 @10:11PM (#13813813)
    Actually, I think Ruby might just be picking up some steam, thanks to Rails. David Heinemeier Hansson won the "Hacker of the Year" award at OSCON for Rails. Just about every week it seems like I see a new article in this magazine or that one about it. Ruby has surpassed Python in Japan. Who knows?

    m.m.
  • by Mustang Matt ( 133426 ) on Monday October 17, 2005 @11:15PM (#13814102)
    One cool features in Ecipse's native mode is when you click on a variable it highlights every other instance of that variable within your current source. I haven't seen any other IDE's do this and the PHPEclipse plugin doesn't do it either. Does this plugin for Ruby-on-rails support it?
  • by Mechanik ( 104328 ) on Monday October 17, 2005 @11:32PM (#13814166) Homepage
    You forgot CDT Project [eclipse.org] for C and C++ development. The project is growing in popularity to the point where we're having our own developer's conference in a couple of weeks, totally separate from EclipseCon.

    It's starting to seem like everyone and their brother that's doing a C/C++ IDE is standardizing on CDT. If the trend continues, perhaps one day we will unseat Visual Studio as king of the heap, although there is a long way to go still.

    The most important thing I can say, regardless of your language of choice, is to grab a keyboard and lend a hand, if you're able, to your favourite project. Eclipse (and CDT especially) are community driven, and the best way you can help these tools succeed is by giving us some of your spare cycles, even if it's just filing the bugs that you find. If you submit patches for them along with the bug report we'll love you forever :-)
  • Re:Ruby..... (Score:4, Interesting)

    by Samus ( 1382 ) on Monday October 17, 2005 @11:48PM (#13814238) Journal
    You know, I tried Python for a while. It really is nice with the builtin data structures and the slicing and dicing that you can do with sequences. The whitespace thing is kind of annoying. I like having {} or do end or begin end markers around my code blocks. I think it is one feature that they Python community should just give up on. It really is holding the language back. For example it can't easily be embedded into web pages (has it been truly done at all?) because of the whitespace issue. Just about all of the popular languages out there that can be used to generate web pages just use the language itself for embedding. I remember back in 2000 using the Python ASP integration on windows to embedd Python and it wasn't much fun. Another thing that bothered me about Python were the core modules. They just didn't seem consistent and as well structured as what Java uses. Sure there are weird things in weird places in Java but overall I prefer the class libraries available to Java over the Python ones.

    I'm currently giving Ruby a shot implementing a little project and so far I find it ok but the syntax in Python or Java definitely seem cleaner. Having to use punctuation to help the compiler|interpreter figure out scope (think @'s in front of variables for object vars) is just plain lazyness on the part of the authors.

    The last thing I'm having trouble getting over is the dynamic nature of the languages. Static typing seems to be such a nice warm cozy safety blanket that it is hard to give up. I see where it can be powerful and useful and allow you to take many shortcuts. In fact much of Rails would be impossible without the dyanamic typing and openness of the class structure, but I miss the static class definitions when working with my model objects. It gives me a weird feeling to have to look at the tables themselves so I can figure out what the attributes on my obects are. Yes I know DRY...

    It'll be an interesting next few years to say the least. Maybe Ruby will be the next big thing or maybe something else will. I for one would like to see a revamped Python that took the things they did right and fixed the things they did wrong. Perl 6 anyone?
  • Re:Ruby..... (Score:3, Interesting)

    by afd8856 ( 700296 ) on Tuesday October 18, 2005 @01:11AM (#13814618) Homepage
    Python encourages good programming practices.
    Among other, indentation, always document, short code modules, and best of all DO NOT EMBED CODE IN WEB TEMPLATES!
    Take a look at ZPT (and possibly Kid) if you need to understand why you shouldn't do that. (they succesfully survive round tripping through HTML visual editing, generate only valid html, etc.)
  • by Anonymous Writer ( 746272 ) on Tuesday October 18, 2005 @04:51AM (#13815314)
    Anything on Forth? I heard of a language module [apple.com] for BBEdit a while back. Just curious because of this article [slashdot.org] that came out some time ago .
  • by TerrapinOrange ( 805326 ) on Tuesday October 18, 2005 @08:58AM (#13816258)
    Have you actually tried Ruby? I mean, gave it an honest to goodness chance.. say a dozen or so hours of coding and perhaps the first few chapters of a good reference book? I just find it really hard to believe than anyone who actually knew Ruby's syntax would call it disqusting. It is, by a fairly wide margin, the nicest language I've ever used. Everything is incredibly easy and intuitive. If I don't know how to do something, I can usually guess it on my first or second try, and it makes it so easy to write reusable, modular code that it's stupid not to, even for what appears to be a throwaway program.

    Ruby is hugely productive. Pretty much everything I've ever wanted to do requires less code, less configuration, and simply less hassle than in every other language I've used.

    Now, this is mostly evident when compairing to more traditional statically typed languages like Java and C#, but Ruby's has plenty to offer folks who already use agile languages like Python or Lisp. Ruby has an easy to use and powerful package managment system, Gems. An excellent build tool, Rake. RDoc, a powerful JavaDoc like documentation system. Rails, which is probably the most productive web devleopment platform on the planet. Watir, a web scripting system that makes functional and system testing a breeze. MouseHole, a really slick scriptable proxy. Two extremely well written, freely available books: the first edition of Programming Ruby, and Why's Poignant Guide. An extremely helpful user community. The list goes on and on.

    Maybe you should be asking yourself why you dislike Ruby so much, rather than why everyone else likes it. That's not to say that everyone should like it as much as I do, but I suspect you're missing something important.
  • I have made it something of a crusade to try out as many languages as possible and not pre-judge their usefulness and capabilities. I have recently been using Ruby very successfully for some small scripting projects. I've found in the process that, although there are some things about it that drive me crazy, for this kind of task (file filters, modeling some data structures with a test script built using RubyUnit, etc.) I like it far more than Perl or Python. As far as I'm concerned, it is the logical successor to Perl. This doesn't mean I think there is no room for improvement in scripting languages, but just that Ruby's advantages already make it so I never want to look at a Perl script again.

    What I like about it:

    - Being able to leave off unused parentheses and chain together method calls like a_string.chomp.each... allows putting together complex file filters really, really quickly!
    - Nice use of iterators in just about every place it makes sense
    - Flexible post-statement "if" and "unless"
    - Faster than one might expect for a fully interpreted language
    - Reasonably good display of syntax errors (better than some)
    - Far more consistent syntax than Perl, but makes easy a lot of the same things that Perl makes easy
    - Excellent regexp support
    - Extensive library
    - (Most of the time) "it just works" -- an awful lot of my code ran perfectly on the first try, even though I was a Ruby Nuby.
    - "More than one way to do it"
    - "Everything is an object"
    - Duck typing
    - Support for continuations

    What I dislike about it:

    - Gratuitous spelling of "elsif" (When switching languages a lot, it is really frustrating to have to constantly remember whether I need to use "else if," "elsif," or "elif"
    - Syntax doesn't seem to lend itself well to a formal grammar; too much context-sensitivity in parsing
    - The last time I looked at the source it was hideous pre-ANSI C implemented with horrifying preprocessor abuses; this may be fixed now.
    - The closure syntax is awkward and seems limiting to writing in a truly functional style - I want to be able to pass functions around like any other object, make functions that receive multiple functions as parameters, etc., without extensive additional syntax. (Caveat: I am still learning Ruby's peculiarities, so some of this may be doable, and my difficulties may stem from surface syntax issues and the confusion over the ways it is different it is from, say, Scheme, Dylan, NewtonScript, Self, etc.)
    - Conventions for spelling variable scopes such as globals are enforced rather than just conventions
    - Not quite multi-paradigm enough for my taste (why can't I work with plain functions, for example, instead of everything's-a-method?)
    - Support for methods on singletons didn't do what I expected (but maybe I misunderstood)
    - No compilation to machine code or C
    - Duck typing doesn't seem consistently applied in the libraries

    Anyway... I am a big defender of the principle that one should know many programming languages and use the one best suited to a particular task. I also not truly an experienced Ruby programmer yet, but so far my experience has been pleasant enough that it makes me want to use it wherever it is appropriate.

8 Catfish = 1 Octo-puss

Working...