+1: <3 всех ваших ответов, квб :)

ясь на обсуждение вэтот вопросМожет ли кто-нибудь предоставить код или ссылку на код, показывающий полную реализациюNumericLiteralX модуль (такой какэтот)? Я особенно заинтересован в эффективной реализацииFromInt32/64 дляNumericLiteralX модуль, который облегчает общие числовые операции. Вот, возможно, неэффективная реализация, взятая из вышеупомянутого вопроса:

module NumericLiteralG = 
    let inline FromZero() = LanguagePrimitives.GenericZero
    let inline FromOne() = LanguagePrimitives.GenericOne
    let inline FromInt32 (n:int) =
        let one : ^a = FromOne()
        let zero : ^a = FromZero()
        let n_incr = if n > 0 then 1 else -1
        let g_incr = if n > 0 then one else (zero - one)
        let rec loop i g = 
            if i = n then g
            else loop (i + n_incr) (g + g_incr)
        loop 0 zero 

Как это можно улучшить и завершить?

Ответы на вопрос(1)

Ваш ответ на вопрос