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

Using timezone: Central European Time
* CIA-5 leaves02:45
* CIA-3 joins02:46
* CIA-3 leaves03:08
* CIA-5 joins03:09
* CIA-5 leaves04:30
* CIA-3 joins
* bonniot joins09:53
* CIA-3 leaves12:57
* CIA-5 joins
* arjanb joins15:06
hi
<bonniot>hi15:08
how are you doing?15:10
<arjanb>good, just visited my parents for a few days15:12
* ChanServ leaves15:13
* ChanServ joins15:14
* ChanServ leaves15:18
* ChanServ joins15:19
* ChanServ leaves
* ChanServ joins15:20
* ChanServ leaves15:22
<arjanb>do you know the static single assignment form?15:24
<bonniot>yes15:26
<arjanb>i think an extension called static single information is usefull for local type inference15:28
<bonniot>how would that work?15:29
* ChanServ joins
<arjanb>the main difference between ssa and ssi is that ssi duplicates variables at control flow splits15:31
my idea is to transform to ssi form first and then in a second pass do the type inference15:34
something i'm worried about is the circular dependency between typechecking and overloading15:47
typechecking depends on control flow and control depends on overloading in some cases as ||, && and function where closures can or can't escape15:48
<bonniot>this seems to mean that they need to be handled in the same pass15:53
<arjanb>this would make it quite complex i think16:03
<bonniot>it's already handled like that, isn't it?16:05
only assignments are ignored
<arjanb>the current solution of using only the function name works but could be incorrect sometimes
<bonniot>true, that was only done for simplicity16:06
but the design wouldn't need to be changed, would it?
i mean, typechecking is already done in the same pass as overloading resolution16:07
<arjanb>yes16:08
for example `||` 16:11
overloading depends on the arguments but the second argument can only be typechecked when it's know what kind of 'or' it is16:12
<bonniot>i see16:14
a clean way to handle this would be to consider a || b for syntactic sugar for16:16
`||`(a)(()=>b)
which also shows that || might not evaluate its second argument16:18
<arjanb>why not `||`(a , ()=>b) ?16:19
<bonniot>you still have the same pb16:20
<arjanb>well that depends on whether overloading on function types is possible16:22
<bonniot>it is. why not?
overloading is possible on any type16:23
<arjanb>right, it was overloading resolution on function types that can be odd16:24
<bonniot>?16:26
you mean overriding?
<arjanb>no i think we discussed the meaning of 'most specific' for function types some weeks ago16:29
<bonniot>ok16:33
<arjanb>rewrite of `||` and `&&` could work
any ideas for attaching info of when the second argument is evaluated to these functions?16:35
hardcoding it in the compiler works but isn't a neat solution
* CIA-5 leaves16:44
* CIA-3 joins
<bonniot>that's not easy16:45
probably there could be a generic solution by adding more power to Macro16:46
but i'm not sure it's worth the effort at this point16:47
* CIA-3 leaves16:48
* CIA-5 joins
* CIA-5 leaves
* CIA-3 joins
<arjanb>i agree it's not urgent16:51
* CIA-3 leaves16:54
* CIA-5 joins
* CIA-5 leaves17:08
* CIA-3 joins
* CIA-3 leaves17:13
* CIA-5 joins
* CIA-5 leaves17:34
* CIA-3 joins
* CIA-3 leaves17:56
* CIA-5 joins
* CIA-5 leaves18:31
* CIA-3 joins
* CIA-3 leaves18:50
* CIA-5 joins
* CIA-5 leaves18:57
* CIA-3 joins
* CIA-3 leaves19:02
* CIA-5 joins
* CIA-5 leaves
* CIA-3 joins
* CIA-3 leaves19:03
* CIA-5 joins
* CIA-5 leaves19:07
* CIA-3 joins
* CIA-3 leaves19:08
* CIA-5 joins19:09
* CIA-5 leaves19:11
* CIA-3 joins
* CIA-3 leaves
* CIA-5 joins
* CIA-5 leaves19:23
* CIA-3 joins
* CIA-3 leaves
* CIA-5 joins19:24
* CIA-5 leaves20:59
* CIA-3 joins
* CIA-3 leaves21:00
* CIA-5 joins
* CIA-5 leaves21:06
* CIA-3 joins
* CIA-3 leaves21:11
* CIA-5 joins21:12
* CIA-5 leaves
* CIA-3 joins
* CIA-3 leaves
* CIA-5 joins21:13
* CIA-5 leaves
* CIA-3 joins
* arjanb leaves21:34
* arjanb joins21:37
* CIA-3 leaves21:51
* CIA-5 joins
* CIA-5 leaves22:38
* CIA-3 joins
<bonniot>good night22:42
* bonniot leaves
* CIA-3 leaves22:55
* CIA-5 joins
* CIA-5 leaves23:01
* CIA-3 joins
* CIA-3 leaves23:02
* CIA-5 joins23:03
* CIA-5 leaves23:25
* CIA-3 joins
* CIA-3 leaves
* CIA-5 joins
* CIA-5 leaves23:26
* CIA-5 joins23:27

Generated by Sualtam