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

Using timezone: Central European Time
* arjanb leaves00:41
<CIA-7>03bonniot * 10Nice/ (3 files in 3 dirs): 06:56
Correctly generate code for method references from inside custom constructors
and instance initializers (fixes #969777).
* arjanb joins10:41
* bonniot joins12:33
hi12:36
<CIA-7>03bonniot * 10Nice/src/bossa/syntax/AbstractInterfaceImplementation.java: Typo.12:51
<arjanb>hey12:57
i'm not sure whether overrides should take the preconditions of the overriden method13:01
and is an override that doesn't specialize the returntype a true override?13:04
<bonniot>it does not need to be treated as an override in that case, it should be equivalent to an implementation13:13
yes, the precondition of the overriden method should be used13:14
wait13:15
actually the overriden method could have a waeker precondition13:16
the postcondition should be used, though
<arjanb>at least the override methods shouldn't add preconditions
<bonniot>right13:17
but if we want to support weakening, then we must allow that you restate the same (or part of) the original condition13:18
<arjanb>we don't have contravariant argument types on overrides so it makes sense not to weaken the preconditions
<bonniot>you could still want to say that your method actually works in all cases13:20
so yes, it's the same reasoning as contravariance, but you can have one without the other13:21
i'm not sure if that is important in practice
<arjanb>selective weakening of preconditions seems to me too rare to be worth the complexity13:23
<bonniot>and the forum shows it can be confusing13:26
it would always be possible to add explicit weakening later if it was needed13:27
<arjanb>the confusing thing is override versus method implementation
<bonniot>only because they currently behave differently regarding contracts13:28
but maybe this guy does not know at all about implementations, and he is surprised by the implicit weakening in an override
so that should be changed (and then override and implementation behave the same)13:29
<arjanb>agreed13:30
<bonniot>i'm trying to fix some old bugs13:51
working on 904327 atm
what do you think about http://sourceforge.net/tracker/index.php?func=detail&aid=908931&group_id=12788&atid=112788 ?14:02
<arjanb>not important, just document it or making a nicec.exe to solve but that's more work14:08
<bonniot>what about handling --classpath a.jar b.jar ... on windows?14:11
<arjanb>it's an option14:14
<bonniot>that should be little workd
* bonniot leaves15:12
* CIA-7 leaves
* arjanb leaves
* arjanb joins
* CIA-7 joins
* bonniot joins
<arjanb>*away till evening*15:33
*back*17:43
<CIA-7>03bonniot * 10Nice/ (6 files in 4 dirs): 17:48
Is is now possible to make a class of an imported package implement
an interface defined in the current package (fixes #904327).
03bonniot * 10Nice/src/bossa/modules/Package.java: Removed obsolte method, and cleanup.17:53
<arjanb>is the source of the imported class required for implementing an interface?17:56
i'm a bit worried about depencies between exact versions of libraries when using that feature17:59
<bonniot>no, the source is not required19:34
a compiled packages should have all the required information
why would there be dependency problems?19:35
<arjanb>maybe i'm just confused about how modifying existing classfiles works19:42
<bonniot>it's true that we need to ship a modified version of the class file with the importing package19:50
that was already the case with custom constructors19:51
it's a different trade off19:55
but this give power that i haven't seen in any other language. it's worth investigating this direction20:10
* bonniot leaves20:11