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

Using timezone: Central European Time
* byronvf joins00:57
<arjanb>hello byron00:59
<byronvf>hello arjan
<CIA-3>03arjanb * 10Nice/src/bossa/syntax/ (14 files): Cleanup of nullness issues.01:18
<arjanb>daniel: there's only one comparing with null warning in bossa.syntax left now but that one needs a closer look01:21
<arjanb>good night02:22
* arjanb leaves
* bonniot leaves02:33
* bonniot joins10:12
* arjanb joins10:16
* CIA-3 leaves10:48
* CIA-3 joins
* CIA-3 leaves
* CIA-3 joins10:49
* CIA-3 leaves
* CIA-3 joins
* CIA-3 leaves
* CIA-3 joins10:50
* CIA-3 leaves
* CIA-3 joins
* CIA-3 leaves
* CIA-3 joins10:51
* CIA-3 leaves
* CIA-3 joins
* CIA-3 leaves10:52
* CIA-3 joins
* CIA-3 leaves
* CIA-3 joins10:53
* CIA-3 leaves
* CIA-3 joins
* CIA-3 leaves
* CIA-3 joins10:54
03arjanb * 10Nice/src/bossa/syntax/ (analyse.nice locals.nice tools.nice): Resolved null warning.11:33
i see the logs are fully back now:
<arjanb>why uses AST.java arrays for different kind of methods instead of dispatch?13:25
<bonniot>because order is important13:30
e.g. sometimes it's important that all class declarations are processed before any method declaration is13:31
<arjanb>that could be done by adding methods like resolveClass() to Definition13:32
currently it prevents conversion of Definition subclasses13:33
<bonniot>adding lots of methods to do everything is order would get messy, and perform lots of useless calls13:34
what's the problem with the conversion?
<arjanb>these classes are explicitly used in ast.java13:36
<bonniot>so they could be converted at the same time as AST13:39
<arjanb>that would mean almost all at once13:41
<bonniot>actually I don't think they refer to AST13:42
so what's the pb?
<arjanb>i can't convert definition subclasses because AST needs them13:45
<bonniot>why cannot AST be compiled after them?13:46
<arjanb>hmm that would be tricky to in bossa.syntax and dependencies between bossa.modules could prevent it13:55
<bonniot>I think we should create more packages to reduce the complexity and the dependencies14:07
for instance, we could start moving code generation in a separate package
what do you think?14:28
* CIA-3 leaves14:29
* CIA-3 joins
* CIA-3 leaves14:31
* CIA-3 joins14:32
<arjanb>i'm not sure what splitup make sense14:33
codegeneration needs many preparations14:35
<bonniot>technically yes, but logically it's an independent phase14:36
* CIA-3 leaves16:13
* CIA-3 joins16:14
* CIA-3 leaves17:02
* CIA-5 joins17:03
* Helium joins17:08
* Helium leaves17:12
* CIA-5 leaves17:15
* CIA-5 joins17:16
<arjanb>i have value overrides almost working17:21
<arjanb>NiceClass.java needs to be split up, it's too much scrolling now17:35
<bonniot>fields could be factored out17:36
i mean Field
<CIA-5>03arjanb * 10Nice/ (4 files in 3 dirs): Added field default value overriding.17:38
<arjanb>one corner case isn't correct yet but i didn't see how to solve that17:39
<bonniot>cannot the last case be PASS, with new C() requiring the value of x?17:43
<arjanb>no the value doesn't fit in type of the last override17:47
<bonniot>1000? that's why a value would be required for new C()17:49
and of course it would need to be a byte
<arjanb>i see17:55
i'm not sure what's the best solution in this case17:57
<bonniot>what's wrong with this one? seems logical to me
<arjanb>it's inconsistent18:02
class A {
final int x = 1000;
class B extends A {
override byte x;
this yields an error atm
<bonniot>that can be changed18:03
<arjanb>i think it should give a warning in your proposal18:06
<arjanb>because you only notice that's something is wrong when using the constructor18:07
<bonniot>i'm not convinced that anything is wrong18:09
if you want a default value you put it, otherwise you mean that clients must provide one18:10
it's the same as when declaring a new field
i don't know how to fix this without adding too much code again
<bonniot>isn't it just about not fetching a default value in parents when you encounter an override?18:15
<arjanb>only if that default value doesn't fit18:16
or do you think type only override shouldn't look at default values?18:17
<bonniot>yes, this second one. that's simpler and more coherent
<arjanb>then it's yours to change, i don't understand the type override code yet18:22
<bonniot>i can't look at it at the moment because I have other changes in progress18:29
i don't think it's very hard
but otherwise I will look at it later
btw: you always forget the NEWS! ;-)18:36
<CIA-5>03arjanb * 10Nice/NEWS: Added field default value overriding.19:18
<arjanb>why are operators overloaded for BigInteger and not for BigDecimal?19:32
<CIA-5>03arjanb * 10Nice/stdlib/nice/lang/bigint.nice: Added overloaded operators for BigDecimal.20:11
* pitecus leaves20:19
<bonniot>do bigints have testcases?21:35
<arjanb>i think not21:37
<CIA-5>03bonniot * 10Nice/ (3 files in 2 dirs): 22:31
When check class constraints during method coverage tests, make sure not to
modify a type parameter, which would prevent some solutions to be found later.
03bonniot * 10Nice/regtest/basic/ (9 files): Removed the Any keyword.22:46
<arjanb>i hoped there would be an antlr 3 prototype available by now but it will take some more months
* pitecus joins22:52

Generated by Sualtam