Re: Proposal for a "main class" system property

2004-05-27 Thread Tom Tromey
> "Tom" == Thomas Fitzsimmons <[EMAIL PROTECTED]> writes:

Tom> What do people think of having a system property that stores the name of
Tom> the class whose main method is being run?  I need this value to properly
Tom> initialize the GTK peers.

On irc you had an example showing that this is what Sun's AWT does
under the hood.

I think it would be fine to have some `gnu.classpath.whatever'
property that VMs are encouraged to set.  My impression is that AWT
will work even if you don't set this, it just might not be as friendly
in some situations.

Tom


___
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath


Re: Working On Classpath

2004-05-27 Thread Andrew John Hughes
On Thu, 2004-05-27 at 16:45, Thomas Zander wrote:
> -BEGIN PGP SIGNED MESSAGE-
> Hash: SHA1
> 
> On Thursday 27 May 2004 12:17, Andrew John Hughes wrote:
> > > since I still can't apt-get it, its not on my radar.  (I'm wondering
> > > how many distro's ship kaffe.)
> >
> > Kaffe is in Debian stable and unstable
> Hmm, I use testing..
> 
So do I -- but I imagine you still have the stable package lists... ;-)
I imagine the unstable version will eventually make its way into
testing, anyway.
> >  So, Ant simulates make's functionality, but there
> > is nothing to simulate detecting the JVM as the autotools can do (or, if
> > there is, you don't see it in any current uses of Ant).
> ant is a shell-script; it does its best to look for java. It uses JAVACMD, 
> or JAVA_HOME if it can't find a java in the path.
> I'm not sure this answers your concerns though, and still expects a fully 
> implemented JVM.
> 
My bad here -- I should have said its the Java compiler that's the
problem.  Running ant tries to use Sun's compiler from tools.jar by
default -- I don't think there's any detection here (and there is a
javac (mapped to jikes) in the path).

> > If [the autotools] are flexible enough to
> > also work with Java code (which they probably predate), this is an
> > advantage of their design.
> 
> That is something they can't do; they can call jikes from the command line; 
> but that is a LOT slower then ant with jikes, or ant with javac. This is 
> because a) ant knows which 'clusters' of files have changed and passes 
> them all to the compiler in one compile-run, and  b) ant can do dependency 
> checking (which file needs a recompile because it depends on a changed 
> one) by reading the class files.
> 
Which is where Ant excels as a Java-optimised build tool -- Makefiles
have no concept of what class files are, and so can't pull out the
required dependencies.  I'm not sure how Ant runs with other compilers
like Jikes, but with Sun's, it calls classes from tools.jar rather than
the binary -- this probably gives a speed increase.  Of course, the
dependency handling doesn't always seem to work -- I have a habit of
doing a clean of my classes files before a build, because otherwise old
class files tend to hang around and hide errors in the code (with Jikes,
anyway).
> 
> - -- 
> Thomas
> -BEGIN PGP SIGNATURE-
> Version: GnuPG v1.2.4 (GNU/Linux)
> 
> iD8DBQFAtg0KCojCW6H2z/QRAmDsAJ9AlDKcQ7s/38eC8TrOEFsbOgwRmQCgzGNn
> qvC1caK9cgUwgzvdFHUC6JU=
> =6c+4
> -END PGP SIGNATURE-
> 
> 
> ___
> Classpath mailing list
> [EMAIL PROTECTED]
> http://mail.gnu.org/mailman/listinfo/classpath

Cheers,
-- 
Andrew :-)
 
Please avoid sending me Word or PowerPoint attachments.
See http://www.fsf.org/philosophy/no-word-attachments.html
 
Value your freedom, or you will lose it, teaches history.
`Don't bother us with politics' respond those who don't want to learn.
 



signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath


Re: Proposal for a "main class" system property

2004-05-27 Thread Thomas Fitzsimmons
On Thu, 2004-05-27 at 23:37, Tom Tromey wrote:
> > "Tom" == Thomas Fitzsimmons <[EMAIL PROTECTED]> writes:
> 
> Tom> What do people think of having a system property that stores the name of
> Tom> the class whose main method is being run?  I need this value to properly
> Tom> initialize the GTK peers.
> 
> On irc you had an example showing that this is what Sun's AWT does
> under the hood.
> 

Yeah, when I take a screenshot of any window created by Sun's AWT, it is
saved as Screenshot-Mainclassname.png.  When I take a screenshot of a
pure GTK application, it is saved as Screenshot-Binaryname.png.  When I
take a screenshot of our AWT, it is saved as Screenshot-.png.  gtk_init
sets the wmclass property of every window it creates to argv[0] (unless
one overrides the value with gtk_window_set_wmclass).  The screenshot
mechanism puts that property's value in the filename.  We currently set
argv[0] to "" when calling gtk_init, which explains the weird screenshot
name.

> I think it would be fine to have some `gnu.classpath.whatever'
> property that VMs are encouraged to set.  My impression is that AWT
> will work even if you don't set this, it just might not be as friendly
> in some situations.
> 

Yes, that's right.

Tom




___
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath


Proposal for a "main class" system property

2004-05-27 Thread Thomas Fitzsimmons
Hello,

What do people think of having a system property that stores the name of
the class whose main method is being run?  I need this value to properly
initialize the GTK peers.

Tom




___
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath


Re: Working On Classpath

2004-05-27 Thread Thomas Zander
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On Thursday 27 May 2004 04:20, Thomas Fitzsimmons wrote:
> AFAIK, Java apps. should die when all non-daemon
>
> > threads have stopped (i.e. the GC can still be running, as its a
> > daemon).
>
> Right, but we can't make all default threads daemons, or programs will
> exit right away.  The two non-daemon threads in a typical AWT program
> are EventDispatchThread and GtkMainThread.  I'm wondering if we should
> make GtkMainThread a daemon, and have the exit criteria for AWT programs
> be that all threads except EventDispatchThread are daemons, all
> EventQueues are empty, and all top-level windows have been disposed.

Having a jvm-reaper check if no events are present seems like a design that 
moves the logic to the wrong place.
Why not let the event-dispatch thread die when all top-level windows are 
disposed?

- -- 
Thomas
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.4 (GNU/Linux)

iD8DBQFAtZgiCojCW6H2z/QRAuRQAKDDpTi4TDY2Mt2ByeSUhBriILQd6gCfVynj
gPBHDTjSC0wF/tVXboUn8+k=
=jy+Z
-END PGP SIGNATURE-


___
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath


[gui] [merge] java-gui-merge for may 26

2004-05-27 Thread graydon hoare
hi,
I've just completed the "monthly merge" from the java-gui-branch to the 
gcc libjava trunk. the following patch contains the changes:

  http://people.redhat.com/graydon/java-gui-merge-may-26-2004.patch
it's a couple weeks late and a little rough (not to mention big) this 
time around. it *does* require that you upgrade your version of cairo to 
the latest CVS head, if you happen to be using the cairo backend. 
however, many fixes and additions are present:

 - AWT lists use GTK treeviews
 - proper AWT focus management has been implemented
 - swing menus and scrollpanes are beginning to work
 - swing splitpanes, dialogs and internal frames were added
 - swing repainting / double buffering was redone
 - a lot of AWT imaging and event bugs have been picked out
if you have any difficulties integrating or merging this work, please 
let me know.

-graydon
___
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath


Re: Working On Classpath

2004-05-27 Thread Thomas Zander
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On Thursday 27 May 2004 11:26, Michael Koch wrote:
> > footnote; I compiled Mauve some weeks ago only to find out that on
> > suns-javac it did not compile. The problem was an
> > illegal-code-construct. This tells me that jikes still is not
> > mature enough for production code (since many people compiled it
> > fine in the weeks before)
>
> I can compile Mauve fine with javac. 
This I posted a patch for some time ago, see:
cvs diff -r 1.1 -r 1.2 
gnu/testlet/java/text/SimpleDateFormat/attribute.java

> Except that its slow it works. 
> Jikes is so much faster. I dont wanna miss it. Since 1.18 its very
> stable and IMO more bug free then javac itself.
There are situations where javac is faster; for example when its called 
repeatedly from within the same JVM. Jikes would be slower due to mallocs 
and the linker taking time for each invocation.

> > The only answer I can give is that a superior technology that has
> > poor usability tends to be replaced.
>
> The autofriends vs. ant choice is no once and forever choice. one
> project can use autofriends and anohter ant.

I fully agree, these emails by me are to give some counterweight to the 
general opinion in the GNU communities, thats all.
The point is that I know quite a lot of non-open-source java developers, 
and all of them don't even WANT to come near the autotools.  If you are 
developing Java its a good idea to see that, in contrary to most other GNU 
tools, the majority of your users are on Windows, and even those that are 
not are not going to use autotools.

- -- 
Thomas
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.4 (GNU/Linux)

iD8DBQFAtg+5CojCW6H2z/QRAjArAKDBkAnZOqa+ylRi39iVggYXSWZqkQCgsUVP
r067DLO2kVK6YzI2Ww5IYM4=
=ViRS
-END PGP SIGNATURE-


___
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath


Re: Working On Classpath

2004-05-27 Thread Dalibor Topic
Andrew John Hughes wrote:
On Wed, 2004-05-26 at 18:44, Thomas Fitzsimmons wrote:
Modified versions of ant and tomcat that work with GCJ are available
from the RHUG project:
http://sources.redhat.com/rhug/
We're also doing work that will eventually allow these packages to run
unmodified on GCJ.
I'm going to take a look now -- I think its great someone is doing this,
although it probably should have been Apache to start with.  Given the
length of time that the Free Java projects have now been active, it
amazes me that so little consideration is given to alternate VMs and
compilers by the Java community, especially for FOSS.  I know Ant
Yep. But there is little one can do about that except from pointing out 
that these projects lock themselves in into Sun-derived runtimes if they 
don't test their software on GNU Classpath based runtimes, and help us 
fix the problems.

It'd be nice if the FOSS Java community projects would not jump to 
release code dependant on Java 1.5 features until 1.5 is officially 
released, though, and there are clear specifications of how these 
features work.

supports alternate compilers, but this wouldn't exactly be very clear to
someone who wants to use Ant in the same way as make ('make' -->
'ant').  One of the reasons that I think the autoconf/make stuff is
still a superior solution, even for Java, is that these solutions tend
to detect what a user actually has, instead of defaulting to Sun's JVM. 
Apologies if some of this is wrong, but this is the impression I, and I
guess other users, get of the Ant/Tomcat situation.
I think this depends what you do.
If you're just compiling java code, than getting the dependency 
resolution information from java compilers into your makefiles is a 
major pain in the backside, in particular if you want to have the 
'incremental compile' effect through your Makefiles, like you'd have it 
for C and C++. So one of the reasons why some people like ant is that 
ant ocassionally guesses right what needs to be rebuilt. It guesses 
wrong, ocassionally, too, unfortunately. Nevertheless, ant is quite nice 
for building java software. That's an area where autotools would have to 
play a little catchup in terms of predefined task support, though the 
ac-archive on sourceforge has some macros in that direction.

On the other hand, if you're using Java with native libraries on 50+ 
platforms, with all sorts of different C/C++ compilers, static and 
shared, and want to be able to link the Java code to the native libs, 
than ant is probably not the right tool for the job. In particular if 
the problem you're trying to solve requires creating and combining 
solutions from different programming languages, then autotools are a 
better choice than ant, in my opinion.

I guessed as much, which was why I was wary of committing any patches
for the small problems I've noticed.  It seems it would be best for me
to get this set up as you say, and contribute any AWT/Swing patches to
gcj rather than Classpath -- does this need a separate copyright
assignment?
The gui branch has one tiny problem though: it ocassionally (last few 
days, apparently) has small amounts of broken Java code that depends on 
some bugs in the gcj version on the branch.

That's not meant to be a cricism of the great work gcj hackers are doing 
on it, it's meant to be an encouragement for a volunteer (i.e you :) to 
help them fix that problem by using a different compiler to build it 
yourself, so that the synchronisation between classpath and gcj becomes 
simpler.

cheers,
dalibor topic
___
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath


Re: Working On Classpath

2004-05-27 Thread Dalibor Topic
Hallo Thomas,
Thomas Zander wrote:
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On Thursday 27 May 2004 12:17, Andrew John Hughes wrote:
since I still can't apt-get it, its not on my radar.  (I'm wondering
how many distro's ship kaffe.)
Kaffe is in Debian stable and unstable
Hmm, I use testing..
Oh, it's stuck in unstable because it doesn't bootstrap on most debian 
platforms, save for the popular ones, with active developers on them. 
1.1.5 will be better in that respect, hopefully. It's unpleasant, for 
sure. It's likely to remain broken on non-mainstream platforms where we 
don't have developers to fix the problems. It's a bit of a bootstrap 
problem in itself: you need to have a working runtime to attract 
developers, but to have a working runtime on a variaty of platforms you 
need the developers to maintain the ports ... Maintainance is the 
hardest bit, really. Most of Kaffe's 50+ ports have worked on the ported 
platforms at some point in time. But as the platforms develop, the 
toolchains develop, and kaffe's core progresses, things break. If there 
is noone around to fix them, they stay broken. :(

So, Ant simulates make's functionality, but there
is nothing to simulate detecting the JVM as the autotools can do (or, if
there is, you don't see it in any current uses of Ant).
ant is a shell-script; it does its best to look for java. It uses JAVACMD, 
or JAVA_HOME if it can't find a java in the path.
I'm not sure this answers your concerns though, and still expects a fully 
implemented JVM.
Well, ant actually looks for some unspecified acpects of an sdk 
installation: it assumes that there is a tools.jar, for example, and 
cries foul if it can't find it. When it can't find Sun's javac, it 
refuses to use anything else, unless you rub its nose (-Dbuild.compiler) 
at kjc or jikes. Fortunately, people have taken care of extending ant 
and providing generic javac tasks for jikes and kjc.

On the other hand, though, Javah task still seems to try to call some 
Sun internal class directly, which of course doesn't work well with free 
runtimes. So does Native2Asci, and a few other tasks. Javah is 
particularly unpleasant, since that's something you'd like to have if 
you need to deal with JNI libraries, like Classpath does.

I'd say that for some tasks, unfortunately, ant expects more than a 
fully implemented JVM: it expects a Sun-derived runtime, and nothing 
else :) But fortunately, that could be fixed, if someone volunteered to 
make ant fully runtime-agnostic.

If [the autotools] are flexible enough to
also work with Java code (which they probably predate), this is an
advantage of their design.

That is something they can't do; they can call jikes from the command line; 
but that is a LOT slower then ant with jikes, or ant with javac. This is 
because a) ant knows which 'clusters' of files have changed and passes 
them all to the compiler in one compile-run, and  b) ant can do dependency 
checking (which file needs a recompile because it depends on a changed 
one) by reading the class files.
The only real, big problem autotools have wrt Java (in my opinion) is 
getting good dependency tracking information into the build. But that's 
not that critical with jikes on a fast box, a full rebuild of Kaffe's 
class libraries takes just a few minutes. If you need incremental 
recompilation, compile all your files at once (preferably using 
@large-file-list-file), use jikes with '++' option for incremental 
compilation, and hit return when appropriate, i.e. when you'd normally 
call ant :)

cheers,
dalibor topic
___
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath


Re: Working On Classpath

2004-05-27 Thread Stephen Crawley

[EMAIL PROTECTED] said:
> As Andrew said; when the last non-daemon thread dies; the Sun JVM has
> a really nice feature to throw a stacktrace of all threads  using one
> command (the EOF char; ctrl-\) if not present; please place that on a
> feature request list somwhere :) 

Thread stack dumping is a VM function not a function of Classpath.

For the record Kissme implements this functionality, albiet in a rather
flakey way.  I also recall that SableVM implements it too.

-- Steve




___
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath


Re: Working On Classpath

2004-05-27 Thread Thomas Zander
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On Thursday 27 May 2004 12:17, Andrew John Hughes wrote:
> > since I still can't apt-get it, its not on my radar.  (I'm wondering
> > how many distro's ship kaffe.)
>
> Kaffe is in Debian stable and unstable
Hmm, I use testing..


>  So, Ant simulates make's functionality, but there
> is nothing to simulate detecting the JVM as the autotools can do (or, if
> there is, you don't see it in any current uses of Ant).
ant is a shell-script; it does its best to look for java. It uses JAVACMD, 
or JAVA_HOME if it can't find a java in the path.
I'm not sure this answers your concerns though, and still expects a fully 
implemented JVM.

> If [the autotools] are flexible enough to
> also work with Java code (which they probably predate), this is an
> advantage of their design.

That is something they can't do; they can call jikes from the command line; 
but that is a LOT slower then ant with jikes, or ant with javac. This is 
because a) ant knows which 'clusters' of files have changed and passes 
them all to the compiler in one compile-run, and  b) ant can do dependency 
checking (which file needs a recompile because it depends on a changed 
one) by reading the class files.


- -- 
Thomas
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.4 (GNU/Linux)

iD8DBQFAtg0KCojCW6H2z/QRAmDsAJ9AlDKcQ7s/38eC8TrOEFsbOgwRmQCgzGNn
qvC1caK9cgUwgzvdFHUC6JU=
=6c+4
-END PGP SIGNATURE-


___
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath


Re: [gui] [merge] java-gui-merge for may 26

2004-05-27 Thread Michael Koch
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Am Donnerstag, 27. Mai 2004 11:50 schrieb Andreas Schwab:
> graydon hoare <[EMAIL PROTECTED]> writes:
> > hi,
> >
> > I've just completed the "monthly merge" from the java-gui-branch
> > to the gcc libjava trunk. the following patch contains the
> > changes:
> >
> >   
> > http://people.redhat.com/graydon/java-gui-merge-may-26-2004.patch
>
> libjava does not build any more.
>
> /tmp/cvs/gcc-20040527/Build/gcc/gcj
> -B/tmp/cvs/gcc-20040527/Build/ia64-suse-linux/libjava/
> -B/tmp/cvs/gcc-20040527/Build/gcc/ --encoding=UTF-8 -Wno-deprecated
> -C -g -classpath '' -bootclasspath
> /tmp/cvs/gcc-20040527/Build/ia64-suse-linux/libjava:../../../libjav
>a -d /tmp/cvs/gcc-20040527/Build/ia64-suse-linux/libjava
> ../../../libjava/javax/swing/JWindow.java
> ../../../libjava/javax/swing/JWindow.java: In class
> `javax.swing.JWindow': ../../../libjava/javax/swing/JWindow.java:
> In constructor `()': ../../../libjava/javax/swing/JWindow.java:83:
> error: Can't access package-private constructor
> `java.awt.Window.' from `javax.swing.JWindow'. super();
> ^
> 1 error
> make[2]: *** [javax/swing/JWindow.class] Error 1

I have just commited the attached patch with lets libjava bootstrap 
again. Its not really tested and only to make libjava compile again.

Graydon: you should really consider to update gcj in java-gui-branch.


Michael


2004-05-27  Michael Koch  <[EMAIL PROTECTED]>

* javax/swing/JPopupMenu.java
(isVisible): Do not use visible directly.
(setVisible): Likewise.
* javax/swing/JWindow.java
(JWindow): call accessible constructor.
* javax/swing/RepaintManager.java
(paintDirtyRegions): Use public methods to obtain iterator.
- -- 
Homepage: http://www.worldforge.org/
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.4 (GNU/Linux)

iD8DBQFAtd70WSOgCCdjSDsRAhK3AKCRymFeUH11bsWdpPsafF/DifyHWQCfbwTj
WX4pzyDVowIzqxSsjPeUi5Y=
=A4q3
-END PGP SIGNATURE-
Index: javax/swing/JPopupMenu.java
===
RCS file: /cvs/gcc/gcc/libjava/javax/swing/JPopupMenu.java,v
retrieving revision 1.4
diff -u -b -B -r1.4 JPopupMenu.java
--- javax/swing/JPopupMenu.java	27 May 2004 06:17:39 -	1.4
+++ javax/swing/JPopupMenu.java	27 May 2004 12:25:18 -
@@ -471,7 +471,7 @@
*/
   public boolean isVisible()
   {
-return super.visible;
+return super.isVisible();
   }
 
   /**
@@ -481,7 +481,7 @@
*/
   public void setVisible(boolean visible)
   {
-super.visible = visible;
+super.setVisible(visible);
 
 firePopupMenuWillBecomeVisible();
 
Index: javax/swing/JWindow.java
===
RCS file: /cvs/gcc/gcc/libjava/javax/swing/JWindow.java,v
retrieving revision 1.5
diff -u -b -B -r1.5 JWindow.java
--- javax/swing/JWindow.java	27 May 2004 06:17:39 -	1.5
+++ javax/swing/JWindow.java	27 May 2004 12:25:18 -
@@ -80,7 +80,7 @@
 
 public JWindow()
 {  
- 	super(); 
+ 	super(null); // FIXME: This throws an exception.
 }
 
 // huuu ?
Index: javax/swing/RepaintManager.java
===
RCS file: /cvs/gcc/gcc/libjava/javax/swing/RepaintManager.java,v
retrieving revision 1.3
diff -u -b -B -r1.3 RepaintManager.java
--- javax/swing/RepaintManager.java	27 May 2004 06:17:39 -	1.3
+++ javax/swing/RepaintManager.java	27 May 2004 12:25:18 -
@@ -438,7 +438,7 @@
 dirtyComponents.clear();
 
 // step 2: paint those roots
-Iterator i = roots.iterator(AbstractMap.ENTRIES);
+Iterator i = roots.values().iterator();
 while(i.hasNext())
   {
 AbstractMap.BasicMapEntry ent = (AbstractMap.BasicMapEntry) i.next();
___
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath


Re: Working On Classpath

2004-05-27 Thread Michael Koch
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Am Donnerstag, 27. Mai 2004 08:16 schrieb Thomas Zander:
> On Wednesday 26 May 2004 23:47, Andrew John Hughes wrote:
> >  Given the
> > length of time that the Free Java projects have now been active,
> > it amazes me that so little consideration is given to alternate
> > VMs and compilers by the Java community, especially for FOSS.
>
> The free-java projects have made a bad start; when I just started
> using Java I tried kaffe and Jikes. Kaffe was totally unusable; and
> since I still can't apt-get it, its not on my radar.  (I'm
> wondering how many distro's ship kaffe.)
> Jikes is a good example of Foss going wrong; in the time I was
> using 1.11 up-until 1.13, mostly because of its speed.
> During this time more and more problems came in; errors in
> compiling that were not errors at all, and un-verifiable classes
> which caused clients to not be able to run the software as soon as
> it was compiled with jikes. I'm not sure if the situation with
> jikes cleared up; but our company still has a VERY strict policy
> about not using jikes; ever!
>
> footnote; I compiled Mauve some weeks ago only to find out that on
> suns-javac it did not compile. The problem was an
> illegal-code-construct. This tells me that jikes still is not
> mature enough for production code (since many people compiled it
> fine in the weeks before)

I can compile Mauve fine with javac. Except that its slow it works. 
Jikes is so much faster. I dont wanna miss it. Since 1.18 its very 
stable and IMO more bug free then javac itself.

> > I know Ant
> > supports alternate compilers, but this wouldn't exactly be very
> > clear to someone who wants to use Ant in the same way as make
> > ('make' --> 'ant').
>
> The whole point of ant is to throw away make; Java programmers
> program java because its easier to use the tools. Most have no idea
> if they are using spaces or tabs (for instance). This means that
> they all curse like hell if they have to edit a Makefile and it
> won't work because it needs a tab at begin of line.
> There are dozens of reasons why ant is 'better' then make; it has
> been created as a replacement for make after all...
>
> > One of the reasons that I think the autoconf/make stuff is
> > still a superior solution, even for Java, is that these solutions
> > tend to detect what a user actually has, instead of defaulting to
> > Sun's JVM. Apologies if some of this is wrong, but this is the
> > impression I, and I guess other users, get of the Ant/Tomcat
> > situation.
>
> The only answer I can give is that a superior technology that has
> poor usability tends to be replaced.

The autofriends vs. ant choice is no once and forever choice. one 
project can use autofriends and anohter ant. Let the developers 
developing a software decide what they use. Dont try to get them 
follow your thoughts. They know best why they choose one over the 
other. There are many known problems with autofriends but there are 
not less other known problems with ant.


Michael
- -- 
Homepage: http://www.worldforge.org/
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.4 (GNU/Linux)

iD8DBQFAtbQqWSOgCCdjSDsRAukAAJ0VV6+TXcj8TK+JKTWrGM72eQshFACdFjBf
acNYpgb6hkzkdllRFwC3tsI=
=LVtw
-END PGP SIGNATURE-


___
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath


Re: Working On Classpath

2004-05-27 Thread Andrew John Hughes
On Thu, 2004-05-27 at 07:16, Thomas Zander wrote:
> -BEGIN PGP SIGNED MESSAGE-
> Hash: SHA1
> 
> On Wednesday 26 May 2004 23:47, Andrew John Hughes wrote:
> >  Given the
> > length of time that the Free Java projects have now been active, it
> > amazes me that so little consideration is given to alternate VMs and
> > compilers by the Java community, especially for FOSS.
> 
> The free-java projects have made a bad start; when I just started using 
> Java I tried kaffe and Jikes. Kaffe was totally unusable; and since I 
> still can't apt-get it, its not on my radar.  (I'm wondering how many 
> distro's ship kaffe.)

Kaffe is in Debian stable and unstable
http://packages.debian.org/cgi-bin/search_packages.pl?keywords=kaffe&searchon=names&subword=1&version=all&release=all

> Jikes is a good example of Foss going wrong; in the time I was using 1.11 
> up-until 1.13, mostly because of its speed.
> During this time more and more problems came in; errors in compiling that 
> were not errors at all, and un-verifiable classes which caused clients to 
> not be able to run the software as soon as it was compiled with jikes.
> I'm not sure if the situation with jikes cleared up; but our company still 
> has a VERY strict policy about not using jikes; ever!
> 
> footnote; I compiled Mauve some weeks ago only to find out that on 
> suns-javac it did not compile. The problem was an illegal-code-construct. 
> This tells me that jikes still is not mature enough for production code 
> (since many people compiled it fine in the weeks before)
> 
I haven't experienced any problems with Jikes -- but presumably I've
been using more recent versions than this (current Debian is 1.18 from
21st of November, 2002)
> > I know Ant 
> > supports alternate compilers, but this wouldn't exactly be very clear to
> > someone who wants to use Ant in the same way as make ('make' -->
> > 'ant').
> 
> The whole point of ant is to throw away make; Java programmers program java 
> because its easier to use the tools. Most have no idea if they are using 
> spaces or tabs (for instance). This means that they all curse like hell if 
> they have to edit a Makefile and it won't work because it needs a tab at 
> begin of line.
> There are dozens of reasons why ant is 'better' then make; it has been 
> created as a replacement for make after all...

I don't disagree that Ant is superior to make -- the problems with make
are one of the reasons that the auto tool set exists as well (reading
these generated Makefiles is a nightmare).  This is why I would expect
people to be able to replace the invocation of 'make' with 'ant' when a
build.xml file exists.  At present, this fails without alterations when
not using Sun's JVM.  So, Ant simulates make's functionality, but there
is nothing to simulate detecting the JVM as the autotools can do (or, if
there is, you don't see it in any current uses of Ant).
> 
> > One of the reasons that I think the autoconf/make stuff is 
> > still a superior solution, even for Java, is that these solutions tend
> > to detect what a user actually has, instead of defaulting to Sun's JVM.
> > Apologies if some of this is wrong, but this is the impression I, and I
> > guess other users, get of the Ant/Tomcat situation.
> 
> The only answer I can give is that a superior technology that has poor 
> usability tends to be replaced.
The autotools are primarily aimed at C/C++ protects anyway AFAIK (at
least, that's where they are most used).  If they are flexible enough to
also work with Java code (which they probably predate), this is an
advantage of their design.
> 
> 
> - -- 
> Thomas
> -BEGIN PGP SIGNATURE-
> Version: GnuPG v1.2.4 (GNU/Linux)
> 
> iD8DBQFAtYe3CojCW6H2z/QRApuPAKDhTOouUqGGvfsHgGbzx4+ccUf1PgCdGsAy
> PVu8xeVupxS0W5gY4azpS6c=
> =XxVk
> -END PGP SIGNATURE-
> 
> 
> ___
> Classpath mailing list
> [EMAIL PROTECTED]
> http://mail.gnu.org/mailman/listinfo/classpath
-- 
Andrew :-)
 
Please avoid sending me Word or PowerPoint attachments.
See http://www.fsf.org/philosophy/no-word-attachments.html
 
Value your freedom, or you will lose it, teaches history.
`Don't bother us with politics' respond those who don't want to learn.
 



signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath


Re: Working On Classpath

2004-05-27 Thread Thomas Zander
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On Wednesday 26 May 2004 19:44, Thomas Fitzsimmons wrote:
> >   Another problem I noticed -- as soon
> > as a toolkit is instantiated, the code doesn't exit anymore,
> > presumably because some thread is hanging on -- even something as
> > simple as getDefaultToolkit().getScreenSize() needs a Ctrl+C.  It
> > doesn't seem to be a JVM problem (same on Jam, Sable and gij) so must
> > be something in the shared gcj/classpath code for the AWT (either in
> > the main code or in the peers).
>
> Yes, this is still a problem.  I haven't figured out yet what should be
> the exit criteria for a GUI app.

As Andrew said; when the last non-daemon thread dies;
the Sun JVM has a really nice feature to throw a stacktrace of all threads 
using one command (the EOF char; ctrl-\) if not present; please place that
on a feature request list somwhere :)

Anyway; there is a "Suspend Checker Thread" in that stacktrace that 
displays a nice idea. (give me an email if you want an example 
traces-output)

I'm wondering if you guys thought about the concept of 
application-contexts. The seperation of AWT applications in one JVM. Using 
this concept (which is implemented in a sun.awt package) you can create 
multiple AWT-Event threads and multiple totally seperate 
component-hierarchies which allows (for intstance) to have multiple L&Fs 
installed.
The java.awt.Frame.getFrames() uses that application-context, for instance.

The implementation on Suns side has some bugs making it unusable; but the 
idea is certainly _very_ appealing to me.

- -- 
Thomas
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.4 (GNU/Linux)

iD8DBQFAtYSrCojCW6H2z/QRAsS4AKDhPGi/T2sSzI9pT1yhymJGPuSAJwCdHcji
JX3f7o9LmnlZe0L4IOLWtQk=
=f8Tj
-END PGP SIGNATURE-


___
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath


Re: Working On Classpath

2004-05-27 Thread Thomas Zander
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On Wednesday 26 May 2004 23:47, Andrew John Hughes wrote:
>  Given the
> length of time that the Free Java projects have now been active, it
> amazes me that so little consideration is given to alternate VMs and
> compilers by the Java community, especially for FOSS.

The free-java projects have made a bad start; when I just started using 
Java I tried kaffe and Jikes. Kaffe was totally unusable; and since I 
still can't apt-get it, its not on my radar.  (I'm wondering how many 
distro's ship kaffe.)
Jikes is a good example of Foss going wrong; in the time I was using 1.11 
up-until 1.13, mostly because of its speed.
During this time more and more problems came in; errors in compiling that 
were not errors at all, and un-verifiable classes which caused clients to 
not be able to run the software as soon as it was compiled with jikes.
I'm not sure if the situation with jikes cleared up; but our company still 
has a VERY strict policy about not using jikes; ever!

footnote; I compiled Mauve some weeks ago only to find out that on 
suns-javac it did not compile. The problem was an illegal-code-construct. 
This tells me that jikes still is not mature enough for production code 
(since many people compiled it fine in the weeks before)

> I know Ant 
> supports alternate compilers, but this wouldn't exactly be very clear to
> someone who wants to use Ant in the same way as make ('make' -->
> 'ant').

The whole point of ant is to throw away make; Java programmers program java 
because its easier to use the tools. Most have no idea if they are using 
spaces or tabs (for instance). This means that they all curse like hell if 
they have to edit a Makefile and it won't work because it needs a tab at 
begin of line.
There are dozens of reasons why ant is 'better' then make; it has been 
created as a replacement for make after all...

> One of the reasons that I think the autoconf/make stuff is 
> still a superior solution, even for Java, is that these solutions tend
> to detect what a user actually has, instead of defaulting to Sun's JVM.
> Apologies if some of this is wrong, but this is the impression I, and I
> guess other users, get of the Ant/Tomcat situation.

The only answer I can give is that a superior technology that has poor 
usability tends to be replaced.

- -- 
Thomas
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.4 (GNU/Linux)

iD8DBQFAtYe3CojCW6H2z/QRApuPAKDhTOouUqGGvfsHgGbzx4+ccUf1PgCdGsAy
PVu8xeVupxS0W5gY4azpS6c=
=XxVk
-END PGP SIGNATURE-


___
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath


Re: Working On Classpath

2004-05-27 Thread Per Bothner
Thomas Fitzsimmons wrote:
Modified versions of ant and tomcat that work with GCJ are available
from the RHUG project:
They are now also Fedora (http://fedora.redhat.com/) - if you install
"everything" in Fedora Core, you get a bunch of Java packages, with
.jar files, documentation, and gcj-compiled .so files.
I'd like to make a compatible kawa-NNN.rpm ...
--
--Per Bothner
[EMAIL PROTECTED]   http://per.bothner.com/
___
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath