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

Using timezone: Greenwich Mean Time
<arjanb>.08:09
* thorus joins12:10
hi
* bonniot joins12:12
hi
<arjanb>hi12:14
* durnew joins
* durnew leaves12:15
<bonniot>arjan, i'm going to look at your commits12:21
thorus: are you new here?
arjanb: could you add comments about what you do in enterClosure/exitClosure?12:35
<arjanb>is in the second patch12:39
<bonniot>i see you handle nested conditional types when entering a closure. it would be a good idea to add testcases for that12:49
(btw, thanks, the comments helped :-)
<arjanb>you mean a testcase for nested closures12:50
<bonniot>no
i mean when the type of a variable was "changed" twice at the point where the closure occurs
if (a instanceof B)
if (a instanceof C)
<arjanb>ic12:51
<bonniot> ()->() ...
this is what the "done" set it for, right?
<arjanb>yes
<bonniot>otherwise, you would set the type of a to A, and then to B
so, since you thought of that case, you should also put it in the testsuite :-)12:52
getSyntacticType is not required in RetypedJavaMethod because now they are not printed into the package interface, right?13:03
<arjanb>yes13:04
<bonniot>ok
<thorus>bonniot: yes, i'm new here.. just saw your site ;)13:15
<bonniot>well, welcome!13:16
where did you find about Nice?
<thorus>i saw it on freshmeat
there's a new release13:17
<bonniot>good :-)
so that's useful :-)
<thorus>and the description was very interesting ;)
<bonniot>good!
what languages do you use/like?
<thorus>well, in the last months I primarly use PHP/MySQL, because I've some projects which need them13:19
but mostly I use C/C++
<bonniot>and what's attracting for you in Nice?
arjan, i think we there are two important optimizations:13:49
1) when the conditional type stack is empty when entering a closure, there is nothing to do
so we can avoid allocating the array, pushing the stacks, ...13:50
2) instead of using "done", we can simply tracerse the stack the other way around
this will set the type several times in some cases, but that's not a incorrect, and will IMO be much faster than allocating a HashSet for each closure13:51
what do you think?
<arjanb>2) a good idea 1) how do you know at when exiting the closure13:54
<bonniot>enterClosure returns a boolean to say if exitClosure is needed13:57
<arjanb>i think the way conditional types works now needs to be changed14:16
committed the changes you suggested14:40
what's next to implement?16:32
<bonniot>in e1 < e2 < e3, is e3 currently evaluated if e1 < e2 is false?16:35
<arjanb>i don't think so16:37
<bonniot>// PASS bug
int nbUses = 0;
byte b() { nbUses++; return 1; }
boolean b = 0 < b() < 2L;
assert nbUses == 1;
it's marked as a bug16:38
that's actually different: don't evaluate twice the middle one
<arjanb>yes
<bonniot>if you feel like it. it would be one lass known bug16:39
one less
<arjanb>but it haven't found a good way to fix this
<bonniot>bigger things: the typing of Object, but I think I will do that one
well, you have to generate specific bytecode
<arjanb>yes but the problem is that i can't change the expansion without that doen't circumvent typechecking16:41
<bonniot>sory, don't have the time to look at it now, i'm going to leave on week-end soon16:47
something else I would like to see implemented see is properties16:48
one step is to implement field accesses as getter and setter methods in the bytecode16:49
there is also the serialization of enums I think16:51
it would be nice to be able to put Java sources in the testsuite, and make them compiled by javac, so that a testcase can refer to them16:52
lots of possibilities :-)
<arjanb>indeed16:53
<bonniot>what dou you feel like?
<arjanb>i don't know 16:55
i have tried some of them but didn't succeed at that time
the change to typing of closures breaks quit a lot of niceswing code17:01
<bonniot>you can see if there is a way to allow them while being safe17:03
i have to go now
have a good week-end, and good luck
thorus: bye. i hope you will enjoy Nice
thorus: don't hesitate to ask questions, or to propose new ideas17:04
* bonniot leaves17:05
<arjanb>thorus: no questions yet?20:01
<thorus>I haven't looked at the documenation yet because I'm busy, but I'll take a look tomorrow20:03
(what an english... I'm German.. ;))20:04
<arjanb>i'm dutch so i have problems with reading german-like english :)20:06
<thorus>lol
yeah ;)
<arjanb>hmmz i wanted to say no problems 20:22
<thorus>hehe
<arjanb>maybe i need more coffee 20:23
* noise joins22:09
<arjanb>hi22:56

Generated by Sualtam