Slashdot Mirror


Two Takes on the Java Dilemma

Joe Barr writes "NewsForge is running a pair of excellent commentaries on the plight of Java and the Java development community following the recent "settlement" between longtime rivals Sun and Microsoft. One is by Rick Ross, the articulate leader of JavaLobby, entitled "Where is Java in the settlement?" The second is "Free but shackled: The Java trap" by Richard Stallman. Good reading. Both commentators put their finger on the heart of the problem, albeit from different perspectives." Yes, Newsforge and Slashdot are both owned by OSDN.

65 of 562 comments (clear)

  1. Sun will sell Java to the highest bidder by tjansen · · Score: 5, Interesting

    My theory is that Sun is going to sell Java, probably to IBM. That's also a reason why Sun is will not
    open-source Java. Even if it is losing money, it's still a valuable asset. Sun owns the trademark, many Java-related
    patents and is the only company with the authority to prevent Java from being forked.
    Sun's threat is to sell Java to Microsoft. Not sure whether MS wants to buy it (they would certainly be
    willing to spend a lot of money to destroy it, but it would also annoy many people and renew the antitrust trouble). Losing Java would be so bad for IBM that they would be willing to spent a few billions to save
    it. Possibly together with other companies in the Java trap, like SAP.

    1. Re:Sun will sell Java to the highest bidder by AKAImBatman · · Score: 5, Interesting

      I doubt Sun would sell Java until they're ready to sell the company. Java has been a loss leader for them that has made the name "Sun Microsystems" nearly a household brand. Right now Sun is trying to reinvent itself because of the lack of vision in the marketplace.

      Yes, Intel x86 can handle many of the tasks that only Unix machines used to be able to handle. I'd just tend to debate whether they're capable of doing these tasks as cost effectively, as reliably, and as efficiently.

    2. Re:Sun will sell Java to the highest bidder by Chicane-UK · · Score: 4, Insightful

      Yes, Intel x86 can handle many of the tasks that only Unix machines used to be able to handle. I'd just tend to debate whether they're capable of doing these tasks as cost effectively, as reliably, and as efficiently.

      Well judging by the amount of people dropping their old UNIX gear, and taking up rackfulls of AMD or Intel boxes (especially the new 64bit offerings), i'd say the answer to that is a big YES.

      Companies like Sun and SGI did used to really have a corner on the market.. but now their gear is slower than the competition and insanely overpriced. Don't get me wrong, they are all still the geeks ultimate play thing (I especially like SGI gear, and used to own a few old boxes) but price to performance ratio is soooo in Intel & AMD's favour right now.

      Reliability is superb, runs a LOT of operating systems, scales very well (imagine a beowulf cluster of these...), and doesn't cost a lot of money.

      --
      "Hey! Unless this is a nude love-in, get the hell off my property!!"
    3. Re:Sun will sell Java to the highest bidder by heironymouscoward · · Score: 4, Insightful

      I was careful to say 'StarOffice' not OpenOffice. OpenOffice is GPLd and safe. Still, OpenOffice relies on support from Sun: my guess is Novell or IBM will provide a new home for it if/when Sun says it's cutting back.

      --
      Ceci n'est pas une signature
    4. Re:Sun will sell Java to the highest bidder by tjansen · · Score: 5, Interesting

      Yes, Intel x86 can handle many of the tasks that only Unix machines used to be able to handle. I'd just tend to debate whether they're capable of doing these tasks as cost effectively, as reliably, and as efficiently.

      Actually I'd be interested how many billions of Sun's yearly losses are related to Java, and how many billions are caused by creating and maintaining their own CPU architecture. I wouldnt be surprised if the last bit of 'cost-effectiveness' of the SPARC architecture would disappear immediately if Sun would charges enough to cover their real costs.
      After cancelling the UltraSPARC V and having only a few 'mystery' CPU projects left, I expect Sun to make x64-64 the primary architecture for the low-end and medium range. Maybe not with this x86-64 generation, but when the next one appears.

    5. Re:Sun will sell Java to the highest bidder by tellurion · · Score: 5, Interesting

      >Sun has (in my paranoid opinion) agreed to kill Java
      >I'm quite curious to see how IBM will react.

      I don't think IBM will much care.
      They have pushed for Sun to open source Java, why? Because they have changes/enhancements they want to incorporate into Java. This means they have already rewritten some/all of the Java libraries and would do more if it was open. If Sun killed Java, IBM would probably just release their own Java. Legaly something new, but technically the same.

      -Tellurion

    6. Re:Sun will sell Java to the highest bidder by The+Spoonman · · Score: 4, Insightful

      Well judging by the amount of people dropping their old UNIX gear, and taking up rackfulls of AMD or Intel boxes (especially the new 64bit offerings), i'd say the answer to that is a big YES.

      Which begs the question: if they were all jumping off a bridge, would you do so, too? Just because "everyone's doing it" doesn't mean it's right. It means that lemmings can't think for themselves.

      Don't get me wrong, I agree that the price/performance/value ratio of the Suns and SGIs of the world is way skewed when compared to the Intel-style architecture. I disagree in that moving to the latter architecture just because everyone else is doing it is a management-style decision, not a technical one.

      --
      Which is more painful? Going to work or gouging your eye out with a spoon? Find out!
      http://www.workorspoon.com
    7. Re:Sun will sell Java to the highest bidder by AKAImBatman · · Score: 4, Interesting

      Well judging by the amount of people dropping their old UNIX gear, and taking up rackfulls of AMD or Intel boxes (especially the new 64bit offerings), i'd say the answer to that is a big YES.

      I would disagree. And I'll tell you why:

      1. It takes fewer Unix boxes to accomplish the same job as the ever multiplying rabbits^W x86 machines. This consolidation makes for lower overall costs in equipment and maintenance. Unfortunately, x86 looks cheaper up front. No one considers concepts like capacity planning. Just add another box. They're cheap!

      2. Dell (and their competitors) charge a mint for "server hardware". So much that Sun hardware often comes in cheaper. Again, managers thing x86 == cheap and Sun == Expensive.

      3. Unix machines allow you much more flexibility in remote maintenance, system configuration (just try to tweak the size of write buffers on Windows), and live upgrades. Linux theoretically offers many of the same benefits, but RedHat deployments have a tendency to self destruct. I've seen admins actually afraid to touch their RedHat boxes for fear that something will go wrong.

      4. Performance isn't everything. Reliability, uptime, maintainability, etc. are all worth paying extra for. The short sightedness of the industry results in these factors often being ignored. As a result, big money is spent on all three areas *after the fact*. (A company I worked for once had a Dell RAID controller go. The entire production database was corrupted on ALL drives. That hurt.)

      Long term, Unix machines still win the day. This is very much due to the fact that the entire machine is engineered instead of cobbled together. It's just too bad that the entire industry is only looking at the short term.

    8. Re:Sun will sell Java to the highest bidder by AKAImBatman · · Score: 4, Interesting

      You wrote an entire reponse to something he didn't say. He never said he was advocating Winx86. He said that the older SUN/SGI style hardware was losing marketshare in favor of X86 hardware. Which of course is correct. He didn't say that these cheaper X86 boxes wouldn't be running a *nix.

      Allow me clarify. When I say "Unix Machines", I am referring to Sun, SGI, HP, and IBM Unix based hardware. While these machines can run other OSes, they are designed and engineered to run a variant of the Unix operating system. Thus "Unix machines". I was not referring to the operating system in specific.

      And yes, RedHat does self-destruct at the slightest provocation. It's actually rather enjoyable (in a morbid way) to grab a bag of popcorn and watch as GDM suddenly disables itself, or the Apache "service" suddenly fails to start, or watch admins struggle with XInetD, only to have all their other "services" go haywire, or (my personal favorite) watch the admins struggle with some insanely masochistic script that no longer works because of some minor system change. Not to mention all the other scripts that were dependent on that script, which are now quite broken. I'm not even *going* to mention RPM hell.

      Oh yeah, RedHat boxes are lots of fun.

    9. Re:Sun will sell Java to the highest bidder by bXTr · · Score: 4, Funny

      Which begs the question: if they were all jumping off a bridge, would you do so, too?
      Well, it's either jump or get pushed off by all the people behind you.

      --
      It's a very dark ride.
  2. "Freedom isn't free" by LostCluster · · Score: 5, Interesting

    Sun's control of the Java language is a benevolent dictatorship. If Java was truely Open Source, then Microsoft could have forked it to allowed J++ to exist on Windows and blow a hole in the "write once, run everywhere" theory.

    In order for there to be a language that's solid in all environments, there's got to be a gatekeeper at the door.

    1. Re:"Freedom isn't free" by Planesdragon · · Score: 4, Interesting

      According to you, one should give up one's freedom's whenever it may benefit one in the short term.

      That's not what he said.

      What he said was that freedom gives loss of control, which means that your worst enemy will use your work against you.

      It's the main reason for the virual/sticky/perpetual nature of the GPL.

    2. Re:"Freedom isn't free" by Fnkmaster · · Score: 4, Insightful
      Forked what? Does Microsoft need the code to write their own implementation? Not really. In fact, Microsoft DID write their own implementation, with J++ and the MS JVM, and then they morphed that into .NET, which cherry picked the features they wanted from Java. They aren't allowed to call it an implementation of "Java" unless it sticks to the Java specification, they have permission from Sun or whatever - but what's wrong with that? That's just a trademark issue, it has nothing to do with Open Source software or the licensing terms of the code itself.


      Would the Sun/MS debacle have unfolded any differently if the source code for Java had been available under the GPL? Microsoft could have build their own stuff on top of it, but they would have had to keep it under the GPL - they would never have wanted that, so they would have had to do the exact same thing they did, which is write their own clean room version of it, or make a derivative design and have their own team implement to their own modified spec. If you can put forward a convincing argument that Sun GPLing the Java standard would have substantially changed the platform battle with Microsoft, I'd like to hear it.

    3. Re:"Freedom isn't free" by Anonymous Coward · · Score: 5, Insightful

      The problem is that Java is already incompatible across various implementations. Even if the syntax is identical, you never know if your program is going to work on Blackdown or Classpath just because it works on Sun's JVM. And lord only knows if the "standard" libraries you're using are available on the user's machine.

      Quite frankly, the stupidest thing Sun did was force MS to give up Java. MS wanted to make Java ubiquitous by making it the standard platform for writing Windows apps. In order to do this, they needed to add a few features (like delegates -- function pointers, essentially). Sure, people would end up writing "Java" programs that wouldn't necessarily run on other JVMs, but who cares -- they would be Windows programs anyway! And besides, every single one of those Windows developers would also be a Java developer, spreading Java everywhere.

      So now, instead of having a solid, fast, best-of-breed implementation of Java (with a few extras) on every single Windows machine on the planet, everybody who wants to run Java apps must install their own JVM. This does nothing but hinder use of Java. And of course, all of those would-be Java developers are still using VB or have learned C#.

      Come to think of it, had Sun incorporated MS's improvements, such as delegates and enumerations, they would have an excellent language for GUI RAD. Instead, they stuck by their NIH ways and we don't get these features until 6 years too late.

      aQazaQa

    4. Re:"Freedom isn't free" by Waffle+Iron · · Score: 5, Insightful
      If Java was truely Open Source, then Microsoft could have forked it to allowed J++ to exist on Windows and blow a hole in the "write once, run everywhere" theory.

      Well, since Microsoft couldn't do that, they just switched to plan B. They used 5 years of hindsight to write a new language like Java, but with some nicer new features, then they applied this new language to their OS monopoly to get instant market penetration with little effort.

      Meanwhile, Microsoft froze their support for Java until it was hopelessly obsolete; this passive-aggressive move blew a hole in "write once, run anywhere" all by itself. Microsoft's moves seem to have succeeded in taking much of the steam out of Sun's goal of taking over the world with Java.

      It seems to me that this course of events was a big factor in Sun's recent "surrender". I don't see how things have come out any better for Sun than if they had set Java loose.

    5. Re:"Freedom isn't free" by Anonymous Coward · · Score: 4, Insightful

      Your forgetting that back when that was a possibility Micrsoft had say over what was shipped on every box. I bet that Sun had talks with more than a few OEM's who were not even willing to consider shipping Sun's Java. Plus what were OEM supposed to do? Ship two Java VM's per box? If OEM's had to pick one VM to ship it was going to be Microsoft's. In your eyes Sun didn't lift a finger but in reality they never had a chance.

  3. Java is doomed, doomed I say! by heironymouscoward · · Score: 5, Interesting

    It seems quite certain that Java is doomed: Microsoft did not pay $2bn just because it likes the sound of change dropping. It wants Java dead, and .NET to be the main platform for large applications. It hopes to cripple IBM this way. Most likely Sun's refusal to open source Java was based on the promise of the upcoming funds.

    So: Sun will slow down and finally stop development of Java. IBM will either try to roll-out its own compatible platform or propose a migration to something else.

    And RMS will be muttering: "those fools, those fools, if only they understood what the GPL was about". And he would be entirely right.

    OTOH, perhaps I'm just being paranoid and Microsoft will allow Sun (which is now a neutered zombie company selling its own living organs for booze money) to continue supporting one of the main obstacles to its domination of the platform business.

    --
    Ceci n'est pas une signature
    1. Re:Java is doomed, doomed I say! by No.+24601 · · Score: 5, Insightful
      I'm sorry, but .NET is garbage - too much glitter and not enough of the important stuff like platform-independence. Microsoft may have succeeded in getting .NET firmly entrenched in the industry if people trusted them, but they've been playing the game since day one for dominance. .NET will benefit Microsoft products, but I don't see it becoming a predominant force anywhere else.

      The whole thing was a mistake for Microsoft, because they never really supported platforms outside the x86 architecture, and rarely code for other OSs (Office for Mac). .NET was Microsoft's attempt to fool the industry into thinking they were ready to embrace and extend open standards... but when it came down to it, they just weren't ready to take the risks to their existing monopoly.

  4. Algol invented the Internet by Anonymous Coward · · Score: 5, Funny

    Isn't Algol the d00d who said he invented the Internet and then went and lost the 2000 election?

  5. RMS Blathering by twocoasttb · · Score: 4, Insightful

    As soon as RMS says something like "If your program is free software, it is basically ethical" I have to force myself to keep reading. It's a real bitch when that sentence is the first in the article.

    1. Re:RMS Blathering by LWATCDR · · Score: 4, Insightful

      How is unethical to want to get paid for your work? How is software any different from books? What about education? Why should I have to pay to go to a Class at MIT? Sure if want my papers graded or get help from the teacher?
      I think it is unethical to taint the free software movment with this dogma. RMS caliming that non free software is unethical is just as bad as Microsoft claiming that free software is unamerican or SCO "claiming all your ?nix belong to us." I have produced free as in beer software, I have produced free as in speech software, and I have produced software that I sell. All of which are ethical. If you want a that does what a program I sell does got and get a c compiler and write it yourself or you can to choose to pay me.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
  6. Give me a free java! by DeadSea · · Score: 5, Insightful

    RMS has a very valid point. My open source Java software depends on non-free java compiler and runtime environment.

    I continue to write free software in java because Java is sexy, and I believe that Java will one day be free (or have some free implementation). Many of the things that I can do in java would be very hard in any other language. Namely having a GUI program that can run on Windows, Mac OS X, and Linux.

    I disagree with RMS that we should not accept this even temporarily. I write open source Java libraries under the GPL so that people who find them useful and want to use them must adopt the GPL. Planting open source seeds in the Java community will help in the liberation of the platform as a whole.

    The reliable way to avoid the Java Trap is to have only a free implementation of Java on your system. Then if you use a Java feature or library that free software does not yet support, you will find out straightaway, and you can rewrite that code immediately.
    Having such a setup is currently non-trivial. I have tried many times but have yet to get one to work. The gjc compiler is not hard to get working but getting a jre and the classpath libraries set up is beyond my skill level.

    We are trying to rescue the trapped Java programs, so if you like the Java language, we invite you to help in developing GNU Classpath. Trying your programs with the the GJC Compiler and GNU Classpath, and reporting any problems you encounter in classes already implemented
    Rather than appealing to developers, making free runtime easy to set up is the best way to make this happen. I applaud RMS for his work in this area, but it is not yet practical to take his advice.
    1. Re:Give me a free java! by dmeranda · · Score: 5, Insightful
      "Many of the things that I can do in java would be very hard in any other language..."

      You really need to get out more. But I won't waste more space here debating technical misperceptions, this is about freedom.

      "I write open source Java libraries under the GPL..."

      Ahem, you mean free rather than open? That's RMS's whole point--it's not free. He never said it wasn't open.

      "Planting open source seeds in the Java community will help in the liberation of the platform as a whole."

      That's sure wishful thinking. I hope you're correct. But there's no way you can make it free. Only Sun can do that, and your seeds aren't falling inside their walls. That's like saying that writing GPL'ed software that runs under Windows will help in the liberation of the Windows platform. You're only fooling yourself, trying to justify using a sexy language. I commend you for GPL'ing your own programs, but you must not be fooled into complacency by your lack of freedom.

    2. Re:Give me a free java! by BlackStar · · Score: 4, Insightful

      Wishful thinking is the way Stallman has always approached solutions, and does so in his Java trap article. Getting more software written in Java with a greater demand on the platform and wider popularity is probably the easiest way to get more hackers working on teh GNU Classpath and related projects including the GNU Java Compiler. Computer science builds on itself, and on the work of others, both free and non-free. For years, Stallman's stuff only ran on Sun, as he pointed out. For years, many of us waited eagerly for the first HURD implementations. Good thing a pragmatist by the name of Torvalds came along and WROTE one rather than endlessly redesigning it. Results breed demand breed developer interest. Cygwin arose at least in part due to Unix programmers working on Windows and wanting the strength of their environment to be there. Demand and need.

    3. Re:Give me a free java! by DeadSea · · Score: 4, Interesting
      That's like saying that writing GPL'ed software that runs under Windows will help in the liberation of the Windows platform.

      Not entirely. I don't expect a free version of Java to come from Sun. I expect free Java to come from the open source community. There are already a significant number of people (including RMS) who are working towards this goal without Sun.

      The more people with the itch, the more scratching that will get done.

      As I pointed out, even those of us who want to work on these projects have a hard time because it is difficult to get the environment recommened by RMS set up. Bundling gjc, some free jre, and the classpath libraries into an install package would be a boon. Sun does this with their non-free Java and I have no problems installing their stuff.

  7. Re:The Algol, the by kin_korn_karn · · Score: 4, Insightful

    You're barking up the wrong tree. People copy Algol because people are taught that programming languages -should- look like C and Java.

    Also, they're more logical to humans than stuff like LISP. When you were a kid and decided you wanted to program, did you sit down with a LISP compiler? If you did, congratulations, but I don't know anybody else who did and most programmers I know look at a programming language with the thought of, "how much money can I make if I learn this".

    Java sucks because it's wordy and the standards that people use with it are overwrought. I had no problems with RSIs until I started working in Java.

  8. RMS is spot on this time by Gothmolly · · Score: 5, Funny

    And RMS will be muttering: "those fools, those fools, if only they understood what the GPL was about".

    He mutters that constantly anyway, you insensitive clod!

    --
    I want to delete my account but Slashdot doesn't allow it.
  9. Not. by Garg · · Score: 5, Insightful

    Get real. See all those Java jobs out there? I know a few months ago there were more of those than any other language. I doubt that has changed... or will change in the near future.

    Sun could drop off into the Pacific tomorrow, and Java would keep on going because in a lot of places it's the best tool for the job. As much as they would like to, neither Gates nor Stallman is going to change that fact. If Sun (under MS's influence) tries to corrupt or hamstring Java, IBM, Blackdown et al will simply fork it, and everybody will start using theirs.

    Garg

    --
    Garg
    Alumnus, Xavier's School for Gifted Youngsters
  10. Come on Sun, do it for us. by Lao-Tzu · · Score: 4, Insightful

    Many people have argued that it doesn't do Sun any good to "open source" Java. They might be right. You can argue that an open source Java may have a good chance of becoming _the_ platform for software development, but Sun may no longer profit from it regardless. From Sun's point of view, they really don't see the benefit.

    Well, screw them. I don't care about Sun. I'm a programmer, and all I want to do is write a piece of software that I can move from system to system without a lot of pain. Swing is the best toolkit out there for this, right now. It is relatively well documented, consistant, and available to any programming language that can run under the JVM. It can run on multiple operating systems, looking fairly native-like, or with it's own ugly but usable UI where a native look-and-feel isn't available. Some classes, like JOptionPane, actually require fairly small amounts of code to do relatively robust things.

    The Java platform has a huge number of libraries available for it, and they work all over the place.

    There might be no benefit to Sun in open sourcing Java. But there is benefit to me. I want to be able to rely on Java as a platform, but right now any Java developer would be rather screwed if java.sun.com disappeared. I don't like that risk, and I won't build a Java application (except for consulting work - who cares there) because of it.

    (I'm not interested in alternative programming environments, by the way. I already know about them - after all, I don't do Java development, like I said.)

  11. benevolent my r**s by ArmorFiend · · Score: 4, Interesting

    the Gnu dialect of the C language shows you don't need a "benevolent" dictator. Its been around much longer than Java. Its probably used by more people. Its GPL'ed. And yet it hasn't led to a GNU-C linguistic forkfest.

    (the same argument applies to nearly every library under the GPL, does it not?)

    1. Re:benevolent my r**s by black+mariah · · Score: 4, Insightful

      Microsoft doesn't have a competeing language to C, doesn't want control of C, and basically doesn't give two shits about C. They want Java under their control because they know what a massive asset it is. See a bit of a difference here?

      --
      'Standards' in computing only impress those who are impressed by things like 'standards'.
  12. What a load by Timesprout · · Score: 4, Insightful

    Where does RMS get off? Java belongs to SUN, they are the one who invested the time, money and effort to develop it. If you dont like it go build your own version rather than trying to imply that SUN are unethical or trying to maliciously entrap developers.

    RMS might better ask why Java has been so successful. It addressed a gap in the market, not its original intention but a need none the less and developers like it. There is an extensive Java developer base now. RMS's comments have a serious smack of petty jealousy about them. Shock horror a commercial company came up with something that has attracted developer mindshare on a far larger scale than anything FOSS can manage and almost 10 years down the line the 'free alternative' is still so half assed its not even a realistic alternative.

    --
    Do not try to read the dupe, thats impossible. Instead, only try to realize the truth
    What truth?
    There is no dupe
  13. Re:The Sun/Microsoft deal makes sense by Anonymous Coward · · Score: 4, Insightful

    I just wish some posters would wake up and face reality:

    Java is a bright success! All fortune 500 companies are using it in one way or the other.
    Developers are counted by the millions.
    Where is .NET?!?

    No go to monster.com and search for job openings and compare Java and C#...

    From a marketing perspective:
    If you choose Java you have the choice
    to sell your product on any major OS.

    If you choose C# you just don't have the choice.
    See how far Mono has come. Its not even close
    to fulfill the WORA promise Java has.

  14. Re:Until it is set free by Rosco+P.+Coltrane · · Score: 5, Insightful

    Java and C# are crufty languages anyhow.

    I don't care much for OO myself, but many people say at least the newer Java implementations are really quite good.

    What put me away from Java since the beginning is the size of the executables, and their truly atrocious speed. And also the size and speed of another monster called Swing.

    But, I remember a certain OS called Unix that used to be the archetype of bloatware, with a graphical system that used to open 2 megabyte (gasp!) temp files, in the past. Now that computers have caught up with it in terms of memory and speed, Un*x looks thin compared to Windows, and its creators seem like precursors and visionaries.

    So sometimes I wonder if I'm not missing a boat with Java : perhaps it too is ahead of its time, and one day nobody will balk at the speed, because it'll run fast by virtue of the underlying hardware.

    But I guess now that Microsoft and Sun have agreed to kill it, the question of whether or not I should try it is getting moot.

    --
    "A door is what a dog is perpetually on the wrong side of" - Ogden Nash
  15. RMS playing Spin doctor by Aumaden · · Score: 4, Insightful
    Sun's implementation of Java is non-free. Blackdown is also non-free; it is an adaptation of Sun's proprietary code. The standard Java libraries are non-free also. We do have free implementations of Java, such as the GNU Java Compiler and GNU Classpath, but they don't support all the features yet. We are still catching up.

    If you develop a Java program on Sun's Java platform, you are liable to use Sun-only features without even noticing. By the time you find this out, you may have been using them for months, and redoing the work could take more months. You might say, "It's too much work to start over." Then your program will have fallen into the Java Trap; it will be unusable in the Free World. -- RMS

    I generally respect RMS, but I have a problem with this. Like it or not Sun (and others via the JCP) set the Standard for Java. I fail to see how using the Standard is falling into a trap.

    The real reason Java would be unusable in Stallman's "Free World" is because the current, free compiler is sub-standard.

    I shouldn't use the features supported by Sun, Blackdown and IBM because the GNU Java Compiler hasn't caught up with the pack?

    Now, whose trap is that again?

    1. Re:RMS playing Spin doctor by Srin+Tuar · · Score: 4, Insightful
      I shouldn't use the features supported by Sun,
      Blackdown and IBM because the GNU Java Compiler
      hasn't caught up with the pack?



      If you dont care about having a 100% free O/S, running no proprietary software whatsoever, then his article is NOT AIMED AT YOU.

      He is NOT trying to convince the pragmatic masses to stick to a substandard implementation. He's calling upon those who do want a Free environment, that if they think Java is the future of programming (at least for themselves), to either contribute to Free implementations or to adhere to them.

      There is really nothing radical, objectionable, or unusual in his article. The fact that is is a conservative, simple, and logic position shows me that the extremist, based upon your reaction, is YOU.

    2. Re:RMS playing Spin doctor by J.+J.+Ramsey · · Score: 4, Insightful

      "I generally respect RMS, but I have a problem with this. Like it or not Sun (and others via the JCP) set the Standard for Java. I fail to see how using the Standard is falling into a trap.

      The real reason Java would be unusable in Stallman's "Free World" is because the current, free compiler is sub-standard."

      And the current free compiler is substandard because Sun sets both the standard and creates the reference implementation. By the time the GJC guys have seen the latest updates to the standard, Sun has already implemented them in its own reference implementation. Inevitably, that means the GJC developers will *always* be chasing taillights.

      Why don't IBM and Blackdown have this problem? Because they use Sun's code as a starting point.

      So long as the status quo remains, it will be impossible for there to be multiple independant complete implementations of the current Java standard.

  16. Re:The Sun/Microsoft deal makes sense by jlrobins_uncc · · Score: 5, Interesting
    The only reason Java has been around for so long is because Microsoft was slow to really set its target on it in the past.


    COBOL is still around in big installations, although Y2K probably reduced that number to some extent, but certainly did not kill it off.

    Java, believe it or not, via J2EE / EJB is the COBOL of our time. Business logic gets done today in Java -> EJB -> relational database, instead of COBOL -> VSAM.

    Which will be more readable? COBOL today or EJB code 30 years from now? At least COBOL was inherently single-threaded!

    Java won't be 'dead' until all of this generation's buisness logic gets reimplemented. But at least the data is (should be) housed in something more language-neutral than VSAM.
  17. Re:The Algol, the by Bastian · · Score: 4, Insightful

    Also, they're more logical to humans than stuff like LISP.

    This point seems a bit unstable to me. I don't see why an Algol-like syntax would be more logical to humans for any reason other than that most folks learn to program in BASIC or C or because the syntax is relatively similar to standard mathematical notation. But in this case the argument would be that the syntax is usually more familiar to most people, not more logical. If it is inherently logical to anything, it's logical to computers, not humans.

    If there's anywhere where folks seem to have a hard time with, for example, the LISP family, it's the recursion and not the syntax. Personally, I agree that LISP was harder to get used to than languages that have Algol-style syntax, but I'm not willing to say it was because of my human nature and not because I had already been programming in BASIC and C for ~10 years. And now that I'm used to it, I've found it is the most useful thing in the world, to the point that when I'm working out how to write a difficult function I generally use LISP syntax for my pseudocode because I've found it is much easier for me to make prototypes that will end up working.

    I agree that languages take on because folks are interested in how finacially beneficial that language is, but that has nothing to do with whether or not it is an objectively well-designed language. I submit COBOL as evidence.

  18. Did you read the article? by dmeranda · · Score: 4, Insightful

    Did you even read the article? RMS never told Sun what to do. He was speaking to programmers who write software using Sun's Java platform. It is those programmers who think they are writing free software, and may not realize that it really is not free after all. His audience does not include Sun programmers; they are already aware that their software is not free--they need no warning.

    He is cautioning those people who desire to write free software to reevaluate whether they are really achieving their own goals, to not be blinded by Java's sexiness and Sun's apparant benevolence. But to say that RMS want's to force Sun to do business in a different way is to read something that I'm not seeing in his article.

  19. Sun only features? by deanj · · Score: 5, Interesting

    From RMS: "If you develop a Java program on Sun's Java platform, you are liable to use Sun-only features without even noticing."

    Does anyone have a clue what he's talking about? The "com.sun.*" libraries? How could you use those without noticing?

    Doesn't sound like this guy has ever programmed in Java.

    1. Re:Sun only features? by ozborn · · Score: 5, Informative

      No, he does know what he is talking about. If a programmer uses an object from say java.rmi.server on Sun's platform, who is to say whether this feature is implemented in another virutal machine? Are you familiar with how up to date the dozens of other JVM's are with Sun's latest release of java? If no other JVM is implementing this, then it is effectively sun only, regardless of whether it is prefaced by com.sun or not.

      Also on sun's JVM it doesn't say com.sun, it is all just "java.whatever", "javax.whatever", etc... when you import a package.

  20. Is this right? by jthulin · · Score: 5, Interesting

    Sun won't release the source code for their JVM and Java compiler, but they allow development of an open-source compiler and VM or a Java-to-C[++] translator which can be used for future-proofing today's Java applications. Therefore, programming- and CS-savvy amateurs and professionals should undertake such a project to improve their skills and make the world a better place in which to live.

  21. Java Trap by technomancerX · · Score: 5, Interesting
    Ok, let's face it, there IS NO JAVA TRAP.

    Java is an open specification. The libs are open specifications. Just because the FSF hasn't been able to finish an implementation doesn't mean it can't be done.

    Stallman's argument about libraries being required to conform to the specs if they're publicly available is also a load of crap. Basically it only applies if YOU CLAIM TO IMPLEMENT THE API. In other words, don't claim to be J2EE compliant until you actually are. There is nothing stopping anyone from starting a project and saying "Out goal is to build a system fully compliant with API x." and developing it. The only restriction is you can't claim to be API x compliant until you are. That's a real hardship, being required to actually support the feature set you claim to.

    I'm sorry, I develop in Java (in addition to C, C++, Perl, and PHP) and I like to know that if something says it complies with specification X that it actually does.

    Also, as a side note, Java is not going anywhere. SAP, Oracle, and IBM have too much of an investment to let Java die. Sun could declare bankruptcy tomorrow and IBM would buy the technology tomorrow, guaranteed.

    --
    .technomancer
  22. Re:Message To America's Students: The War, The Dra by boudie · · Score: 5, Funny

    So what are you trying to say? Is Ralph Nader for or against Java?

  23. Re:right reply to wrong argument by Bastian · · Score: 4, Informative

    RMS's point wasn't that Sun is doing something wrong by holding onto Sun. RMS's point was to say to the Free Software community that any software they write that depends on a non-Free platform, library, whatever is not truly Free. Like he said in the article, this is the same as his beef with KDE - but that beef is now gone thanks to TrollTech going to a dual-license scheme.
    His point is that Free Software developers who choose to use Java are entraping themselves, not that Sun is trying to maliciously entrap developers.

    It's also worth pointing out that at no point in the article was he talking about OSS developers.

  24. Re:The Algol, the by ezy · · Score: 4, Interesting

    Yes, of course, algol based languages are horrible abortions.. that's why just about anything that's worth anything is written in them. It's all a result of marketing designed to hold back the progress of computer science and application development. :-)

    Excuse me, but sometimes I wonder whether LISP or functional language advocates just fell off the back of a truck.. or maybe they were just born insane. It's like the old Beta vs. VHS, Mac vs. PC vs. Amiga, etc debate. The reason Algol decendents are more popular is simply because they work better given the context in which they operate... the same reason VHS won out over Beta. and PC won out... It's not a huge mystery, nor is it some kind of ignorance of basic facts amongst the users of these languages.

    If anything, its the functional advocates who are missing the basic facts. Programming languages are aids to *human* comprehension. All of the functional languages I've ever seen suck dick as general purpose programming languages. The syntax is barely readable, and the semantics are *not* immediately clear to the average programmer who is not necessarily interested in diving into abstract semantics of proving programming languages. Some of the loops you have to jump through to solve simple nonrecursive problems are obscene. Nevermind having to force your recursion to fit within certain parameters so your code performance doesn't suck...

    The "spreadsheet" argument for easy of use I see nowadays is bogus, since spreadsheets are not abstract, but concrete. To give an example of the disconnect I'm talking about, take the canonical representations of each type of programming and see which one is easier for a human to understand as we scale upwards in complexity.

    a) a recipe
    b) a mathematical proof

    I think the answer, and the conclusion wrt to functional and imperative languages as they exist now is self evident. Note that basic techniques, such as modularization, apply to both. The typical response is that (b) is easier to "verify", since, well, it's already in the required form. However, noone seems to define "verify" WRT to real complex systems with GUIs, DBs, flakey machines and flakey network connections..

    and furthermore, we stopped trying to cater to the machine when we stopping flipping switches on the front of the box.. we should *not* be going backwards and catering to it by reorganizing logic so it's easier for the *machine* to process.

  25. You've never used .NET by Kombat · · Score: 5, Interesting

    I'm sorry, but .NET is garbage - too much glitter and not enough of the important stuff like platform-independence.

    You clearly have never used .NET to develop any serious web applications. While you are correct that it sacrifices platform-independence, you are way off the mark when you call it "garbage." If you are using Microsoft products from end-to-end, .NET is actually an extremely powerful and simple platform.

    We develop web applications using Visual Studio .NET, connecting to a Microsoft SQL Server backend, hosted on Windows2000 server boxes, with clients all running various Windows boxes, using IE. We test with Mozilla and older versions of Netscape too.

    We've found this setup to be extremely powerful, allowing very rapid development. Sure, it's homogeneous, but so what? It's working great for us, and our customers.

    Since we are hosting the actual sites, we get to control the backend platforms. And we've chosen Windows. So, there's no issue about "platform independence." We've chosen a platform that enables us to deliver the best results to the customers, on a very rapid schedule.

    --
    Like woodworking? Build your own picture frames.
  26. Sun never cared about their developers. by LibertineR · · Score: 4, Interesting
    Your point is 100% accurate, and every single one of them was made by Microsoft to Sun at the time in question.

    The problem was too many of Sun's people were pissed off that Microsoft's first JVM was blowing the doors of Sun's and every publication said so. People at Sun were too worried that Java would become too closely associated with Microsoft, and Sun would be forgotten as the creator of Java. You had people running around basking in the glow of their favorable Java press, more worried about losing it, than about how they were going to make money.

    Microsoft went so far as to offer to show Sun how they had optimised Java in exchange for permission to continue their work. Sun thought in unacceptable that Microsoft be known as doing Java better than they did, so they pulled the plug on their largest potential market out of pure spite over being outdone.

    I'm glad they did, because C# rocks. Sun never gave a damn about their developer community, they only cared about making sure no one else got any credit at all.

    1. Re:Sun never cared about their developers. by dekashizl · · Score: 5, Insightful

      Your whole post is unsubstantiated anthropomorphization of Sun and Microsoft, boiled down to "MSFT made a better Java than Sun, and Sun wanted to hog the credit, so they rejected every reasonable offer simply out of spite". Amazing that this gets modded to +5 insightful... Please, go tell this story to a room of kindergarteners.

      Sun worried (rightfully) about the proprietary extensions MSFT was adding to Java, which would have had the result of tying "Java" to Windows and shattering the "Write Once Run Anywhere" promise, while at the same time having the (mostly false) appearance that MSFT was playing nice with its competition. And that's just one part of the whole issue.

      Get your history right, or at least don't try to pass off your skewed opinions as fact.

  27. GPL , Freedom and Open Source by raptor21 · · Score: 5, Insightful

    I actually read the Stallman article (yeah I know this is slashdot). One thing bothered me as I read majority of the article is Stallman's use of GPL and free interchangebly.

    My main problem is "free" means free. But in the GNU context "free" means "GPL'd". There is a problem here GPL'd software is not really free, it is freedom with restrictions. Java is also free software with restrictions, mainly not being able to modify it. GPL goes one step further allows modification but with the restriction that the modifications also be made freely available. Thus GPL is a little more free than Java but not completely free in the true sense of the word.

    Suppose I released some software completely free. Free to use, modifiy and redistribute without realsing any of the modification under a new FSL (free software License). Said software would also be shackled when run with dependencies of GPL'd software which is not as free as the software I just released, lets call it the GPL trap. Or any software linked with GPL'd software must also be released under the GPL. Java doesn't require you to follow its licensing terms, one may release Java programs under the GPL.

    As I have just illustrated, different degrees of freedoms exist in the world and mean different things to different people. Java is free, as in no monetary cost to use, GNU software is more free as in it is free to modify, but there is also a definiftion for free as in "no restrictions, no cost" which the GPL'd software like GNU/linux is clearly not. So I would like Mr. Stallman to please stop using the word free interchangebly with GPL'ed software, so as not to confuse readers.

    Freedom is a deeply philosophical term of which excrutiatingly long discussions can ensue. However, Java is free, albeit with restrictions, GPL is a little more free but also with restrictions.

  28. Those jobs will vanish by LibertineR · · Score: 5, Insightful

    If the corporate world decides that Java will not be supported with improvements from Sun, and without IBM able to take over due to no Open Sourced version, they will drop Java faster than you can say C#. Nobody is going to run their business on obsolete stuff, no matter how good it is now.

  29. Wrong by Julian+Morrison · · Score: 4, Interesting

    When I see a screenful of lisp, I see words and brackets. I have to read in order to parse struture.

    When I see a screenful of java, even a brief glance shows me what's going on. I can recognise a for-loop, a while with an Iterator, a method definition, a method call, an assignment. I can see the try and catch blocks. Before I mentally parse any of the words.

    Lisp isn't code. Lisp is assembler for the Lisp VM, that somebody forgot to write a code parser on top of.

    1. Re:Wrong by jdavidb · · Score: 5, Insightful

      The reason this is true for you says more about your quantity of experience in Java compared to your experience in Lisp than it does about the quality of either language. An experienced Lisp programmer would probably say exactly the opposite. (In fact, someone in this thread remarked that he does pseudocode for other languages in a Lisp-like syntax, which I found interesting.)

      Similarly, I'm a Perl programmer and have never understood why people say the language is "write only" and similar snide remarks. Perl is instantly readable to me. Put me in front of a bunch of C, though, and I have to puzzle for awhile to work out what it does. That doesn't mean Perl is better than C (although every good programmer knows it is :P ); it just means I'm much more fluent in Perl.

  30. The Java Trinity by kherr · · Score: 4, Informative
    Java is three things:
    • the programming language
    • the class libraries
    • the runtime virtual machine

    Java the programming language is well-defined and documented and anyone can write their own compiler/interpreter for it, just as they would for Pascal or BASIC or Lisp.

    Java the class libraries are, in my opinion, one of the reasons for the success of Java. They are (for the most part) well thought-out and provide a lot of useful functionality (e.g., network, GUI, data structures) for developers that enables focusing on solving problems instead of doing basic stuff over and over. This is exactly the same type of thing that helped C take off in the 1970s with the standard Unix libraries and why CPAN exists for Perl. These libraries could be replaced and/or clean-room implementations created, which is indeed happening.

    The Java virtual machine is the component Sun has been controlling, for good reason. The JVM is what provides the cross-platform execution and consistent behavior. It also defines a lot of Java features that go beyond the language specification such as runtime class loading and heap management. These are powerful aspects of Java and to have inconsistent behavior would be nightmarish for developers (and was, early on).

    IBM and Apple are two companies that have developed their own JVMs that behave consistently with Sun's but are not written by Sun. IBM even has an open source JVM separate from their licensed one. There are other JVM projects in existence, at different stages of maturity.

    I agree completely that too many major companies have too much invested in Java to let Sun just nuke it or hose it over. Java is in a much more stable state than C#/.NET. Microsoft could announce tomorrow ".NET XP" which could be 180 degrees different from what is today, whereas Sun can't arbitrarily change the fundamentals of Java without losing a lot of support from the major players and individual developers who make Java successful.
    1. Re:The Java Trinity by ciggieposeur · · Score: 4, Informative

      IBM's JDK/JVM is Sun's JDK/JVM ported to IBM hardware with some enhancements for performance and added libraries (JCE, ORB).

      IBM's JVM is Sun's JVM. IBM did NOT invent a new JVM, and IBM's JVM is completely dependent on the licensing status of Sun's JVM.

      I worked for IBM in the WebSphere Tools group from 2000-2003. We got previews of the IBM JVM from Hursley every few months; we saw IBM's branded JVM a full year before the rest of the world did.

      Please let this meme die. IBM did NOT invent a new JVM. Sun still controls all of the viable JVM's in use. Kaffe's JVM is the only clean-room JVM *I've* heard of, and it is never used inside IBM.

  31. The best tool for WHAT job? by ciggieposeur · · Score: 4, Interesting

    It's a serious question. To paraphrase myself:

    I've programmed Java J2EE for years. I am expert at the "best practices", performance tweaks, and real production-quality code, yet Java's utility is almost nonexistent beyond "it's what I [was] paid to write." Here is MY short list of things Java is useful for:

    1) HUGE web sites. J2EE is a good solution: strong typing in the language, a security model that is complete from the database backend up to the Struts frontend, and clustering/failover with EJB 2.0.

    COROLLARY: Small-medium sites should use LAMP and rely on redundant hardware to handle failover.

    2) Applets. Since they run on "most" Unixes + Windows browsers, and despite the load time an applet is much friendlier to users than Flash. But you have to use Java 1.1 to ensure compatibility.

    COROLLARY: Cross-platforms GUIs should use Python, Qt, wxWindows, Tcl/Tk, etc.

    3) Unusual database applications for which only an ODBC or JDBC driver exists. JDBC is a rather mature standard (should be since it ripped off ODBC) that works pretty well. It's faster to write a few quick Statements and PreparedStatements and run them against a database than to use native tools that "have" 'different' ''ways'' of quoting strings.

    COROLLARY: Prefer Perl or PHP if the database is supported.

    4) Any application for which speed is not an issue. Yeah, Java can do everything any other language can do, and if this is the one easiest for someone to "think in" then they should use it.

    COROLLARY: NEVER use Java to create or manipulate graphics from the command line. No JDK, EVER, has managed to do this despite five years of pleading from the professional programmers. Without a GUI Java goes belly-up on the first "new java.awt.Frame()". (And for you 1.4+ folks who think HeadlessException was a fine solution, it wasn't.)

    Java was a great idea in 1995, but since then Java has been pushed as the Second Coming and it just hasn't measured up. The other languages have surpassed Java in every one of its primary marketing points: platform independence, performance, object-orientedness, ease of use.

    So what jobs are you doing that make Java the best solution?

    Not trying to flame, but genuinely curious.

    FYI Blackdown, IBM et al CAN'T fork the Sun JDK unless Sun frees the code. And, as apparently thousands of Slashdotters are unaware, every other JDK except Kaffe+GNU is an independently licensed derivative of Sun's JDK.

    1. Re:The best tool for WHAT job? by pHDNgell · · Score: 4, Interesting

      I'm no java apologist. I use a lot of different programming environments and find java frustrating in a lot of ways, but I disagree with a lot of what you said. Java is the best tool for many jobs simply because it was the best tool for many other jobs. This has caused a large class library to come about that has pre-built code for many of the things one needs to do. This makes it take less time for me to make some things (but the language still manages to make the process a bit slow and painful).

      In particular:

      NEVER use Java to create or manipulate graphics from the command line. No JDK, EVER, has managed to do this despite five years of pleading from the professional programmers. Without a GUI Java goes belly-up on the first "new java.awt.Frame()". (And for you 1.4+ folks who think HeadlessException was a fine solution, it wasn't.)

      I've been doing headless java graphics manipulation since 1.1.6 as part of my photo album and other tools. It got a bit easier in 1.4, but it's always been possible. For example: my house temperature diagram takes the collected data and renders to PNG or GIF depending on what your client claims to accept.

      --
      -- The world is watching America, and America is watching TV.
  32. For Java, yes. For Sun, no. by LibertineR · · Score: 4, Insightful
    Would the Sun/MS debacle have unfolded any differently if the source code for Java had been available under the GPL?

    If Sun had GPL'd Java early on, there would be no .NET today. There would be no need, as Java would have become the de-facto language for Windows applications and Microsoft would have been forced to go along. Java would benefit from Microsoft's strength in Dev-tools, and anything good that Microsoft came up with would have been shared across platforms.

    Sun expected Java to do for them what Visual Basic did for Microsoft, but they were stupid about it. When Visual Basic came out, Microsoft created a huge market for tools vendors like Roguewave and others without giving them a rectal exam everytime they came up with something to keep them under their thumb. Sun could have done the same thing, allowing people to create Solaris widgets and stuff, but Sun should have had a decent IDE available at the time of Java's initial release for all this aftermarket stuff to fold into.

    Sun thought that good press equaled big money, and they did not listen to anyone about how to build a market. People took Java and left Sun behind.

  33. His Apple memories are flawed by MikeMo · · Score: 4, Informative

    I don't know about the rest of his article -- seems ok to me -- but his memories about Bill's "investment" in Apple are rather flawed:

    1) Apple did not abandon their Java compliance projects. Today, they are arguably among the best Java development and deployment platforms out there.

    2) It is hard to say Apple used the $150M to kill the clones. They had already been killed by the time Steve and Bill got together.

    My recollection of the event was that the big thing that Apple got was an endorsement from Microsoft, a notion that Apple wasn't going to die in the next few weeks.

  34. There is no conspiracy here... by Anonymous Coward · · Score: 4, Insightful

    I've been watching the paranoia around the Sun/MS deal for some considerable time and I just don't get it. This is a huge good deal for Sun. There is no conspiracy here and nothing to be concerned about.

    What could Sun achieve by proceeding with its 2002 lawsuit? The lawsuit asked for $1 billion in damages; the settlement yields Sun $700 million for antitrust issues - less than what it wanted - and a further $1,250 million covering patent royalties - which is more than what it wanted. The only reason for continuing to persue the legal case would be on a point of principle. Sun can't afford this at the moment. The fact is that the EU ruling was a watershed - Sun can't hope for any more out of MS at this time. And Microsoft is doubtless hoping that by paying out it will derail the EU ruling. I doubt there is any more to this then that - Microsoft knew it would loose in the end, and litigation is bad for any company, but particularly one that is in the throws of taking on the EU. Sun has principles, which is nice, but can no longer afford them. The idea that Sun would cease development on Java (its most important product of the last few years, central to its Linux strategy going forward and worth a not inconsiderable amount of money (50 million USD from Nokia alone)) is as daft as imaging MS will now cease work on .NET and the CLR.

    As for the rest of the debate Java is in pretty good hands at the moment - Java developers have way more influence over it then .NET developers do over .NET. Come to think of it Java developers have more influence over .NET then .NET developers do. In the end Sun may well go under in which case IBM, BEA, Oralce, Nokia, or some other company with a major vested interest in Java will buy them out. It might be Microsoft I suppose, but it seems very unlikely to me.

  35. Stallman's article by akuzi · · Score: 4, Insightful

    From Stallman's article..

    > If you develop a Java program on Sun's Java
    > platform, you are liable to use Sun-only features
    > without even noticing. By the time you find this
    > out, you may have been using them for months, and
    > redoing the work could take more months.

    You could say the same thing for GCC.

    It's possible you link to a proprietary library without noticing. It's the same with any development platform. Does this mean you should avoid using the GNU compiler?

    The reality is that standard Java is so feature-rich and there are so many open-source libraries and frameworks around you very rarely (if ever) need to resort to using proprietary libraries (Sun or not).

  36. Re:You must go the way of the apt-rpm, sir. by AKAImBatman · · Score: 4, Informative

    I don't know what those other problems you speak of stem from, for I have many RedHat boxes and have not experienced them. Perhaps the admins are idiots?

    Yes and no. The GDM problem, for example, happens when you configure the hostname. For some lame reason, GDM tries to do a reverse lookup on the hostname, and fails to start if it can't. I don't remember all the details right now, but it didn't even like it if you used a hosts file.

    The starting of daemons problems are caused by RedHat's insistence on trying to map XinetD to the concept of Windows Services. The configuration tools never work right, and the whole thing happily blows up. I've tried to tell admins to use the command line, but they want to do it the "RedHat approved way" for purposes of support.

    It may have improved, but last I checked, RedHat systems are littered with extremely complex shell scripts to do every little thing. These shell scripts work fine if you don't dive too deep into the system, but they easily start breaking as soon as you start trying to ratchet up security, or install system level software.

    RPM hell is, well, RPM hell. Eventually you install yourself into a corner, where you've got a set of mismatched dependencies. After that point, you can only force installs. You can't even uninstall anything because the dependencies have gotten so tangled. Thus the "standard" position for managing RedHat servers is to multiply them like windows machines (one task per machine), and reinstall the OS every time you requisition a machine. This procedure is covered over by the constant need to "upgrade" to the latest and greatest (and highly unstable beta software) release of RedHat Linux.

    A Solaris box is also difficult to work with on the first go-round. Usually you get sent to Sun classes and everything becomes clear.

    A Solaris box is complex. But I've really never seen anyone do irreparable harm through normal use of the machine. I remember when I received my first Solaris machine. I was a Unix newb, and had to struggle through quite a bit. But I found that the machine was well designed and laid out, and eventually I found everything I needed. The only concern I ever had with Solaris was trying to reign in the Open Source software from making a big mess out of my hard disk. (Ok, this goes in /usr/local, this goes in /opt, this goes in /usr/share/, that goes in /use/bin, this goes... over there! Oh, and you don't need the Sun 'tar' utility. Use this instead! Ugh.)

  37. Re:The Algol, the by Mornelithe · · Score: 4, Interesting

    Interesting? Perhaps the moderators fell off a truck.

    Algol descendants aren't exactly "horrible abominations," but they're not inherently better than functional languages either. If you believe they are, you probably haven't spent enough time with functional languages.

    You claim that the syntax is barely readable. I'll admit, Lisp is hard to get used to at first. However, I suspect that's because most people focus on the parentheses. If you actually get into using Lisp, and get a good editor that matches parentheses and indents for you, it becomes much easier. How is:

    if(condition) {
    stmt1;
    } else {
    stmt2;
    }

    so much different than:

    (if condition
    stmt1
    stmt2)

    ? Also, if you don't like all the parentheses, have you looked at Haskell for example? There's more to functional languages than Lisp.

    Also, how are the semantics of functional languages any more unclear than any other language? Sure, I don't expect someone to know what callcc does just by looking at it, but how would someone know what *foo does just by looking at it? Go up to a random novice with no pre-existing C knowledge and ask them what atoi does. The semantics of C-like languages are only "more clear" because you've been learning them for years, and you've never bothered to really learn functional languages.

    As for non-recursive problems, you can program in a procedural fashion in Lisp. There are macros for loops so you don't have to write tail recursion yourself. Your argument there holds no water.

    As a final note, I'd like to point out that as far as "catering to the machine," C is closer to that than modern functional languages. C is a couple steps above assembly; everything executes one line after another; you have variables that map to memory addresses; you have functions that are like blocks of code with labels (and some other magic). Haskell, on the other hand lets you write code like this:

    f x = y * y
    where y = z + sin z
    where z = x * x

    Which actually has to be executed in reverse order (more or less). That's not exactly catering to the machine.

    --

    I've come for the woman, and your head.

  38. Re:The Algol, the by pHDNgell · · Score: 4, Insightful

    For anyone attempting to measure the credibility of your post, the last sentence was greatly benefitial:

    Humans don't like recursion, thats why nobody uses LISP or anything like it.

    Personally, I don't see why people seem to think iteration and mutability is so much better an recursion over immutable structures. Recursion is functional programming is conceptually simpler because you don't have to consider state, only the particular values supplied to the function.

    Of course, many languages offer the option of side-effects and iteration and all that if you want it. Perhaps you should try to understand why people who program in functional languages use recursion so much (and yeah, a lot of people do use functional programming languages).

    --
    -- The world is watching America, and America is watching TV.