GNU Christmas Gift: Free Eclipse
Mark Wielaard writes "Your friendly neighbourhood GNU did
it again. A year ago IBM made much noise
about placing $40 million of its software tools under a free software
license. Technically these tools, called Eclipse, are great for developing
(java) software. There was only one catch, it was build on top of the
proprietary java platform. This made it useless for the Free
Software community. Luckily the GNU project has two projects that come
to the rescue. GNU
Classpath, core libraries for java, and gcj, the GNU Compiler for Java.
We are now able to run Eclipse on a completely free platform! It is
not yet complete, but you can already edit, compile and browse CVS
with it. And since Eclipse uses GTK+ it also looks very nice. I setup
a page with
instructions on how to get this working so you can help us make
it work even better or just so you can view a couple of nice screenshots."
Woo... I'm not even a regular slashdotter, and I'm first?
You shouldn't really be so excited about a free java implementation. Java itself is as free as a lot of the other components you run your IDE on, like the CPU for example... You're not running out demanding that a GNU CPU is produced so you can run your IDE in a _really_ free machine?
... that Eclipse is getting more "air time" on Slashdot. It's an outstanding IDE in its own right; the tools used to build it that you can use yourself (like SWT) are mere icing on the cake.
"Times have not become more violent. They have just become more televised."
-Marilyn Manson
I wish sun would just open up the java libraries, that would make open source java developement even easier.
X(7): A program for managing terminal windows. See also screen(1).
Does this allow IBM's SWT class library to be compiled to native code? Could one, for instance, now compile a Java program using the SWT library to a native binary using GCJ, so it could be run without using a JVM?
A development tool that is built upon a non-open architecture is "useless" for the free software community? But a sort-of-working substitution remedies the problem?
Hmm.
This is great. Hopefully Microsoft will succesfully be forced to integrate Java. The combination could help Java smother .net
FoundNews.com - get paid to blog.,
Sorry if I offended, not the intention. -jk
People authoritively claim that Microsoft will use patents to kill these efforts if they become competitive, but there is no evidence to support this paranoia, and in-fact Microsoft does not have a histroy of abusing patents in this manner (unlike another company I could mention).
IBM was the one who released Eclipse source. GNU and certainly not that wacko crackpot RMS had nothing to do with it. Very misleading topic!!
I am not sure I understand the "Not Quite Ready" comment. I have been using Eclipse as my main IDE for nearly a year and I love it. Eclipse is just the framework to build the IDE you desire. Eclipse is complete, there are just some pluggins that aren't ready yet, however they are comming along very fast. Just last night I started using the Lomboz J2EE pluggin and so far I have been pretty impressed. http://www.objectlearn.com/ Also, I get all my plugins from: http://eclipse-plugins.2y.net/eclipse/ I might not be up on all the politics of programming, but I know I didn't pay for Eclipse and no one has asked me for anything to use it. So it appears pretty damn free to me. I recommend Eclipse to everyone.
Xored Web Studio is an IDE for PHP, implemented as a plugin for Eclipse. It's on my short list to check out in the new year.
I don't see any reason.
As someone who has written several Swing based applications, I can say that Java sorely needs this kind of a shot in the arm for the client-side to be even remotely feasible.
Up to this point, Sun has ignored the client-side, and rightly so. Because Microsoft and MFC rules on the client side (on Win32). Sun exploited the server-side breach that Microsoft had ignored.
But now, Java needs to become a viable alternative to C++ based programming on the client-side. And the only way this is going to happen is for Java to have some kind of a native GUI presence on each platform it runs on. This is where IBM and the SWT libraries come in.
Currently, the SWT libraries are still immature. The Eclipse platform itself is still immature. But they will get better and better. I predict that the SWT libraries will not only get quite expansive... but include things other than GUI widgets/toolkits.
If IBM plays their cards right (and so far they have)... I can see them actually introducing more Java extension libraries for other things that Sun did a terrible job on. Collections. Better native threading model. Better I/O model. The list goes on and on.
Personally, I would have no problem with writing a Java application that only imported IBM extension libraries. As long as they were well-written, and performed well.
Sun really needs to get on the ball here. The time has come to open-source Java. Let the developers do with the language what needs to be done to bring it to the next level.
Otherwise... companies like IBM are going to do it anyways. Just using extension libraries. If Microsoft was smart, they'd have done five years ago what IBM is doing now. Microsoft would own Java on the client-side if they would have played it right.
Why not develop for GTK, if you're gonna use SWT and break x-platform-ness, AND run a java app, why not use GTK and get native 'C' sppeds ?
eclipse is crap anyway- doesn't even offer the features of emacs at 1/10th the speed.
Well, why do you use Emacs instead of vi? Or ed? Or writing to disk using very, very small magnets?
War is one of the most horrible things a human can be exposed to. And one of the worlds largest industries.
I don't think this will be a problem with the Classpath library, since iits license provides the "library exception", but in general it will make linking with other GPL licensed software a hassle.
Don't get me wrong, I like Eclipse and use it a lot. It's faster and better looking than Netbeans (plus I have no use for the GUI builder part of Netbeans), and SWT is a great idea. I'm just pointing out that there are still license incompatibilities lying around between major free software projects (remember the Python licensing controversy?), and wish that copyright holders will do something to resolve them.
Why is there a big deal about this, other than the promise by IBM and making good that promise? Anjuta DevStudio, which is one of the best GUI IDE's on Linux IMHO, supports Java. I personally havean't gotten into Java, so I could care less about this, but Anjuta is fully GPL'd already.
-- DuckWing
I think that the Java libraries will be very difficult to control fully by Sun, because they do not have IBM and Oracle to push around. IBM will absolutely not be backed into a corner by one of their main competitors in hardware, Sun. Because of that, I'm not worried about the Java APIs turning into a controlled arena, as Microsoft has done with Windows.
Basically, I think the effort of the Open Source community, of those that like Java, would be much pretty spent on making GCJ integrate seemlessly with a compliant Java VM using JNI. GCJ could used to make a just-of-time optimizer. With C# and dotNet, I think there's an ahead-of-time compiler instead of a just-in-time compiler that can optimize the byte code for the target machine. Using GCJ/GCC, one could get that sort of performance boost, almost for free, if it were plugged into a compliant Java VM, meaning that it could integrate with DLL/DSOs using the Java Native Interface.
Anyway, I, for one, would probably not waste my time using a slightly out-of-date API, on a slightly behind-the-curve VM or compiler. (BTW, I'm a heavy user of emacs, perl, mozilla, etc.) The java API, language and VM still has a LOT of room for improvement. I hope developers would rather innovate and improve the java standard than to fork off a clone.
Sorry guys, but this is seriously old news.. You can't call this a Christmass gift or anything. Our company's been using it for a year already (with a free license) and I personally have developed couple of plugins for it.
Nevertheless, this is the best tool I've used, and really, thanks IBM for doing such a great and generous job. My point is - this is not really news, and have nothing to do with Christmass.
Cheers.
http://dtum.livejournal.com
"The time has come to open-source Java."
Oh yes, because multiple different barely-working incompatible Java variants are just what we need. Fuck ISO C and ISO C++, let's all create our own languages!
Eclipse is an IDE without all the crap you usually associate with an IDE. JDE isn't bad, but it's nothing like Eclipse. Eclipse's debugging support in particular is way better than JDEs (which took me some hours to configure properly). Not to mention that Eclipse let's you do really neat things, like stop the debugger right before an exception was thrown, fix the bug, and continue with the debugging as if nothing had happened!
Blackdown JDK for J2SE and Jboss for J2EE.
it ony runs on kludge intel hardware and a kludge server OS... so its not superior.
at least some of the open source stuff doesnt run only on kludge hardware.
I'm glad Gnu is working so hard on this, because I would LOVE to have a 100% free implementation of Java, but the problem is that it is SO FAR behind Sun's JVM and classes that it's useless from a commercial standpoint. Have you used java.nio? If you have, you know that you can never go back to java 1.3 again, but Gnu Classpath has not even fully implemented Java 1.2 yet. I hope they can catch up to the quality and completeness of Sun's Java. I am much more interested in this than in MONO. I know that MONO is going to get destroyed by a "reasonable and non-discriminatory" patenting license issue a year from now.
Ok, go out on a bright day and hold up a penny in front of the sun. it workszzzgzgzg zg gzgz
For those not wanting to bother following the link the latest update was on the 20th of december and it's that story that was covered on slashdot saying they want donations again. That's it. Parent post is a lie.
Have a look at IDEA by IntelliJ. It is by far the best Java IDE that I have ever seen. The more you use it the more you will be impressed with how useful and powerful the features are, and it is cheaper than JBuilder.
Ok, because, we don't agree with your stance we're zealots now? Whatever happened to free software advocates?
I have lots of doubts with .NET because it's from Microsoft. I don't think my concerns are unfounded. They've done enough in the past, now they arouse my suspicion just by them twitching.
How many times does a person have to screw you over before you stop trusting them? Similarly how many times does a company have to resort to shady tactics before you decide that it's probably in their corporate culture to do so.
My arguements against .NET are not technical, other than I don't think it brings enough to the table to warrant much of interest. It's mostly that sooner or later MS will find a way to screw open source interest with it.
Based on upvotes, Ageism is the only "-ism" Slashdotters care about and think isn't SJW
I wish there would be Qt bindings to java as a swing replacement for various plattforms.
It's obviously very important to the people behind this project that we have a free (as in GNU definition) implementation of Java. While they can espouse as much philosophy as they like, why is this practically important? Or rephrased;
What's the worst that could happen if everyone uses non-free Java?
Engineering Careers Short-Circuiting
No, no, you must be mistaken. Didn't you read the posting? It clearly says "This made it useless for the Free Software community". Now I, for one, don't think you would be using a tool for nearly a year if it was useless!
Well, I do suppose that it says for the Free Software community. Now, what the f*ck difference that makes I'm not sure. Haven't read the Eclipse license that closely, but does it say you can't use it to develop "Free Software"?
What's the difference between using GCC to compile ones Java apps, and using GCJ?
C - A language that combines the speed of assembly with the ease of use of assembly.
If you define the "Free Software community" as the zealotous 5% of free software users who refuse to use software that hasn't been blessed by RMS, you're right.
For the rest of us, Eclipse has been useful (and free and open source) for over a year.
Unfortunately, the liberal pansies in the ACLU complain about cruel and unusual punishment.
Do you even lift?
These aren't the 'roids you're looking for.
actually, the -C flag generates java-VM targetted object files. -c generates native object code.
Do you even lift?
These aren't the 'roids you're looking for.
Not to mention that Eclipse let's you do really neat things, like stop the debugger right before an exception was thrown, fix the bug, and continue with the debugging as if nothing had happened!
Heck, even Visual Basic has this. I got used to it, and I've been disappointed that I couldn't get it elsewhere. It's quite nice.
Was that the sound of a major bitch-slapping or what?
"There was only one catch, it was build on top of the proprietary java platform. This made it useless for the Free Software community."
There is plenty of java code that has been released under the GPL and BSD licenses. The only way that java would be useless to someone is if they turned their nose up at it. Turning one's nose up at something for non-technical reasons is usually a bad idea.
Lee
Muslim community leaders warn of backlash from tomorrow morning's terrorist attack.
I've been following both of these projects for years.
The point that so many have missed is that this shows how close the GNU implementations are to be being a complete JDK replacement. Eclipse is a very complex beast that uses nearly all of the Java APIs. This achievement shows the quality of the years of work that has gone into these free projects. All of this work is now finally ready to pay off.
Congratulations to the whole ClassPath and GCJ teams!
-Avery Regier
Does it do C/C++? Shouldn't the compiler be gjc not gcj? Isn't blackdown already free/open or am i missing something?
Regular or not, you still didn't get the first post. Now get out of my office! NOW!
I hate anonymous coword too.
I predict that the SWT libraries will not only get quite expansive... but include things other than GUI widgets/toolkits
;)
SWT library already does include GUI widgets/toolkit.
You are right though, saying that it is immature. We've been doing some serious development on SWT trying to convert full featured application from AWT to SWT. So far it's been going great.
However, here's a warning for all of you Java developers: there's quite a few things you still can't do. All Table work is a terrible hassle, there's no easy way of changing colors in single table cells and table functionality is very, very limited. We were able to improve some of that, but that actually ment implementing our own widgets for table. Anyways, it is pretty bad. Hopefully in 2.2 version (next year) they will solve some of the problems.
If anyone from Eclipse development community is reading, please, focus more not on the new features (cheat lists, wizards and stuff), but try to actually make SWT a reacher platform, there's a lot of work that needs to be done.
At the end, I wanted to summarize my opinion of SWT, which is not really what this topic is about. But here it goes: it is a great platform and a great concept (using native libraries and not drawing everything like Swing does). And you are correct - this will/could be Java's savior on the client. But anyone who would want to write a serious application in SWT should think twice before that, wheigh down all pros/cons and also try writing a prototype to make sure that it you can implement anything that you want.
One of the biggest innovations of SWT is a library called JFace, which hides a lot of basic/low level GUI functionality under an interface that is sort of a Model-View-Controller framework. This idea is brilliant, and this framework is just a pleasure to work with.
Anyways, enough with the rambling.. Happy Christmass, everybody!
http://dtum.livejournal.com
Uh, that made no sense. Time to turn off Rush for a couple days.
It has been removed from VB.NET.
1) SWT seems like a cool idea, but with its close coupling to Windows (Windows is the farthest along -- the other bindings seem to be "under construction"), how is this different than (gasp, choke, gag) J++? 2) Can someone point me at how to get started in Eclipse? The menu and dialogs seem completely non-standard -- where do I begin with this thing?
>> SWT library already does include GUI
;-)
>> widgets/toolkit.
I appreciate the comment, but I thought I'd point you to what I said...
I predict that the SWT libraries will not only get quite expansive... but include things other than GUI widgets/toolkits
Basically, what I was saying is that SWT already has GUI/widgets (which you confirmed), but that it probably will be more expansive to include other classes which help GUIs perform better.. but aren't actually widgets. Such as better thread management. Better data structures/collections. Etc.
That's what I was actually saying.
I guess not many people have looked at J++, but if you have a chance, you will come away with a strong, strong sense of deja vu with regard to Visual Studio .NET.
I've written quite a few Swing & server-side applications myself.
.NET. And Visual Basic rules on the client Win32 side, and has for quite some time.
.NET first. WinForms.NET is effectively the next iteration of what was out in Visual J++ 6.0's WFC libraries.
"Microsoft and MFC rules on the client side (on Win32)".
MFC is dead, long live
"But now, Java needs to become a viable alternative to C++ based programming on the client-side."
Absolutely not. Java's only main competitor for Win32 client-side supremacy is VB.NET and C#.NET. C++/MFC is a dead-end.
On UNIX, I would suggest it's a toss-up between C++/Qt and C/GTK, and IMHO I think Java's more productive than either (though pre-1.4 X-windows Swing performance was unacceptable).
Sadly, this doesn't seem to be a battle that Java will win on Win32, even with SWT, for a couple of reasons. Microsoft has the industry's talent in developing high-performance Win32 GUI framewords, which will come out for
They also have the tools support with Visual Studio. The Java world currently has only *ONE* usable GUI building tool -- JBuilder. And that's not saying much. Eclipse won't have one for some time. The second major problem with Swing (besides performance) was this lack of tools support. I don't forsee a groundswell of tools support for SWT from multiple vendors.
Thirdly, there isn't a whole lot of impetus behind client-side "thick" GUIs in the industry. I don't foresee IBM throwing lots of money at making SWT general-use... the open source community will probably assist in this area, but I'm somewhat skeptical about how much adoption this will generate.
On the bright side, I'm not sure it really "matters". Windows peeps will write stuff with VB like they've always done, the C++'ers will switch to C# (they've really not much choice -- I worked at an MS shop as the Java junkie for 2 years, most C++/Windows programmers there took what MS has given them... there's a lot of shock and dismay when Borland/OWL is on one's resume). The 2nd most widely used GUI framework family will be (gasp) Carbon/Cocoa on Mac OS X. ANd rounding out the list, *nix peeps will continue head-butting between Qt and GTK+ (both of which are still gawdawfully ugly IMHO, quite apparent actually if you run a GTK+ app side-by-side with a Mac OS X application. But I digress).
"I can see them actually introducing more Java extension libraries for other things that Sun did a terrible job on. Collections. Better native threading model. Better I/O model. The list goes on and on."
Whoa, whoa! I disagree with each one of these. We are talking about J2SE 1.4, are we not? I'm quite happy with the collections framework (and I compare this to both stdc++ and the Smalltalk collections library), the java.nio.* package is very sophisticated, and IMHO the threading model is a matter of taste, not stemming from any particular technical disadvantage.
-Stu
I thought they were giving me a car :(
.cig - what you do after winning a good flame war
The GNU folks had no hope of recreating a cleanroom AWT and Swing - it was just too bloody big and complicated. It would have taken at least 4 years to create a cleanroom Swing. Then along comes Eclipse/SWT which did all the hard bits for them in C. The result - a portable and very fast Java GUI. Now folks have a very good reason to work on GCJ because they can finally see some concrete results. Success breeds further success. .exe if you will) is a HUGE advantage for distributing applications. That 20 meg JRE is a complete pain in the butt for a client to download. It's much better to simply run a 5 megabyte GCJ-compiled application.
Compiling your application to a single binary (or
Java doesn't suck. Java's GUIs need not be slow. It was Swing that sucked. Finally people realize where to lay blame.
Sun - get rid of Swing once and for all! Swing is a poorly designed GUI tookit and a complete embarassment to Java.
I just need to get another "Java sucks" comment in.
Boy, Java sure does suck!
WTF is the deal with the 10 million different classes (class Dimension for example) but that weird seperation between the base classes (int, etc.) and the real classes (Integer)?
Sorry, but Java is seriously screwed up. And to use the many zillions of classes all over the place just slows it even more. Destructors that don't always run? What is up with that?!
Oh my, Java just sucks.
Ohwell, back to my C/C++, C#, Perl, Erlang, and O'Caml world.
Sadly there is no perfect language. C# is not bad but for many things it is much slower than C++ (at least the MS C# compiler/JIT is). Plus, AFAIK, there is no good C# compiler for Linux and/or OS X.
The D programming language shows some promise, but it's basically just one guy doing everything and sometimes he has weird ideas about what is good. Plus the D stuff is not true open-source (no good Linux/OS X compilers either).
Erlang and SML are pretty good functional languages but produce very memory hungry and slow proggies. O'Caml is better speed-wise but has a fscked up syntax (yes, I know you can change it, but that doesn't fix other people's code). Plus, in general it is extremely difficult to produce fast (as C/C++) code in a functional language. You can do it in O'Caml but it's tricky and can be painful so you end up spending more time on things than if you just used C/C++ in the first place.
So another GNU team has almost managed to replicate the work done by the Blackdown team 4-5 years ago.
Meanwhile the GNU team has almost managed to release a kernel.
On the sidelines, Wine has almost enabled cross-platform execution, provided you don't want to do something so uncommon as opening a file picker!!! (I mean, come on! I can play video games, but I can't pick an input file to open with a utility program?)
Lately I see a lot of "almost" me-too projects, but I'd be a lot more impressed if they didn't start celebrating until the damned things worked.
Eclipse is free and pretty nice (need to try it again -- it was rough when I first looked almost a year ago.) Sun's SunONE Studio 4 is ok, too.
My favourite remains JBuilder, but I just can't afford to upgrade anymore (paid full price for 3.0, paid for the 3.5 upgrade, the 4.0 upgrade, and realized I'd spent over $2000 with no end in site.)
Despite all the fancy IDEs out there, I still do the bulk of my editing with vi(m), emacs, and text tools, then debug and fix in an IDE. I've yet to find a Java (or C++) IDE whose editor is more than barely usable. But that is another rant...
I do not fail; I succeed at finding out what does not work.
Uh that's EXACTLY what Microsoft did! Extentions for COM, the WTL, delegation event model, etc. And what'd they get for their trouble? A lawsuit from Sun!
sucks, because everyone is always giving links to screenshots. Almost as if Linux needs to prove that it even has a gui.
"See, I told you my dad played pro football, this picture proves it."
No, I think VB should be cast out into the depths of hell from whenst it was created.
.NET, it is much, much, better than Microsoft's prior technology platform (DNA, "we put the COM in COMplex"). They've created a high quality framework and platform. I wouldn't say it's vastly superior to Java, but it's certainly competitve in some areas (not in others).
But it still is the most popular client-side language in the world.
Regardless of the politcial debates surrounding
-Stu
AWT/Swing doesn't have or need bindings because 1) they are 100% Java or 2) to the extent that they are not 100% Java and need to JNI down to something, that something is distributed with the Java VM that appears on each machine, so you don't need to distribute any platform specific AWT/Swing bindings with your app.
SWT needs separate bindings for each target platform -- it becomes like wxWindows or Qt in that regard. If you want to distribute an SWT app, you need to distribute those bindings, or tell your users how to install the right binding on their machine. But then you are into a bindings model rather than a true "write once, run everywhere" model.
My remark about J++ may not be completely off the mark. To the extent that C# is in reality J++, and that WFC was transformed to System.Windows.Forms, and to the extent the Mono is going down the bindings road to port System.Windows.Forms (to answer your question, 2002 - 1997 = 5 years to get Linux and Solaris versions of WFC), and to the extent that Miguel gets lambasted for doing what he is doing, why should Eclipse/SWT get a free pass for doing a similar thing with Java?
Reading the posts here you've mentioned .net more than eclipse or java for that matter. Apparently Microsofts marketing machine be verkin. Ya.
Uh that's EXACTLY what Microsoft did! Extentions for COM, the WTL, delegation event model, etc. And what'd they get for their trouble? A lawsuit from Sun!
Not quite.
IBM can do exactly what Microsoft with regards to making a native GUI and not be sued because:
1. IBM has not been ruled a monopoly
2. IBM also supplies Swing and AWT without modification and does not change the JVM.
3. SWT tries to be platform independent
Java is java. It doesn't matter if it's free or not. It will still have the same APIs and bytecode interpretation or it will not be java. The whole point of java is the compile once run everywhere thing. Eclipse will not be able to distinguish between a free java or a Sun propriatory one.
And all free code developed in Eclipse can be used in a future free java version. If somebody developed a propriatory java processor in silicon, would Eclipse still be useless? Saying Eclipse is useless for free development is like saying Linux is useless on the Intel platform because the Intel microcode isn't free.
God is REAL! Unless explicitly declared INTEGER
Any developer who uses it, will never want to work with any other IDE again. And second of all, everybody thinks just because SWT uses wrappers for native widgets that its faster, that is bullshit. Swing is actually a very functional GUI Toolkit if used properly, just like any toolkit and any language. Develop with pleasure
For those not wanting to bother following the link the latest update was on the 20th of december and it's that story that was covered on slashdot saying that they've run completely out of money and are begging for loose change. That's it. Parent post is a lie.
This message is brought to you by the SLASHDOT PROPAGANDA ALERT system. This is not a drill.
This post has triggered the SLASHDOT PROPAGANDA ALERT. This automatically generated alert message was triggered by the phrasein the parent post.
The SLASHDOT PROPAGANDA ALERT exists to identify and eliminate collectivist propaganda and misinformation. The SLASHDOT PROPAGANDA ALERT database includes over 6,500 deceptive and misleading phrases that are commonly used by collectivists, along with their definitions. Don't be fooled!
The phraseusually meansThe phrasehas been given a propaganda factor ofThis message was brought to you by the SLASHDOT PROPAGANDA ALERT system. This has not been a drill.
-----BEGIN PGP SIGNATURE-----
Version: 2.6.2i
iQCVAwUBMNdrTih9+71yA2DNAQH9sQP/aWGDwRG
8zXBldNrbGC1s0h4U//G/WPNvWeF4Llr7
WSqHDEQfCwRgiOJc4sw3GA9r7/HYcwi81
RztMITIV7is=
=wZf1
-----END PGP SIGNATURE-----
Code once, debug everywhere. Although, to be fair, is that still the situation or has it improved since I last dabbled?
To make laws that man cannot, and will not obey, serves to bring all law into contempt.
--E.C. Stanton
Because Eclipse is quite frankly aeons ahead of Emacs + anything.
"1. IBM has not been ruled a monopoly"
No but it was close to that point.
"2. IBM also supplies Swing and AWT without modification and does not change the JVM."
Ah I see so MS should be forced to bundle whatever extra crap is not needed and actually detracts from the product.
"3. SWT tries to be platform independent"
Versus fitting in with the envirnoment it is running in.
Aside from point one the whole thing has little merit, and as far as I can see SUN has it's own monoploistic feifdom in JAVA. Frankly SUN has used to the power or antitrust law to ram a product down the majority of peoples systems that they do not want and do it with no cost to SUN.
Despite this though I bet that JAVA is doomed under Windows regardless of the ruling. Oh sure it will be there, but aside from a small number or services and sites, eventually though most users will not ever encounter it. That will be a shame but it will be SUN even with extra benefits falling on its own.
Here are some things you can't (easily) do with Emacs:
(1) Automatically generate getters and setters for private variables. This saves a ton of typing.
(2) Move a static method from class Foo to class Bar and have all references to that method updated throughout your project. Likewise, you can rename any method, class or variable and Eclipse will change all the references to it. I find I am much more likely to refactor if I can easily change names without having to go through and fix 92 compile errors in 12 different classes.
(3) Roll back to a previously saved file. You can configure Eclipse so that every time you hit save, it keeps a copy of that saved file. If you need to rollback, you can visually diff your most recent file against the previously saved versions, as sorted by timestamp and rollback to any one of them, even if you haven't checked it into CVS. The visual diffing tool is the best I've ever seen.
There's lots more, but you get the idea. Vi or Emacs is good. Eclipse is a bit better and worth the download.
Anthony Fodor
Was this an example of embracing or extending?
Sun's first lawsuit had nothing to do with whether MS was a monopoly or not.
Doesn't anybody pay attention to robots.txt anymore?
"useless for the Free Software community"? Are people stupid or what?
"Geek" used to mean "smart" back then... now it's more like "poor dork".
If they're sooo worried about Eclipse not working on a free SDK, why on earth have they NOT written a usable substitute for the Mozilla/Netscape Java Plugin? Mozilla has FAR more exposure than any IDE.
From your explanation, this sounds a lot like how Tkinter is for Python.
I really hope that the gcj effort manages to implement all the classes of the standard Java API and above all that the compilation to binary becomes a reality for all Java developers. The implied importance of it being GPL is not that important to most of us who actually do use Java, the limitations, lack of AWT, Swing or a full SWT, memory consumption and speed are much more important. I wish I had the time so that I could work on this myself, because this would provide Java Developers the possibility of finally writing GUI code on Windows, Linux and Mac that could compete on a level ground with C# and .NET.
.NET and C# might be easy to use and very powerful, thereby providing the "carrot"for many developers, but I think it is naive and irresponsible to think that MS will play fair. Have they ever done so before?
I can already see problems arising with Mono in that I simply don't trust MS not to try and kick it in the balls with a patent suit after it has started to become widely used.
Java is easy to use and secure, and at the moment, on cellphones which have Java bytecode instruction sets in their CPU's, is anexcellent opportunity for expansion. Cellphones are a booming market and present a real chance for Java on the client side with J2ME. Being able to compile to native code would make it even better suited for that purpose. MS knows how important the Cellphone market is which is why they are up to their tricks and abuse there again (Sendo) and which is why almost all Cellphone makers are giving MS a wide berth and are using Symbian, which brings the story back to Java...
the recent court ruling to bundle unmodified Java with Windows did however.
IBM will likely purchase Sun within 2 years anyway and all this discussion will be irrelevant.
To the previous responses, I add why am I abandoning Emacs in favor of Eclipse:
Because it wasn't created in 70s by a bunch of AI scientists whose notion of useability never came beyond "ability to use the thing over a serial terminal via arcane keyboard manipulations". You may point at the recent Emacsen that grew to implement modern UI concepts with various degree of success, but the core is still there, rearing its ugly head at every other wrong keystroke (recursive minibuffer editing? Huh? Let me out!).
Secondly, because the underlying platform is 1) relatively unpopular; 2) didn't advance anywhere since early 90s, let alone nurturing a coherent development culture around it. Say what you will about Lisp, it doesn't cut it at programming modular IDEs as much as Java does. And it starts to show with Eclipse plugins.
My exception safety is -fno-exceptions.
.NET is one of many things, depending who you talk to in Microsoft's marketing dept. First I'll define that. Forgive me if it's review.
.NET: C#, VB.NET, C++.NET, and JScript.NET. C# is first among equals, but VB.NET can do anything C# can do, again because the CTS/CLS is "the language". .NET just gives you a syntactical skin on top of this abstract language.
.NET good at?
.NET could be seen as the next step in evolving binary interop. I.e. in DOS, it was TSR's and interrupts, in Win 3.1/*nix it was DLL's and pointer-tables, in Win95+/Gnome/KDE it was COM or CORBA components, and in .NET, interop is at the CLASS level. They've basically learned the Java/JAR model of interoperability, then abstracted it to multi-languages (they just call JAR files "assemblies")
.NET makes all languages equal. This was painfully NOT TRUE in COM programming! Almost all of the plumbing underneath COM was to support Visual Basic's interoperability with C/C++ components. .NET levels the playing field here, and people can't pick on VB anymore (other than its cheesy syntax). Anyone can throw an exception in C# and catch it in VB, or define a class in C++ and inherit from it in C#. And debug across all these languages in a single session, if need be. Quite liberating for system architects dealing with a large, multi-team project with reusable components and potentially different skill-sets (hence different languages).
.NET DLL's that are better than traditional Win32 COM DLL's: .NET uses it, sing the praises!
.NET is CHILD'S PLAY compared to some other platforms. Especially with Visual Studio. They've really made distributed interoperability easy -- though of course none of this will scale or be bulletproof without real engineering work, but that's never been Microsoft's game -- let J2EE vendors do the dirty guinea pig work, they'll copy it into Windows/IIS eventually.
.NET really is about making Windows developer's lives A LOT EASIER. Which really was all that Visual J++ 6.0 was about before they decided to "break" features for political reasons. .NET is appropriate as a new standard for dynamic languages like Smalltalk, Lisp, Haskell, ML, etc.
.NET but you have to contort it into classes & methods if you want to interoperate with any other .NET language... this is what the C++ people have to do too! (i.e. no more templates, multiple inheritance, at least until .NET 2.0 :) .NET isn't the second coming, though many Missy-followers think it is because their intranet is locked to http://msdn.microsoft.com and really don't have a lot of exposure to the alternatives out there (i.e. J2EE or perhaps PHP, Python, Ruby, etc.)
Here's the things that it isn't (in reality):
- A new server platform (MIcrosoft marketed it as such, even though there really isn't anything new in their Windows 2000 lines of servers yet).
- A some new magic technology (i.e. the marketing idea that MS Passport became Passport.NET and thus was embued with a +6 long-sword)
Here's what it is:
- The common type system, language spec, and language interface. (CTS, CLS, and CLI). It's a way of getting several languages to interoperate through a virtual machine.
- The Common Language Runtime (CLR) for Win32. This is the Virtual Machine. It's as fast as Java 1.4 in some ways, slower in some ways, and over 2x faster at certain operations like object creation. Ya gatta hand it to Microsoft's x86 team, they know their stuff.
- The following languages are released by Microsoft for
- The Base Class Libraries (BCL), ASP.NET, COM+ (aka Managed Components), and ADO.NET are included.
- The ECMA standards body has been submitted the CLI, CTS, CLS, BCL, and C#. Mainly for show, but maybe something good may come from Miguel et al.
What's
- It's a much better way for binary module interoperability than COM was. Viewed this way,
The language-interop issue at first glance seems like a red herring feature, but in fact it's rather important from a programmer's sociological perspective. VB and C++ programmers are naturally opposed to each other in philosophy - their means and ends do not peacefully coexist.
Things you can do with
- The Windows Registry is NO LONGER NEEDED. Nothing in
- Easy and Flexible Side by side versioning. An app that links against a version stays with that version unless updated or a sysadmin coerces it to use a newer DLL version.
- No filename conflicts (i.e. no 2 vendors with MYSILLYLIBRARY.DLL overwriting each other -- each DLL has a public key stamp)
Other things... Making web services in
So -- you see,
The jury's still out as to whether
I say it's more about "syntax skin" than "flexibility". Certainly you can write Lisp onto
-Stu
(1) Automatically generate getters and setters for private variables. This saves a ton of typing.
M-x jde-gen-get-set
Bind that to a key if you want, but it's trivial to do and it will automatically put the type (it prompts you for it) and will add the stub Javadoc.
I use both Eclispe and XEmacs/JDE depending on where I'm at and what I want to do. When I'm on my (WinXP) laptop I exclusively use Eclispe. On my Solaris desktop, I use JDE 99% of the time. However, like your point #2, whenever I want to do any refactoring, no matter how small, I always use Eclipse as it is great at that and like you, I noitce I do it more when it's easy (which does make the code better).
Maybe you have books to recommend. Please provide any helpfull info you got (libraries to suggest, tricks, etc...) that would help a newbie to jump start quickly on this platform.
Remember the year 2000? They promised us flying cars. They delivered the PT Cruiser...
Erlang and SML are pretty good functional languages but produce very memory hungry and slow proggies. O'Caml is better speed-wise but has a fscked up syntax (yes, I know you can change it, but that doesn't fix other people's code). Plus, in general it is extremely difficult to produce fast (as C/C++) code in a functional language. You can do it in O'Caml but it's tricky and can be painful so you end up spending more time on things than if you just used C/C++ in the first place.
You hit the nail on the head with regards to O'Caml. Its syntax is painful. I use all sorts of computer languages (including lisp) but find that O'Caml is the hardest one to read and write code for. Each O'Caml statement is like one great big run on sentence that never ends and has infinite clauses. You wouldn't want to speak like that - why would you want to code in that style? People can only remember 5 things in their short-term memory - but O'Caml forces them to juggle at least 10 things in their head at once when looking at a typical expression.
The only people proficient in O'Caml from what I gather are the actual authors of that language.
My advice is to skip over O'Caml and use either Scheme or Lisp. You'll be far more productive in much less time.
It's a software tool!?!? Dang... And here I thought I would be getting a free Japanese sports-coupe!
May you be touched by His Noodly Appendage. RAmen.
I guess their next goal would be to have GCC not target that proprietary platform, Windows...
Now instead of relying on the garbage collector you have to step way back to the dark ages and tediously manage UI memory. Ugh!
Most of the time, when you free native resources owned by a Java object, you do so in the "finalizer" that the GC calls when it's about to free your object. A finalizer is analogous to a C++ destructor and is called ClassName.finalize().
Will I retire or break 10K?
After having used it in a production environment for the last few months with a company that churns out tonnes of sites, I'd have to say that Dreamweaver sucks. Sure, it has some new XHTML stuff and improved support for CSS, but it is still HEAVILY based in HTML3 standards!
Shut the fuck up. ekrout is a genius. Just because you can't think up at his level you stupid fucking simian doesn't mean he doesn't have validity. It means YOU don't have validity.
:1,$s/funny/troll/g
The way to corrupt a youth is to teach him to hold in higher value them who think alike than those who think differently
I just browsed the "News, views, feature articles and announcements from around the community" section of http://www.eclipse.org and found:
l ipse.html)
e cov/.
"An Introduction to the Eclipse IDE" (http://www.onjava.com/pub/a/onjava/2002/12/11/ec
I remembered a decent intro to Eclipse on IBM's site, probably developerworks (http://www-106.ibm.com/developerworks/), so I searched for "eclipse" there. Yep, the article's at http://www-106.ibm.com/developerworks/library/os-
doug
While I am glad, I do think the timeliness is amusing: gift - Christmas... Get it? ;)
If a Free (as in Freedom) program (let's call it A) requires a proprietary (non-free) program (let's call it B) to run, then if we want to run a Free environment (operating system, applications, etc.) this is impossible unless we have a Free substitute for "B".
That's why the accomplishment of the 'gcj' and the GNU Classpath projects is important for the Free Software Community.
Support The GNU Project!! http://www.gnu.org
You say that it's great because now it is finally free? Java is more free than GPL. I can use Java in ANY product I distribute, commercial or open-source, with or without source code, et cetera, etc... GPL puts all these restrictions on so that no company I have ever worked for was WILLING or ABLE to use GPL code/components.
So, if you mean free as in NO ONE USES IT, sure. If you mean free as in I CAN DO WHATEVER THE HELL I WANT, then Java wins over ANYTHING GPL.
And, if you are going to doubt me without looking up the facts, consider who is on the JCP (www.jcp.org), ask yourself why Apache is on it.
I mean, I should expect your close-minded attitude, since many people here on slashdot slam Java because it isn't C/ASM.... but then again, I guess we could all make fun of you for making tools that you have to rebuild on each platform -- what a waste of time.
"But Java is slow!" So is X11 and e2fsck and format and dd.... It's the APP, you moron, not the language. Any REAL programmer would know that.
Sorry, this isn't meant to be a flame, but do some research before you post B$ as FACT.
http://www.google.com/profiles/malachid