[rust-dev] Compile-time function evaluation in Rust

Pierre Talbot ptalbot at hyc.io
Wed Jan 29 02:26:26 PST 2014


It's a diverging function in the sense of the manual: 
http://static.rust-lang.org/doc/master/rust.html#diverging-functions

On 01/29/2014 11:21 AM, Gábor Lehel wrote:
> On Wed, Jan 29, 2014 at 10:19 AM, Pierre Talbot <ptalbot at hyc.io 
> <mailto:ptalbot at hyc.io>> wrote:
>
>     I add: a pure function can call extern code and diverges, so the
>     pure requirements are a subset of the CTFE requirements.
>
>
> How do you plan to enforce that a function won't diverge?
>
> Are there any systems which allow calling functions and enforce 
> convergence without using dependent types?
>
> (We could probably enforce it by prohibiting both mutual and 
> self-recursion as well as loops, but I'm guessing this would be too 
> restrictive to be acceptable.)
>
>
>     Pierre
>
>     _______________________________________________
>     Rust-dev mailing list
>     Rust-dev at mozilla.org <mailto:Rust-dev at mozilla.org>
>     https://mail.mozilla.org/listinfo/rust-dev
>
>



More information about the Rust-dev mailing list