[coyotos-dev] Accept GCJ into the tool chain?

Haplo starfirex at comcast.net
Mon Nov 27 21:18:44 CST 2006


Lisp is interesting, but running it would generally require either  
emulation or a new compiling scheme (no pun intended, but note that  
this would remove a lot of the multi-functionality of lisp meta- 
code). Interesting, but a little too abstract for my tastes. Also,  
the fact that code and data in lisp are interpreted the same could  
make for some unintentional bugs involving the interpretation of  
symbols.

On Nov 27, 2006, at 3:02 PM, Tracy R Reed wrote:

> Jonathan S. Shapiro wrote:
>> I'm interested in Java from three perspectives:
>
> I have been following this thread this morning with interest. I first
> learned about the Coyote project a couple of years ago. Actually I was
> first interested in Eros. Then I learned that project is pretty much
> dead and that Coyotos gave up on a few of the most interesting aspects
> of Eros but I am hoping that it still has potential.
>
> I would have to agree with those who say Java isn't the right tool for
> the job. Not necessarily because it runs in a virtual machine.
>
> My main problem with Java has been a lack of examples of well done  
> Java
> software and the incredible amount of RAM it always seems to require.
> Sure, there is Eclipse. That is the Free/Open Source software that
> anyone can point to as a good example of Java technology it seems. I
> have also used Azureus, LimeWire, Veritas Netbackup, Veritas Volume
> Manager, Tomcat (nearly killed our mail server when I left it running
> for one little LDAP management app and over the course of a month of
> doing nothing memory leaks used up all of the RAM), ArgoUML, Freenet,
> I2P, and a number of other Java apps I am not remembering. Not a  
> single
> one of them was stable enough to run for a month (most not even a  
> week!)
> without severe problems. I wrote my first line of Java code way  
> back in
> 1995 or so after riding a bus across town (poor college student) to  
> the
> only bookstore that had one of the first books on Java. Back then I
> learned that due to poor browser support it was not good at its most
> touted ability which was to make web applets. I have followed Java  
> ever
> since and find that despite major corporate boosting and claims of  
> great
> success from Sun, Oracle, IBM, etc. it just doesn't work out for me  
> like
> they say it should. To this day there still isn't a single java app  
> that
> I use on a daily basis. Whenever I mention this apparent lack of  
> quality
> in Java or the applications written with Java FOSS Java coders simply
> say "Hey, we're doing the best we can with what we've got." and the
> corporate FOSS Java coders say "Good Java code can be written if you
> know what you are doing and all those other guys don't. I'm too  
> busy to
> help out those FOSS projects."
>
> Maybe Java is great and solid code can be created with it. But not by
> the FOSS community it seems. With the ever-present exception of  
> Eclipse
> which was originally formed by corporations such as Borland, IBM,
> MERANT, QNX Software Systems, Rational Software, Red Hat, SuSE,
> TogetherSoft and Webgain (who formed the first Board of Stewards in
> November 2001). Perhaps corporate discipline is what it takes to  
> produce
> good Java code. Other than that I am still puzzled.
>
> And then there is the issue of licensing. GCJ is GPL. But Sun's
> implementation just went GPL also. Which to use? Sun's is far more
> capable. But Sun's implementation, the only one which can compile the
> above-mentioned Java apps, has only recently become GPL. Remember when
> Star Office and Netscape both became FOSS? It took years for them to
> build a community and generate somewhat-passable code. I still  
> can't get
> either one to compile myself. I am glad someone can so that it can be
> included in my favorite distro and that they can generally run for  
> a few
> weeks before crashing.
>
> But I am definitely of the opinion that as much software as possible
> should be written in a high level language. C/C++ are only for cases
> where you really need to talk to the hardware directly and manage your
> own memory or inner loops that really need optimization. Doubly so for
> assembly of course. Programmer time is expensive, cpu time is cheap.
> Were it not for HLL's a lot of code would never get written because
> nobody can afford it. And the added code correctness/security  
> guarantees
> that can be made with a high level language (bounds checking, type
> safety, etc) are definitely worth it IMHO.
>
>> Note that I'm not stuck on Java per se here. What I'm after is a safe
>> programming language that can be used to write domain code that is  
>> not
>> performance critical. Other languages, including C#, ML, Haskell, or
>> even Scheme, would meet this goal. While ML and Haskell are great
>> languages, I rule them out mainly because of the lack of  
>> programmers who
>> know them. I would frankly prefer C# to Java, but I don't see a  
>> stable
>> statically compiled implementation that is available *today*.
>
> Very interesting. I have been doing a lot of reading about Scheme and
> Haskell lately. Haskell seems to be a great language for writing  
> (almost
> provably) correct code and it compiles to very fast executables.
>
> http://shootout.alioth.debian.org/debian/benchmark.php? 
> test=all&lang=ghc&lang2=java
>
> And because it is purely functional with no side-effects it is trivial
> to parallelize Haskell code to run on the dual, quad, 8, 16, 32+ core
> cpu's that are coming down the pipe. I am confident that this is going
> to be a very important property in the near future that may well push
> functional programming into the mainstream. The fact that Linspire has
> adopted Haskell as the official language of their distro (they code  
> the
> installer, hardware auto-detection, various sysadmin tools with it)
> bought a lot of credibility with me also. I know the Linspire guys and
> although I have strong philosophical differences around how their
> leadership runs their distribution I know the coders are really smart
> guys. Haskell not only has native code compilers but also has
> interpreters for rapid development (removes compiling from the edit,
> compile, test, debug cycle).
>
> When checking out how popular any given language is in the FOSS  
> world I
> like to take a look at IRC. Java is immensely popular in the corporate
> world but not nearly so much so in the FOSS world. I did a /list on a
> few key channels on Freenode to see how many people were in that  
> channel
> to help people out and discuss projects written in that language:
>
> ##java           254
> #haskell         253
> #scheme          127
> ##c              441
> #lisp            228
> #erlang          50
> #ml              doesn't exist
>
> It turns out Haskell has quite a lot of mindshare in the FOSS  
> world. On
> par with Java! But neither have nearly so much as C. This is about  
> what
> I would expect.
>
> Lisp (of which Scheme is a dialect) is quite interesting also and  
> has a
> very long and storied history. I like the purity of Scheme  
> (although not
> purely functional) over something like Common Lisp and Scheme has lots
> of great books written to teach it (although I hear On Lisp and
> Practical Common Lisp are excellent books for Common Lisp and will  
> pick
> them up someday). I have gone through The Little Schemer and Reasoned
> Schemer and I am now going through Simply Scheme and watching the
> Abelson and Sussman videos from MIT. These are a great way to learn
> programming in Lisp.
>
> http://www.swiss.ai.mit.edu/classes/6.001/abelson-sussman-lectures/
>
> Once I get comfortable with Scheme I intend to move on to Haskell. I
> could just do Haskell first but I have always wanted to learn Lisp
> anyway. I have looked at Erlang also and really like their model of
> concurrency and message passing but I feel that is something which can
> be done just as well in Haskell which has a lot more mindshare and  
> support.
>
>> 3. As a language for crafting some of our cross-development tools  
>> [this
>> is the immediate issue]. For example, mkimage could very quickly be
>
> Any of the above languages would work just fine for cross-development.
>
>> For things like compilers, where GC and exception handling are  
>> extremely
>> useful, what languages are people using that I may be failing to
>> consider?
>
> I think you have all of the reasonable possibilities covered above.
>
> -- 
> Tracy R Reed                  http://ultraviolet.org
> A: Because we read from top to bottom, left to right
> Q: Why should I start my reply below the quoted text
> _______________________________________________
> coyotos-dev mailing list
> coyotos-dev at smtp.coyotos.org
> http://www.coyotos.org/mailman/listinfo/coyotos-dev



More information about the coyotos-dev mailing list