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

Using timezone: Central European Time
* arjanb leaves01:03
* arjanb joins09:47
* bonniot joins11:41
hi11:47
<arjanb>hi12:10
as for the bug report i'm not sure what makes more sense, a type error or a specialized `==` for maybe primitives12:12
<bonniot>i'll look at it more thouroughly
but there are more accesses to non-public fields in bossa.syntax12:14
i just don't understand how it bootstraps
javaMethod:21312:15
and 217
surely that part is used. why doesn't it fail?
(it fails with swing)
<arjanb>maybe the jvm does not always check for visibility12:17
<bonniot>yes, it must be something like that12:19
can you fix it?12:21
<arjanb>sure but how do i know there aren't more of them?
<bonniot>compiling swing seems to reveal the problems12:22
i guess compiling anything should
<arjanb>compiling swing doesn't makes a difference here12:23
<bonniot>ha, it looks like using "java -Xverify" triggers the checks and reveals the problems12:24
<arjanb>could that be added to the makefile?12:27
<bonniot>it seems it's already used by the automatic tester12:30
you can add it in your scripts too
<arjanb>why aren't assertions explicitly enabled in the check target of the makefile?12:40
<bonniot>the testsuite enables them12:41
this way, there is no risk to forget them ;-)12:42
<arjanb>but not the assertions in the compiler
<bonniot>true12:44
<arjanb>so an incorrect notNull() could go unnoticed12:45
<bonniot>yes, unless the value is later used, which is likely12:50
but true, it can only help to check the assertions
i need to reboot, i'll should be back later. please try to fix the field problems so the dev version can upgrade :-)12:53
* bonniot leaves
<CIA-7>03arjanb * 10Nice/src/bossa/syntax/javaMethod.nice: Use public accessor method instead of non public field.13:06
* bonniot joins13:43
did you test with -Xverify?13:47
<arjanb>i have run the testsuite -Xverify13:48
<bonniot>ok, that should be good then13:52
so what do you think about the report?14:15
<arjanb>making it a type error increases the difference between primitives and objects14:16
<bonniot>which you like or not?14:17
<arjanb>not
<bonniot>yes. I think int == ?int makes sense14:18
i think it's a code generation issue14:19
<arjanb>i was thinking of `==`(?int x, ?int y) = (x == null) ? y == null : ((y == null) : false : x == y)
<bonniot>when comparing T == ?T with T primitive, we should check if the second is null. if null then return false. else unbox and compare
yes. it could be more efficient if done at code generation, but this would be correct for now14:20
we need testcases for this too ;-)
i'll be going14:37
are you leaving for holidays?14:38
well, see you later...14:39
* bonniot leaves
<arjanb>i will be away till thursday or wednesday17:11
merry christmas17:13
* arjanb leaves17:14