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."
RDT is good, but... (Score:5, Interesting)
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.
Re:What doesn't Eclipse do? (Score:1, Interesting)
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*.
Re:RDT is good, but... (Score:2, Interesting)
Re:RadRails (Score:4, Interesting)
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)
Re:trollish comment (Score:2, Interesting)
m.m.
Does this support dynamic variable highlighting? (Score:4, Interesting)
Re:What doesn't Eclipse do? (Score:3, Interesting)
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)
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)
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.)
Re:What doesn't Eclipse do? (Score:3, Interesting)
Re:Why is Ruby gaining such media attention? (Score:4, Interesting)
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.
Re:Why is Ruby gaining such media attention? (Score:3, Interesting)
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.