[linux-elitists] DOTGNU

Kevin A. Burton burton@openprivacy.org
Thu Dec 27 12:41:34 PST 2001


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Jason Spence <thalakan@lightconsulting.com> writes:

> On Thu, Dec 27, 2001 at 08:31:40PM +1100, Jeff Waugh developed
> a new theory of relativity and: 
> 
> > Why? The CLR is a far better, and far more future-proof (read: programmer's
> > ego proof) technology. "Java" is as silly a marketing mix of technologies as
> > ".NET", only when you get down to it, it's just one language, lots of
> > policy, and lots of Sun Microsystems buy-in.
> > 
> > So, whilst Don may choose his non-rounded-scissors C++, I'll happily hack
> > away in Python, Perl, C, C++, Java, whatever is appropriate for the task...
> > Whilst they all talk to each other via the CLR, Don can write more bindings.
<snip/>

> That's when it really hit me.  Stuff, really important stuff, is missing from
> POSIX libc.  The amount of crap I see in applications just to make portable
> development possible (and the number of similar but subtly-different solutions
> to the mystery of the Missing Utility Function) is absurd.

This isn't what the CLI is trying to solve.  The secocd you are doing POSIX
stuff you are too low level.  Think high level...

> But CLI isn't the answer either.  There's stuff it isn't going to support.
> Important stuff like open distributed computing paradigms.

Which distrubuted computing paradigms?  If you mean beowolf... maybe not.  If
you mean P2P... almost certainly.y.

> Stuff to query process status and resource usage.  Mono is going to use
> extensions to support it, but that's not 100% portable.  Oops.

Yes.  It is.  It is portable in the native level.  A lot of API calls in Java,
etc are replaced on each platform.

It isn't really about being portable in code, it is about being portable in the
interface.  

> And Java isn't the answer either.  Anybody notice that their socket interface
> is missing a couple important methods for completion notification?

simplicity is a good thing.  I haven't need completion notification in Java.

> How about the Java 1.3 "oops, our threading model was broken and we have a 5
> year old design flaw" depreciation fun?

> Oh, and no regexes, sorry.

Java has supported regexp for about 3 years now :)  See GNU Regexp, Jakarta
Regexp and Jakarta ORO.

> You'll have to write that tokenizer using StreamTokenizer, buddy.  Don't
> worry, it's only about 4x as much code.

You could write a tokenizer from scratch if you wanted.

> Someone should do a doctorate paper on the APIs developers write to create a
> portable runtime library for their application.  You know, like the wacky 100
> line portable version of open(3) that every program has so that they can open
> a file on all the platforms that are out there?  Yeah, that portable runtime
> library.

yes.  I agree.

> Mozilla would be a good start.
> 
> Then compare Informix and Oracle's source.  I'll bet that the utility
> libraries do basically the same things with different APIs.
> 
> Then look at everything else.  Figure out a common set of needed functionality
> (even if it's 10,000 entries big).
> 
> Then codify the APIs and submit them to ISO.

Java has this.  The implementation of the library takes care of this.  If open()
has different behavior on foo when compared to bar their native library impl is
changed.

You get to ride above all this garbage.

> I would rather have a 50 megabyte system runtime and 20% smaller application
> binaries than having all my applications load 6 different widget sets and 23
> ways to parse the command line into core.

OK.  Use Java :)

Kevin

- -- 
Kevin A. Burton ( burton@apache.org, burton@openprivacy.org, burtonator@acm.org )
             Location - San Francisco, CA, Cell - 415.595.9965
        Jabber - burtonator@jabber.org,  Web - http://relativity.yi.org/

Microsoft.  Its amazing what you can accomplish when you don't have to worry
about ethics or morality.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: Get my public key at: http://relativity.yi.org/pgpkey.txt

iD8DBQE8K4d+AwM6xb2dfE0RAi/rAJ9ixM0SD9G0WLB/DfOwEvKgCm36WwCeM72D
uiBRICdgvyMJy95dh+aNCLA=
=Gf7f
-----END PGP SIGNATURE-----



More information about the linux-elitists mailing list