On Jan 29, 2010, at 9:42 PM, Rodrigo Kumpera wrote:

> 
> Implementing proper TCO in mono requires 2 things. First is to change the 
> managed calling convention to
> have the caller pop its arguments. Then to lift any other few minor 
> restrictions. Well probably have similar
> restrictions as MS's, such as no TCO on synchronized method.
> 

Thanks

>  
> There is a not very usually explored bit of hidden performance in .NET which 
> is
> runtime code generation. It is trivial to produce code that does runtime 
> algorithm
> specialization. You can even do most of it at high level in C# using 
> expression trees.
> 

I used this facility a few yrs ago.  It's quite nice.   I think it was 
Reflect.Emit.   Basically took a finance related DSL and compiled it on the 
fly.   It's probably changed a lot since then.


> 
> By the way, guys, the mono community is very welcoming to both external 
> contribution
> and feedback. So if you guys make a compelling case for TCO, maybe Miguel can 
> get
> someone to have it fixed.

Well, I'm not sure how to make a compelling case ; ), other than that to allow 
standard F# programs to execute on mono would require TCO.   TC's are a 
fundamental in F#.

I'm not sure how big the F# community is.  I would guess it is not that large 
at the moment, but seems to have a lot of growth.    F# joining the list of 
fully supported languages in VS2010 should attract much wider use.   Some of 
these users will be looking for a cross-platform solution.

If it counts for anything, would love to be able to use this on mono ;)

> 
> Cheers,
> Rodrigo
> 
> _______________________________________________
> Mono-list maillist  -  [email protected]
> http://lists.ximian.com/mailman/listinfo/mono-list

_______________________________________________
Mono-list maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-list

Reply via email to