Re: OT: Politics of Java

2002-12-15 Thread Craig Dickson
Eric G. Miller wrote:

 On Sat, Dec 14, 2002 at 08:46:43PM -0800, Craig Dickson wrote:
 
  Yes, but the question is, how usable is it in practice? 
 [snip]
 
 People use tasks in Ada on a regular basis.  So, it must be usable,
 neigh?

By the same reasoning, concurrency support in C and C++ must be really
great, because there are lots of multithreaded programs written in those
languages. I've written many myself. Yet, in fact, there is no
concurrency support at all in those languages.

 3
   * a call on a protected subprogram of a protected object, providing
 exclusive read-write access, or concurrent read-only access to
 shared data;

What makes a subprogram protected? Is this a keyword or something that
the programmer has to put in the right place, like Java's
synchronized?

 8
 In addition, tasks can communicate indirectly by reading and
 updating (unprotected) shared variables, presuming the access is
 properly synchronized through some other kind of task interaction.

This sounds like thread synchronization is the programmer's problem,
at least for the case of unprotected variables.

This all sounds considerably more portable than C threading (which is
dependent either on calling OS services directly, or using a third-party
library that may not be available on all platforms, or may have
licensing issues), but not necessarily all that much better. The crucial
point, to me, is that for at least the most common kinds of thread
communication and data sharing, it should not be necessary for the
programmer to remember to do anything extra (like mark functions or
variables with a special thread-safety keyword). Erlang meets this
requirement in spades; I don't know of another language that does.

Craig




msg19236/pgp0.pgp
Description: PGP signature


Re: OT: Politics of Java

2002-12-15 Thread Eric G. Miller
On Sun, Dec 15, 2002 at 09:09:48AM -0800, Craig Dickson wrote:
 Eric G. Miller wrote:
 
  On Sat, Dec 14, 2002 at 08:46:43PM -0800, Craig Dickson wrote:
  
   Yes, but the question is, how usable is it in practice? 
  [snip]
  
  People use tasks in Ada on a regular basis.  So, it must be usable,
  neigh?
 
 By the same reasoning, concurrency support in C and C++ must be really
 great, because there are lots of multithreaded programs written in those
 languages. I've written many myself. Yet, in fact, there is no
 concurrency support at all in those languages.

Yes, it isn't much of an argument for.  As I inidicated originally, I
just was pointing out the capability but don't have enough experience
to argue the merits of one approach vs. another.  I've looked at what
is involved for C to do threading vs. Ada, and the Ada approach is
at least superficially much cleaner (as it is part of the language
design).  Also, the tasking mechanism is supposed to be available
even when the underlying OS doesn't have direct support (say DOS).
It is up to the compiler/run-time to handle the platform details...

  3
* a call on a protected subprogram of a protected object, providing
  exclusive read-write access, or concurrent read-only access to
  shared data;
 
 What makes a subprogram protected? Is this a keyword or something that
 the programmer has to put in the right place, like Java's
 synchronized?

I don't know Java, but protected is a keyword.  But, you don't just
stick it anywhere anymore than you would stick class wherever.

  8
  In addition, tasks can communicate indirectly by reading and
  updating (unprotected) shared variables, presuming the access is
  properly synchronized through some other kind of task interaction.
 
 This sounds like thread synchronization is the programmer's problem,
 at least for the case of unprotected variables.

AFAIK, yes.

 This all sounds considerably more portable than C threading (which is
 dependent either on calling OS services directly, or using a third-party
 library that may not be available on all platforms, or may have
 licensing issues), but not necessarily all that much better. The crucial
 point, to me, is that for at least the most common kinds of thread
 communication and data sharing, it should not be necessary for the
 programmer to remember to do anything extra (like mark functions or
 variables with a special thread-safety keyword). Erlang meets this
 requirement in spades; I don't know of another language that does.

Ada is really fairly low-level like C or C++.  I have not investigated
Eiffel much, but people seem to ooze affection when talking about it.
So, I'd be interested to see if/how it approaches the matter.  Anyway,
different languages meet different needs and none will probably ever be
a magic bullet.

-- 
...the plural of anecdote is [not?] data.  - attrib. to George Stigler


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: OT: Politics of Java

2002-12-14 Thread Rob Weir
On Fri, Dec 13, 2002 at 01:50:06PM -0800, Craig Dickson wrote:
 Eric G. Miller wrote:
 
  Ada tasks provide concurrency. I'm not enough of a language expert
  to discuss the merits, but folks seem to use them...
 
 I'm not an Ada expert either, but the fact that people use it isn't
 much of an argument. People do multi-threaded programming in C, too,
 and ANSI C has _no_ concurrency support whatsoever. You have to use
 OS services directly, or a non-standard library, to create threads,
 to serialize access to shared data, etc.

Just coming off a concurrent systems course at my Uni: Ada was created
for this sort of thing; i.e. it has built in support for concurrency,
rendezvouses (is that a plural already), monitors, etc, etc at the
language level.

-rob



msg19185/pgp0.pgp
Description: PGP signature


Re: OT: Politics of Java

2002-12-14 Thread Craig Dickson
Rob Weir wrote:

 Just coming off a concurrent systems course at my Uni: Ada was created
 for this sort of thing; i.e. it has built in support for concurrency,
 rendezvouses (is that a plural already), monitors, etc, etc at the
 language level.

Yes, but the question is, how usable is it in practice? Java, Erlang,
Concurrent Clean, and other languages also have built-in concurrency
support. I'm not familiar with Clean's approach, and I dislike Java's
(which basically amounts to making the programmer do all the work);
Erlang's is quite nice. Erlang is basically designed around the idea of
parallel, distributed tasks, each of them implemented internally in a
more or less pure functional model, communicating by means of
asynchronous messages that can contain whatever data you want to send.
This is not a bag on the side like Java's synchronized keyword; it's
fundamental to the basic design of the language, and it's really nice.

I have never learned Ada, partly because I've never needed to and
partially because it's never attracted my interest, in part due to its
reputation as the PL/I of the '80s (translation: a vastly overcomplex,
do-everything-but-do-nothing-well language... hmm... come to think of
it, that sounds a lot like C++). So if you're familiar enough with Ada's
concurrency model to describe it for us here, please do.

Craig



msg19192/pgp0.pgp
Description: PGP signature


Re: OT: Politics of Java

2002-12-14 Thread Eric G. Miller
On Sat, Dec 14, 2002 at 08:46:43PM -0800, Craig Dickson wrote:

 Yes, but the question is, how usable is it in practice? 
[snip]

People use tasks in Ada on a regular basis.  So, it must be usable,
neigh?

 I have never learned Ada, partly because I've never needed to and
 partially because it's never attracted my interest, in part due to its
 reputation as the PL/I of the '80s (translation: a vastly overcomplex,

I've been recently attracted to Ada due to its ability to catch many
more errors at compile time than C (meaning, less bug hunting).  I was
shocked when I first started using it how many things the compiler
would complain about.  One tricky bit is the visibility rules, esp.
in relationship to operators.  Anyway, I think it is much maligned
simply as a reaction to its origin w/ the US DOD or because of its
Pascal'ish syntax.

 From chapter 9 of the Ada95 Reference Manual w/ Tech. Corrigendum 1:
(http://www.adaic.com/standards/95lrm/html/RM-TTL.html)
   
   Section 9: Tasks and Synchronization
1
The execution of an Ada program consists of the execution of one or
more tasks. Each task represents a separate thread of control that
proceeds independently and concurrently between the points where it
interacts with other tasks. The various forms of task interaction
are described in this section, and include:
2
  * the activation and termination of a task;
3
  * a call on a protected subprogram of a protected object, providing
exclusive read-write access, or concurrent read-only access to
shared data;
4
  * a call on an entry, either of another task, allowing for synchronous
communication with that task, or of a protected object, allowing for
asynchronous communication with one or more other tasks using that
same protected object;
5
  * a timed operation, including a simple delay statement, a timed entry
call or accept, or a timed asynchronous select statement (see next
item);
6
  * an asynchronous transfer of control as part of an asynchronous select
statement, where a task stops what it is doing and begins execution
at a different point in response to the completion of an entry call
or the expiration of a delay;
7
  * an abort statement, allowing one task to cause the termination of
another task.
8
In addition, tasks can communicate indirectly by reading and
updating (unprotected) shared variables, presuming the access is
properly synchronized through some other kind of task interaction.

 Static Semantics
9
The properties of a task are defined by a corresponding task
declaration and task_body, which together define a program unit
called a task unit.

 Dynamic Semantics
10
Over time, tasks proceed through various states. A task is initially
inactive; upon activation, and prior to its termination it is either
blocked (as part of some task interaction) or ready to run. While
ready, a task competes for the available execution resources that it
requires to run.

   NOTES
11
  1  
Concurrent task execution may be implemented on multicomputers,
multiprocessors, or with interleaved execution on a single physical
processor. On the other hand, whenever an implementation can
determine that the required semantic effects can be achieved when
parts of the execution of a given task are performed by different
physical processors acting in parallel, it may choose to perform
them in this way.

-- 
...the plural of anecdote is [not?] data.  - attrib. to George Stigler


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: OT: Politics of Java

2002-12-13 Thread Eric G. Miller
On Thu, Dec 12, 2002 at 10:11:26PM -0800, Craig Dickson wrote:
[snip]
 It really is a cool language; the only one I know of with a really
 usable concurrency model. (C/C++ have no concurrency model; Java's
 requires programmers to stick the synchronized keyword in all the
 right places; Haskell's use of lazy evaluation to model coroutines is
 cute, but not at all the same thing, just as their two-line qsort demo
 isn't really a qsort if you look at it closely; etc.)

Ada tasks provide concurrency. I'm not enough of a language expert
to discuss the merits, but folks seem to use them...

And that quicksort looked kinda like a merge sort to me ;-)

-- 
...the plural of anecdote is [not?] data.  - attrib. to George Stigler


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: OT: Politics of Java

2002-12-13 Thread Craig Dickson
Eric G. Miller wrote:

 Ada tasks provide concurrency. I'm not enough of a language expert
 to discuss the merits, but folks seem to use them...

I'm not an Ada expert either, but the fact that people use it isn't
much of an argument. People do multi-threaded programming in C, too,
and ANSI C has _no_ concurrency support whatsoever. You have to use
OS services directly, or a non-standard library, to create threads,
to serialize access to shared data, etc.

Craig



msg19017/pgp0.pgp
Description: PGP signature


Re: OT: Politics of Java

2002-12-12 Thread Paul Mackinney
David Z Maze declaimed:
 One of these days
 I'll get around to doing a reasonable-sized project in Haskell,
 though: it has an incredible type system and seems to do the right
 thing around classes, though this is only so meaningful in a purely
 functional language.  Saying well, I wrote about half of a compiler
 in Haskell certainly gets interesting reactions from the right sort
 of people...  :-)
Heh, me too! (Although likely on a more modest scale) I've just finished
a Programming Languages course where we used Haskell to write a lambda
calculus evaluator. Writing the input expressions as structures (Lambda
x (Var y)) was so irritating that I wrote a parser to field string
input (/x.y). It works nicely, although only the interpreter's
built-in limits keep it from blowing up on expressions that expand
infinitely.

For those who've never seen this language, here's the quicksort
algorithm in 2 lines:
qsort([])= []
qsort((a:b)) = qsort([x | x-b, xa])++[a]++qsort([y| y-b, ya])

Not sure about licensing, but it's small, free, and available for *nix,
MacOS, and Wintel. http://haskell.org
-- 
Paul Mackinney
[EMAIL PROTECTED]


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: OT: Politics of Java

2002-12-12 Thread Craig Dickson
Paul Mackinney wrote:

 Heh, me too! (Although likely on a more modest scale) I've just finished
 a Programming Languages course where we used Haskell to write a lambda
 calculus evaluator. Writing the input expressions as structures (Lambda
 x (Var y)) was so irritating that I wrote a parser to field string
 input (/x.y). It works nicely, although only the interpreter's
 built-in limits keep it from blowing up on expressions that expand
 infinitely.

Haskell is nice for what it is, but I wouldn't really call it a
practical language, simply because, last time I checked, performance
wasn't very good, and it didn't have much in the way of libraries. But
it is very elegant syntactically.

Erlang (http://www.erlang.org) is, I think, a better choice for real
work. It is also a functional language, but with built-in concurrency
using asynchronous messages to pass data between processes which may
live on the same machine or on other machines reachable via a network.
Ericsson has used it in a number of significant projects, including a
high-performnance ATM router the model number of which I no longer
recall.

 Not sure about licensing, but it's small, free, and available for *nix,
 MacOS, and Wintel. http://haskell.org

Erlang is not only free software, but it's already packaged for Debian
(though I think it's been orphaned; it's in stable, but no longer in
testing or unstable).

Craig



msg18818/pgp0.pgp
Description: PGP signature


Re: OT: Politics of Java

2002-12-12 Thread Craig Dickson
Craig Dickson wrote:

 Erlang is not only free software, but it's already packaged for Debian
 (though I think it's been orphaned; it's in stable, but no longer in
 testing or unstable).

(Whacks self with ruler)

My first search must have been set to stable only; on second glance, I
see that there is a new Erlang maintainer, and new packages in unstable.

It really is a cool language; the only one I know of with a really
usable concurrency model. (C/C++ have no concurrency model; Java's
requires programmers to stick the synchronized keyword in all the
right places; Haskell's use of lazy evaluation to model coroutines is
cute, but not at all the same thing, just as their two-line qsort demo
isn't really a qsort if you look at it closely; etc.)

Craig




msg18820/pgp0.pgp
Description: PGP signature


Re: OT: Politics of Java

2002-11-24 Thread Joshua Lee
On Thu, Nov 21, 2002 at 07:41:19PM +, Colin Watson wrote:
   However, as I started to download the SDK from Sun's web site, it 
  
  I'm confused. Isn't this what we have a non-free section for? 
 
 We still have to be able to distribute it to put it in non-free. As I
 understand it, that isn't the case for newer JDKs.

Blackdown has a 1.4 that will probably become available via third-party
unofficial deb repositories as 1.3 is. There's a server, in .uk IIRC,
where you can get the blackdown 1.4 beta, but its sid-only as it has as
a dependency sid's version of glibc.


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: OT: Politics of Java

2002-11-24 Thread Oki DZ
On Thu, Nov 21, 2002 at 07:41:19PM +, Colin Watson wrote:
 On Thu, Nov 21, 2002 at 01:49:35PM -0500, Michael P. Soulier wrote:
  On 20/11/02 Kent West did speaketh:
   However, as I started to download the SDK from Sun's web site, it 
   started bothering me more and more that Sun's license is such that it 
   prevents Debian from including it as part of the distro. I'm not sure of 
  
  I'm confused. Isn't this what we have a non-free section for? 
 
 We still have to be able to distribute it to put it in non-free. As I
 understand it, that isn't the case for newer JDKs.

There are quite many free JVMs out there. If Java would be standard in
Debian, one of them could be used.

As I understand it, the JDK has to be downloaded from the site
because Sun wants to keep the tally of the downloaders, and sort of
keeping track of you if you are downloading from the JDC.

Oki


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: OT: Politics of Java

2002-11-21 Thread Ron Johnson
On Thu, 2002-11-21 at 00:18, Kirk Strauser wrote:
 
 At 2002-11-21T05:06:49Z, Kent West [EMAIL PROTECTED] writes:
 
  I'm just curious; do other folks (particularly real developers, not just
  tinkerer-wanna-be's like myself) have a similar problem with Java, or have
  I just been channeling too much RMS lately?
 
 You're not alone.  I've never felt good about Java for the same reason that
 I don't like dealing with proprietary software: if the vendor decides to EOL
 the software, I'm stuck with a glob of quickly-obsoleting mess.  Sun may
 very well develop and maintain Java for decades to come, but they could also
 drop the project tomorrow and start reigning in usage of their trademark.
 It probably won't happen, but it *could*, and that kind of bothers me.

I wonder if they (Sun) really do see themselves as a bulwark 
against The Evil Empire, like Gondor warring against Mordor?

-- 
++
| Ron Johnson, Jr. mailto:[EMAIL PROTECTED]  |
| Jefferson, LA  USA   http://members.cox.net/ron.l.johnson  |
||
| they love our milk and honey, but preach about another|
|  way of living|
|Merle Haggard, The Fighting Side Of Me|
++


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: OT: Politics of Java

2002-11-21 Thread Sean 'Shaleh' Perry
On Thursday 21 November 2002 00:12, Ron Johnson wrote:
 On Thu, 2002-11-21 at 00:18, Kirk Strauser wrote:
  At 2002-11-21T05:06:49Z, Kent West [EMAIL PROTECTED] writes:
   I'm just curious; do other folks (particularly real developers, not
   just tinkerer-wanna-be's like myself) have a similar problem with Java,
   or have I just been channeling too much RMS lately?
 
  You're not alone.  I've never felt good about Java for the same reason
  that I don't like dealing with proprietary software: if the vendor
  decides to EOL the software, I'm stuck with a glob of quickly-obsoleting
  mess.  Sun may very well develop and maintain Java for decades to come,
  but they could also drop the project tomorrow and start reigning in usage
  of their trademark. It probably won't happen, but it *could*, and that
  kind of bothers me.

 I wonder if they (Sun) really do see themselves as a bulwark
 against The Evil Empire, like Gondor warring against Mordor?

much more like orks v. goblins. or the European countries during the colonial 
era.


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: OT: Politics of Java

2002-11-21 Thread Oki DZ
On Wed, Nov 20, 2002 at 11:34:16PM -0600, Michael Kahle wrote:
 Is the standard, controlled entirely by Sun?

It's by the JCP.
Anyone may join the JCP; I don't think that Java is controlled mainly by
Sun.
 
 I'm not sure how mature this is, but if your interested in Java programming
 without the politics.
 http://gcc.gnu.org/java/

The above is the collection of the tools (for developing Java programs).
I believe that _implementing_ Java is open for anyone. What Sun wants is
just that if your products want to be called Java, then comply to what
JCP says on Java (the spec. I mean). I think it's not only on the Java
language, but also on the bytecodes; you have to follow certain
standards.

Oki


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: OT: Politics of Java

2002-11-21 Thread Derrick 'dman' Hudson
On Wed, Nov 20, 2002 at 10:04:30PM -0800, Sean 'Shaleh' Perry wrote:
| On Wednesday 20 November 2002 21:06, Kent West wrote:
| 
|  I'm just curious; do other folks (particularly real developers, not just
|  tinkerer-wanna-be's like myself) have a similar problem with Java, or
|  have I just been channeling too much RMS lately?

I would avoid java if I wasn't require to use it in class and at work.
Since I am required, use this apt sources line and install the
'j2sdk1.4' package.
deb ftp://ftp.tux.org/pub/java/debian/ sid main non-free

| If you are looking for an easy, fun, quick to learn language give Python a 
| try.

I agree here.  In fact, python is older, more cross-platform and more
OO than java is.  All it lacks is the marketing budget of Sun.

-D

-- 
A perverse man stirs up dissension,
and a gossip separates close friends.
Proverbs 16:28
 
http://dman.ddts.net/~dman/



msg14413/pgp0.pgp
Description: PGP signature


Re: OT: Politics of Java

2002-11-21 Thread Hubert Chan
 Craig == Craig Dickson [EMAIL PROTECTED] writes:

Craig Michael Kahle wrote:
 Does the fact that they control the standard prohibit others from
 implementing the language with other standards if they see fit?
 Forking the project so to speak?

Craig It's called C#. So yes, it is possible, but you can't call the
Craig resulting language Java without Sun's permission, which you're
Craig unlikely to get if you deviate from their standards.

Or the Microsoft(R) Virtual Machine, Microsoft(R)'s implementation of
Java(TM).  Microsoft(R) originally called it a Java(TM) VM, but they
took certain liberties with it, and Sun(TM) forced them to stop calling
it Java(TM).

-- 
Hubert Chan [EMAIL PROTECTED] - http://www.uhoreg.ca/
PGP/GnuPG key: 1024D/124B61FA
Fingerprint: 96C5 012F 5F74 A5F7 1FF7  5291 AF29 C719 124B 61FA
Key available at wwwkeys.pgp.net.   Encrypted e-mail preferred.



msg14417/pgp0.pgp
Description: PGP signature


Re: OT: Politics of Java

2002-11-21 Thread Craig Dickson
Kent West wrote:

 Shaleh was the one to plug python first. But what dman says here gets my 
 attention. Do others concur that python is more cross-platform and more 
 OO than java?

It probably is supported on more platforms, since it's open source. More
OO... hmm. Possibly. Of course, this opens up the whole quagmire of what
it means to be OO. I personally think that OO languages that depend on
inheritance to determine whether a given method is available in an
object are too restrictive. I prefer the Smalltalk or OCAML style of OO,
where if two classes both have a method foo(int), then you can pass either
one to a function such as the following:

f(x) { x.foo(3); }

Java and C++ won't let you do that unless the two classes are related by
inheritance (either one from the other, or both from a common base class
or interface that defines the foo(int) method). Smalltalk and OCAML
don't care about that; if the method exists, you're fine. You might
think that would require runtime checking, but it's usually possible to
verify it at compile time, and modern compilers will do so.

 What are the disadvantages with python as opposed to java? 

Performance, possibly? I'm not sure how fast python is these days.
Java's JIT compilation helps a lot, and gcc 3.x supports compiling Java
directly to native code (not sure how usable it is yet).

 Why would someone pick java over python then? Is it only because of 
 marketing, as dman says?

Primarily, yes.

Craig


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: OT: Politics of Java

2002-11-21 Thread Kirk Strauser

At 2002-11-21T17:42:27Z, Kent West [EMAIL PROTECTED] writes:

 Shaleh was the one to plug python first. But what dman says here gets my
 attention. Do others concur that python is more cross-platform and more OO
 than java?

Both are available for pretty much every major platform.  Python is
available on more non-mainstream systems:

  http://java.sun.com/cgi-bin/java-ports.cgi
  http://www.python.org/download/
  http://www.python.org/download/download_other.html

Of interest, Perl and Python are moving toward a common virtual machine
(Parrot), although it may take a while.  I'd be a full-time Python
programmer if I knew I could transparently access my Perl codebase.

 What are the disadvantages with python as opposed to java?

It seems like there should be *something*, but I can't think of a single
drawback except that there are probably more development environments for
Java than Python.  I use Emacs, so both languages are pretty equally easy
for me to use, but Windows users may not be in the same boat.

 Why would someone pick java over python then? Is it only because of
 marketing, as dman says?

Actually, since you mention it, that's the only reason I can think of.
-- 
Kirk Strauser
In Googlis non est, ergo non est.


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




RE: OT: Politics of Java

2002-11-21 Thread Charlie Reiman


 -Original Message-
 From: Kent West [mailto:[EMAIL PROTECTED]]
 Sent: Thursday, November 21, 2002 9:42 AM
 To: [EMAIL PROTECTED]
 Subject: Re: OT: Politics of Java


 Derrick 'dman' Hudson wrote:

 On Wed, Nov 20, 2002 at 10:04:30PM -0800, Sean 'Shaleh' Perry wrote:
 | On Wednesday 20 November 2002 21:06, Kent West wrote:
 | 
 |  I'm just curious; do other folks (particularly real
 developers, not just
 |  tinkerer-wanna-be's like myself) have a similar problem with Java, or
 |  have I just been channeling too much RMS lately?
 
 I would avoid java if I wasn't require to use it in class and at work.
 Since I am required, use this apt sources line and install the
 'j2sdk1.4' package.
 deb ftp://ftp.tux.org/pub/java/debian/ sid main non-free
 
 | If you are looking for an easy, fun, quick to learn language
 give Python a
 | try.
 
 I agree here.  In fact, python is older, more cross-platform and more
 OO than java is.  All it lacks is the marketing budget of Sun.
 
 -D
 
 
 
 Shaleh was the one to plug python first. But what dman says here gets my
 attention. Do others concur that python is more cross-platform and more
 OO than java? What are the disadvantages with python as opposed to java?
 Why would someone pick java over python then? Is it only because of
 marketing, as dman says?

 Kent

We're really really off topic here. Personally, I like Java better but this
is personal preference.

Java:
  - Owned by sun
  + Well spec'd from the beginning
  - Huge. standard libraries have lots of useless crap
  o Unicode-16 is std string representation. Good for i18n, bad for
performance.
  + Well integrated thread and lock support.
  + Latest VMs are very fast
  + Real garbage collector
  o C syntax
  o Some non-object types. Helpful for performance.

Python:
  + Free. Very free.
  - Reference counting collector.
  o Simple syntax. Easy to learn but limits sophisticated stuff.
  + 8 bit strings by default
  - VM is bytecode only, relatively slow
  + Many libraries available but not part of core. Just get what you need.
  - Object attributes live in hashes. Very dynamic but very slow.
  o Everything is an object. Helpful for development.

Both languages are still evolving rapidly and both are pretty nice. I would
never say either is better in general. It depends on what you want to do.
Either language would make a good choice for a learning language as neither
demands you learn bad habits to get work done.

And no one says you have to learn just one language.

I would say if you are sitting at the end of a slow pipe, you should
download python. You could be waiting for hours before you get Java
downloaded. As a professional, the choice of language is often made before I
get hired so I have to be flexible and rather agnostic.


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: OT: Politics of Java

2002-11-21 Thread Michael P. Soulier
On 20/11/02 Kent West did speaketh:

 However, as I started to download the SDK from Sun's web site, it 
 started bothering me more and more that Sun's license is such that it 
 prevents Debian from including it as part of the distro. I'm not sure of 

I'm confused. Isn't this what we have a non-free section for? 

Mike

-- 
Michael P. Soulier [EMAIL PROTECTED], GnuPG pub key: 5BC8BE08
...the word HACK is used as a verb to indicate a massive amount
of nerd-like effort.  -Harley Hahn, A Student's Guide to Unix
HTML Email Considered Harmful: http://expita.com/nomime.html



msg14433/pgp0.pgp
Description: PGP signature


Re: OT: Politics of Java

2002-11-21 Thread John Schmidt
On Thursday 21 November 2002 10:42 am, Kent West wrote:
 Derrick 'dman' Hudson wrote:
 On Wed, Nov 20, 2002 at 10:04:30PM -0800, Sean 'Shaleh' Perry wrote:
 | On Wednesday 20 November 2002 21:06, Kent West wrote:
 |  I'm just curious; do other folks (particularly real developers,
 |  not just tinkerer-wanna-be's like myself) have a similar problem
 |  with Java, or have I just been channeling too much RMS lately?
 
 I would avoid java if I wasn't require to use it in class and at
  work. Since I am required, use this apt sources line and install
  the 'j2sdk1.4' package.
 deb ftp://ftp.tux.org/pub/java/debian/ sid main non-free
 
 | If you are looking for an easy, fun, quick to learn language give
 | Python a try.
 
 I agree here.  In fact, python is older, more cross-platform and
  more OO than java is.  All it lacks is the marketing budget of Sun.
 
 -D

 Shaleh was the one to plug python first. But what dman says here gets
 my attention. Do others concur that python is more cross-platform and
 more OO than java? What are the disadvantages with python as opposed
 to java? Why would someone pick java over python then? Is it only
 because of marketing, as dman says?

 Kent

I write c++ code for my job and don't have any experience with either 
java or python (other than nominally playing around with python).  
Python is developed in c, so if an architecture has a compliant c 
compiler, more than likely, you can get the python interpreter compiled 
and run your python scripts.  Porting java to a new architecture is 
probably harder as evidence by the lack of willing partners to get the 
blackdown port of the latest (1.4??) running on the powerpc chip.

Reasons for choosing one over the other:
1.  Performance
2.  Development enviroment -- toolchain support.
3.  Availability of qualified developers that know the language -- 
certainly more java developers than python.
4.  Notion of higher (or better) cross-platform support for the big 3 in 
OSes (Windows, UNIX/Linux, MacOS(X)) -- companies actually provide the 
support for these enviroments as opposed to volunteers in the open 
source community.  
5.  Library support (or the availability) for the given application.
6.  Size of application, how well does the language scale for large code 
bases.  Scripting languages don't as a rule scale -- you don't write 
tens of thousands lines of code in a scripting language -- although I 
have heard that python does scale much better than tcl for example.  
You will always hear someone say, but . . oh I have written X number 
of lines of code in blah, and it was just fine. . .   Is that 
typical??
7.  Higher ups dictating the tool for the job without understanding all 
of the requirements -- pros, cons of using one tool over the other.  
8.  Marketing hype (or lack of).

I am not a language expert to know if python is more or less OO than 
java.  This depends on your definition of OO (which even defies an 
absolute definition from the language gurus).  

I would certainly think that python would work better for gluing 
different applications together than java, since scripting languages do 
a good job in this department.  I also think that python would win for 
rapid prototyping some code idea.  It might also be more fun to develop 
in python because of the rapid feedback from working in an 
interpretative enviroment.  

John


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: OT: Politics of Java

2002-11-21 Thread Michael P. Soulier
On 21/11/02 Kent West did speaketh:

 Shaleh was the one to plug python first. But what dman says here gets my 
 attention. Do others concur that python is more cross-platform and more 
 OO than java? What are the disadvantages with python as opposed to java? 
 Why would someone pick java over python then? Is it only because of 
 marketing, as dman says?

No. Python is a great language, but it is a scripting language in the same
solution space as Perl. Java scales better to large projects, like C++ does,
due to its strict rules and strong typing. 

Python _is_ a blast though. I'm the webmaster for this site
http://opag.ca, and everything there is done in Python. Zope is also well
worth looking at, if you buy into the whole web services rant coming from
the Java and .NET backers. 

Mike

-- 
Michael P. Soulier [EMAIL PROTECTED], GnuPG pub key: 5BC8BE08
...the word HACK is used as a verb to indicate a massive amount
of nerd-like effort.  -Harley Hahn, A Student's Guide to Unix
HTML Email Considered Harmful: http://expita.com/nomime.html



msg14436/pgp0.pgp
Description: PGP signature


Re: OT: Politics of Java

2002-11-21 Thread Vineet Kumar
* Oki DZ ([EMAIL PROTECTED]) [021121 01:05]:
 On Wed, Nov 20, 2002 at 11:34:16PM -0600, Michael Kahle wrote:
  Is the standard, controlled entirely by Sun?
 
 It's by the JCP.
 Anyone may join the JCP; I don't think that Java is controlled mainly by
 Sun.
  
  I'm not sure how mature this is, but if your interested in Java programming
  without the politics.
  http://gcc.gnu.org/java/
 
 The above is the collection of the tools (for developing Java programs).
 I believe that _implementing_ Java is open for anyone. What Sun wants is
 just that if your products want to be called Java, then comply to what
 JCP says on Java (the spec. I mean). I think it's not only on the Java
 language, but also on the bytecodes; you have to follow certain
 standards.

This actually worked out quite nicely a few years back with Microsoft
tried its embrace and extend technique with visual J++.  Sun said
that ain't Java, and it was good.  Otherwise, there would be all this
MS Java crap floating around that would only work correctly on windows,
abandoning Java's cross-platform ideology.

good times,
Vineet
-- 
http://www.doorstop.net/
-- 
As we enjoy great advantages from inventions of others, we should be glad
of an opportunity to serve others by any invention of ours; and this we
should do freely and generously.  --Benjamin Franklin



msg14448/pgp0.pgp
Description: PGP signature


Re: OT: Politics of Java

2002-11-21 Thread Colin Watson
On Thu, Nov 21, 2002 at 01:49:35PM -0500, Michael P. Soulier wrote:
 On 20/11/02 Kent West did speaketh:
  However, as I started to download the SDK from Sun's web site, it 
  started bothering me more and more that Sun's license is such that it 
  prevents Debian from including it as part of the distro. I'm not sure of 
 
 I'm confused. Isn't this what we have a non-free section for? 

We still have to be able to distribute it to put it in non-free. As I
understand it, that isn't the case for newer JDKs.

-- 
Colin Watson  [[EMAIL PROTECTED]]


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: OT: Politics of Java

2002-11-21 Thread Ron Johnson
On Thu, 2002-11-21 at 02:23, Sean 'Shaleh' Perry wrote:
 On Thursday 21 November 2002 00:12, Ron Johnson wrote:
  On Thu, 2002-11-21 at 00:18, Kirk Strauser wrote:
   At 2002-11-21T05:06:49Z, Kent West [EMAIL PROTECTED] writes:
[snip]
   mess.  Sun may very well develop and maintain Java for decades to come,
   but they could also drop the project tomorrow and start reigning in usage
   of their trademark. It probably won't happen, but it *could*, and that
   kind of bothers me.
 
  I wonder if they (Sun) really do see themselves as a bulwark
  against The Evil Empire, like Gondor warring against Mordor?
 
 much more like orks v. goblins. or the European countries during the colonial 
 era.

You are *much* too harsh.  Never forget who gave us NFS, yp and
OpenOffice, and who was one of the early pioneers in bringing
Unix out of academia and into the world.  Certainly, that doesn't
warrant comparisons with orcs and goblins.

Also, I asked not how others see them, but how they see themselves.

-- 
++
| Ron Johnson, Jr. mailto:[EMAIL PROTECTED]  |
| Jefferson, LA  USA   http://members.cox.net/ron.l.johnson  |
||
| they love our milk and honey, but preach about another|
|  way of living|
|Merle Haggard, The Fighting Side Of Me|
++


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: OT: Politics of Java

2002-11-21 Thread Shyamal Prasad
Michael == Michael P Soulier [EMAIL PROTECTED] writes:

Michael On 20/11/02 Kent West did speaketh:
 However, as I started to download the SDK from Sun's web site,
 it started bothering me more and more that Sun's license is
 such that it prevents Debian from including it as part of the
 distro. I'm not sure of

Michael I'm confused. Isn't this what we have a non-free section
Michael for?  

Sun's license on the JDK prohibits redistribution AFAIK.

/Shyamal


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: OT: Politics of Java

2002-11-21 Thread David Z Maze
Kent West [EMAIL PROTECTED] writes:
 Shaleh was the one to plug python first. But what dman says here gets
 my attention. Do others concur that python is more cross-platform and
 more OO than java? What are the disadvantages with python as opposed
 to java? Why would someone pick java over python then? Is it only
 because of marketing, as dman says?

Jumping in: Java's big advantage, in my mind, is that the language has
nice static checking properties.  All you can really check at
compile-time for Python (such as it is) is that the program is
syntactically correct.  This Python program:

  class Foo:
def __init__(self): pass
def bar(self): print Hi there!

  foo = Foo()
  foo.baz()

passes through the compilation part fine; the actual error isn't
caught until the code tries to execute foo.baz() and discovers that
there's no such method.  In contrast, in Java, this would be caught in
the compiler, which can be a win if the error is on a seldom-executed
code path following a long computation.

Java's syntax is closer to C/C++, and actually close enough that you
can almost tell a C++ programmer well, there's no delete,
everything's inline, public/private go in front of things instead of
being a label, and every object variable is really a pointer and they
can go.  Python is sufficiently different to panic grad students who
are told that they need to create some course tools in it within the
next week.  (Though having gotten through the panic, it's actually not
that hard.)

Java is more buzzword-compliant, if you need to deal with that.  Your
local PHB is probably more likely to buy it was a major project in
Java than it was a major project in Python.  In my experience, your
local (Solaris, Windows, ...) machine is more likely to have a JVM
than a Python interpreter.

Java has a redistributable binary form, if you're the sort that
feels the need to obfuscate their source.

(I think the languages that interest me more have the interesting
static properties.  C is pretty ugly, when you get down to it, and
Java has weird artifacts and limitations.  You'd like to be able to
separate specification from implementation, and this is completely
impossible in Java [and a pain in C++, but doable].  One of these days
I'll get around to doing a reasonable-sized project in Haskell,
though: it has an incredible type system and seems to do the right
thing around classes, though this is only so meaningful in a purely
functional language.  Saying well, I wrote about half of a compiler
in Haskell certainly gets interesting reactions from the right sort
of people...  :-)

-- 
David Maze [EMAIL PROTECTED]  http://people.debian.org/~dmaze/
Theoretical politics is interesting.  Politicking should be illegal.
-- Abra Mitchell


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




OT: Politics of Java

2002-11-20 Thread Kent West
I picked up Dori Smith's Java for the World Wide Web book at the 
library the other day; thought I'd at least introduce myself to the 
basics of Java programming. I am not a programmer; just did the usual 
college class work in the basic languages (Pascal, Fortran, BASIC), and 
then a smallish app or two in C. (And of course, WordPerfect's macro 
language back in the day :-)

However, as I started to download the SDK from Sun's web site, it 
started bothering me more and more that Sun's license is such that it 
prevents Debian from including it as part of the distro. I'm not sure of 
all the issues; I just know that in order to be part of Debian, it must 
be Free Software, and apparently Sun's SDK doesn't fit. As a result, I 
decided not to download the SDK, and thus to give up on learning Java. I 
know that I'm probably in the minority, placing philosophy above 
practicality, but it's just the principle of the thing. I'm not 
completely averse to using non-Free software, but I decided I didn't 
want to contribute to the use/development of non-free programming languages.

I'm just curious; do other folks (particularly real developers, not just 
tinkerer-wanna-be's like myself) have a similar problem with Java, or 
have I just been channeling too much RMS lately?

Thanks for any comments.

Kent



--
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: OT: Politics of Java

2002-11-20 Thread Craig Dickson
Kent West wrote:

 I picked up Dori Smith's Java for the World Wide Web book at the 
 library the other day; thought I'd at least introduce myself to the 
 basics of Java programming. I am not a programmer; just did the usual 
 college class work in the basic languages (Pascal, Fortran, BASIC), and 
 then a smallish app or two in C. (And of course, WordPerfect's macro 
 language back in the day :-)
 
 However, as I started to download the SDK from Sun's web site, it 
 started bothering me more and more that Sun's license is such that it 
 prevents Debian from including it as part of the distro. I'm not sure of 
 all the issues; I just know that in order to be part of Debian, it must 
 be Free Software, and apparently Sun's SDK doesn't fit. As a result, I 
 decided not to download the SDK, and thus to give up on learning Java. I 
 know that I'm probably in the minority, placing philosophy above 
 practicality, but it's just the principle of the thing. I'm not 
 completely averse to using non-Free software, but I decided I didn't 
 want to contribute to the use/development of non-free programming languages.
 
 I'm just curious; do other folks (particularly real developers, not just 
 tinkerer-wanna-be's like myself) have a similar problem with Java, or 
 have I just been channeling too much RMS lately?

No, you haven't been smoking too much RMS. Java is not an open standard;
it is controlled entirely by Sun, for Sun's benefit.

I'll leave other comments I might make about Java as a language for
another day, since I don't think it's relevant to your question.

Craig


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: OT: Politics of Java

2002-11-20 Thread John Hasler
Kent West writes:
 I'm just curious; do other folks (particularly real developers, not just
 tinkerer-wanna-be's like myself) have a similar problem with Java,...

Yes.
-- 
John Hasler
[EMAIL PROTECTED]
Dancing Horse Hill
Elmwood, Wisconsin


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




RE: OT: Politics of Java

2002-11-20 Thread Michael Kahle


-Original Message-
From: Craig Dickson [mailto:[EMAIL PROTECTED]]
Sent: Wednesday, November 20, 2002 11:21 PM
To: Debian User
Subject: Re: OT: Politics of Java

Craig Dickson wrote:
/* snip

No, you haven't been smoking too much RMS. Java is not an open standard;
it is controlled entirely by Sun, for Sun's benefit.

snip */

Is the standard, controlled entirely by Sun?

I'm not sure how mature this is, but if your interested in Java programming
without the politics.
http://gcc.gnu.org/java/

Good times.

Michael


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: OT: Politics of Java

2002-11-20 Thread Craig Dickson
Michael Kahle wrote:

 Is the standard, controlled entirely by Sun?
 
 I'm not sure how mature this is, but if your interested in Java programming
 without the politics.
 http://gcc.gnu.org/java/

I know there are other compilers/tools for Java than Sun's, but that
doesn't change the fact that the Java name is a Sun trademark and that
Sun has never submitted the language to an independent standards body.
Sun, all by themselves, defines what Java is and isn't.

Craig


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: OT: Politics of Java

2002-11-20 Thread Sean 'Shaleh' Perry
On Wednesday 20 November 2002 21:06, Kent West wrote:

 I'm just curious; do other folks (particularly real developers, not just
 tinkerer-wanna-be's like myself) have a similar problem with Java, or
 have I just been channeling too much RMS lately?

 Thanks for any comments.

 Kent

Many of us who were not forced to learn Java in college feel this way.

If you are looking for an easy, fun, quick to learn language give Python a 
try.  (not to spin this off into a huge alternate thread)


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: OT: Politics of Java

2002-11-20 Thread Nori Heikkinen
on Wed, 20 Nov 2002 10:04:30PM -0800, Sean 'Shaleh' Perry insinuated:
 On Wednesday 20 November 2002 21:06, Kent West wrote:
  I'm just curious; do other folks (particularly real developers,
  not just tinkerer-wanna-be's like myself) have a similar problem
  with Java, or have I just been channeling too much RMS lately?
 
  Thanks for any comments.
 
  Kent
 
 Many of us who were not forced to learn Java in college feel this
 way.

many of us who were (== are currently being) do, too ...

/nori

-- 
.~.  nori @ sccs.swarthmore.edu 
/V\  http://www.sccs.swarthmore.edu/~nori/jnl/
   // \\  @ maenad.net
  /(   )\   www.maenad.net
   ^`~'^



msg14324/pgp0.pgp
Description: PGP signature


Re: OT: Politics of Java

2002-11-20 Thread Kirk Strauser

At 2002-11-21T05:06:49Z, Kent West [EMAIL PROTECTED] writes:

 I'm just curious; do other folks (particularly real developers, not just
 tinkerer-wanna-be's like myself) have a similar problem with Java, or have
 I just been channeling too much RMS lately?

You're not alone.  I've never felt good about Java for the same reason that
I don't like dealing with proprietary software: if the vendor decides to EOL
the software, I'm stuck with a glob of quickly-obsoleting mess.  Sun may
very well develop and maintain Java for decades to come, but they could also
drop the project tomorrow and start reigning in usage of their trademark.
It probably won't happen, but it *could*, and that kind of bothers me.
-- 
Kirk Strauser
In Googlis non est, ergo non est.


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




RE: OT: Politics of Java

2002-11-20 Thread Michael Kahle
Craig Dickson wrote:
I know there are other compilers/tools for Java than Sun's, but that
doesn't change the fact that the Java name is a Sun trademark and that
Sun has never submitted the language to an independent standards body.
Sun, all by themselves, defines what Java is and isn't.

Craig

Interesting.  I am going to have to do some reading on this.

Does the fact that they control the standard prohibit others from
implementing the language with other standards if they see fit?  Forking the
project so to speak?

Michael


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: OT: Politics of Java

2002-11-20 Thread Sean 'Shaleh' Perry
On Wednesday 20 November 2002 22:05, Michael Kahle wrote:
 Interesting.  I am going to have to do some reading on this.

 Does the fact that they control the standard prohibit others from
 implementing the language with other standards if they see fit?  Forking
 the project so to speak?


In theory, yes.  In practice what has happened is Sun has moved faster than 
the people doing the white room implementation.  Similar to how Wine took 
forever to be useful.  Java is more than just a language you also have to 
implement and interoperate with all of the libraries.  There are a couple of 
almost there Java implementations in the free world but there is still no 
replacement for Swing, Beans, etc.


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: OT: Politics of Java

2002-11-20 Thread Craig Dickson
Michael Kahle wrote:

 Does the fact that they control the standard prohibit others from
 implementing the language with other standards if they see fit?  Forking the
 project so to speak?

It's called C#. So yes, it is possible, but you can't call the resulting
language Java without Sun's permission, which you're unlikely to get if
you deviate from their standards.

Craig


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]