Log of the #nice channel on irc.freenode.net

Using timezone: Central European Time
* arjanb leaves01:35
* CIA-5 leaves02:04
* CIA-3 joins02:05
* CIA-3 leaves03:48
* CIA-5 joins03:49
* sysburn joins06:23
* sysburn leaves
* arjanb joins11:48
* fcb joins14:12
hi there arjan
<fcb>Nice isn't compiling again :(14:20
<arjanb>what nicec version do you have?14:21
<fcb>i got latest nice.jar today: Nice compiler version 0.9.8 (build 2004.07.02, 18:42:24 UTC)14:22
<arjanb>that on might be to old14:24
<fcb>oh? when was the latest one done?14:25
<arjanb>hmm that version is working for me14:27
what error do you get?
<fcb>Package nice.tools.locator is not available.14:29
The source path is: /home/frank/Nice/stdlib.old:/home/frank/Nice/stdlib:/home/frank/Nice/src.old:/home/frank/Nice/src
The package path is: /home/frank/Nice/classes
make: *** [core-bootstrap] Error 2
<arjanb>does Nice/src.old/nice/tools/locator exist?14:32
<fcb>the src.old directory doesn't exist14:35
<arjanb>what are the few lines before this error?14:38
<fcb>[frank@dwarf Nice]$ make complete14:40
rm -f src/nice/tools/compiler/console.jar
rm -rf classes classes-inline share/java src/bossa/parser/{Parse*.java,Token*.java,*CharStream.java}
rm -f bin/{nicedoc,niceunit}
[ -r src/bossa/syntax/dispatch.java ] && mv src/bossa/syntax/dispatch.java src/bossa/syntax/dispatch.java.bootstrap || true
find "/home/frank/Nice" \( -name "*.class" -o -name "*.nicei" -o -name "*~" \) -exec rm {} \;
mkdir -p classes classes-inline
ln -sf nicec bin/nicedoc; ln -sf nicec bin/niceunit
cd src/bossa/syntax && mv -f dispatch.java.bootstrap dispatch.java
javac -classpath "/home/frank/Nice/classes:/home/frank/Nice/classes.old" -sourcepath "/home/frank/Nice/src:/home/frank/Nice/stdlib" -O -g -d "/home/frank/Nice/classes" src/nice/tools/util/System.java
CLASSPATH="/home/frank/Nice/classes" JAVA="java -Dnice.inlined=classes-inline" ./bin/nicec.bootstrap --exclude-runtime -d "/home/frank/Nice/classes.old" --sourcepath="/home/frank/Nice/stdlib.old:/home/frank/Nice/stdlib:/home/frank/Nice/src.old:/home/frank/Nice/src" --classpath="/home/frank/Nice/classes" nice.tools.locator
Path /home/frank/Nice/stdlib.old does not exist
Path /home/frank/Nice/src.old does not exist14:41
nice.lang: parsing
Command line:
Package nice.tools.locator is not available.
The source path is: /home/frank/Nice/stdlib.old:/home/frank/Nice/stdlib:/home/frank/Nice/src.old:/home/frank/Nice/src
The package path is: /home/frank/Nice/classes
make: *** [core-bootstrap] Error 2
that's the lot
you use a batch file, though, so if you want me to take it up with Daniel instead that's fine14:43
<arjanb>i don't use the makefile myself but daniel is away this week so i will try to find out14:44
<fcb>oh, ok
do you have something under src/nice/tools/locator? locator isn't on my system14:45
<arjanb>do you have the latest cvs version?
<fcb>yes, I did a "cvs update" just now14:47
<arjanb>you should have locator now
does it work now?14:50
<fcb>I just did a cvs update, and it didn't download locator14:51
so its still not working
<arjanb>maybe something with file permissions for cvs?
<fcb>do I need to actually perform a new checkout?14:52
<arjanb>update should work but you could try a checkout14:53
<fcb>I ran "cvs checkout Nice/src/nice/tools/locator" and its working now!14:54
pheeew :)14:55
strange that update didn't work
<fcb>yeah. never mind14:56
* fcb leaves
* fcb joins15:02
ok, do you have time to help me a little more?
<fcb>excellent :) I want to extend StringTokenizer, but I get this error: No method called hasMoreElements is compatible with these patterns15:04
the method in question is very simple:15:05
hasMoreElements() {
return hasMoreTokens();
as far as I can see, hasMoreElements is perfectly compatible with this.15:11
<arjanb>i guess it has something to do with type param of Enumeration that is a super class of StringTokenizer15:13
that code isn't usefull because hasMoreElements and hasMoreTokens() does the same in StringTokenizer15:14
<fcb>but I want to override the hasMoreTokens method, and I want to make sure that hasMoreElements and hasMoreTokens do the same thing.15:15
* CIA-5 leaves15:16
* CIA-7 joins
<fcb>I couldn't be bothered looking at the source code for StringTokenizer to see which method calls which, so I thought this was safer.
Nice doesn't seem to realise that StringTokenizer has a method called hasMoreElements()15:23
is this a compiler bug?
<arjanb>the problem is hasMoreElement() is defined in Enumeration15:24
<fcb>but StringTokenizer still implements it15:25
<arjanb>Enumeration has 1 type param and the sub class StringTokenizer zero and the type system has difficulties with different number of types params
<fcb>I thought both had zero params15:27
<arjanb>even the debugging options don't give more info on what's wrong :(15:29
<fcb>hmm, damn
<arjanb>does it work if you just leave hasMoreElements away?15:30
<fcb>yes, I get problems with other methods then :)15:32
<arjanb>try putting the methods outside the class like:15:35
class STSub extends StringTokenizer {}
hasMoreTokens(STSub this) {
return true;
<fcb>still thinks my patterns are incompatible15:37
<arjanb>only hasMoreElements?15:38
<fcb>and nextElement()15:40
<arjanb>nextElement() is part of Enumeration too15:41
<fcb>yes, exactly
don't worry about it15:42
I have greater problems
anyway, thanks for all your help15:44
my eyes are tired now - goodnight
<arjanb>good night
* fcb leaves
* CIA-7 leaves16:25
* CIA-5 joins
* CIA-5 leaves17:23
* CIA-7 joins
* CIA-5 joins17:45
* CIA-7 leaves
* arjanb leaves17:50
* arjanb joins17:56
* ChanServ leaves18:33
* ChanServ joins18:36
* arjanb leaves20:50
* arjanb joins22:51

Generated by Sualtam