asciilifeform: you can immediately say how long the thing will take.
asciilifeform: mod6: other thing, since ffa is constant time, your N! is in O(N) (if mul were considered a constant op and brought outside of the brackets. which is is, 10! with 4096bit ffa, takes exactly C longer than 9! with 4096bit ffa. etc )
asciilifeform: which, btw, imho is intrinsically unsuitable for a fits-in-head rsatron, it is extremely gnarly and uses float approximations that get magically unfudged back to int, etc
asciilifeform: mod6: if you actually had to work with Mb-sized ints regularly, you'd want fft mul
asciilifeform: mod6: think of ffa as a soldier's entrenching spade. you wouldn't dig a foundation for a new house with it. but it is bare naked simple, + adequate and entirely so for entrenching, and for the occasional bout of hand-to-hand.
asciilifeform: mod6: notice, we could trivially trap on overflow, but that ain't constanttime!
asciilifeform: meanwhile!, in sunny monkeylandia, https://archive.is/a3GZE >> 'Visa... offering up to $10,000 each to 50 U.S.-based small business owners that are committed to going cashless... "We are declaring war on cash," said Andy Gerlt, a spokesman for Visa.'☟︎
asciilifeform: i quite deliberately did not put this in. who wants, can put in at his own peril.
asciilifeform: btw if you're actually doing something that doesn't need constanttime, you can simply put the obvious check-for-zero in the karatsuba and get 2-9000x boost for mul.☟︎
asciilifeform: ( it dun even need >8bit cpu, to work )
asciilifeform: i kinda like it how it was : short, sweet, portable to whatever, apple2.
asciilifeform: now for the truly ugly variant, asm for the inner w*w mult gives another 2x.
asciilifeform: ( it is possible also to get 3x speed boost , on machines with 3 or moar cpu cores, on top of all, by allowing tasking ; this adds 12 or so lines. but i'd rather not , it subtracts from msdosificatability )
asciilifeform: i am considering including a karatsuba squaring case - for 2x speed boost; but that's definitely it.
asciilifeform: not built for speed. but for simplicity. the only concessions to optimization (karatsuba, etc) are strictly what was necessary to get to where rsa happens in merely annoying, rather than geological, time .
asciilifeform: ( in fact it will never win speedwise against ~anything at all. but factorial is probably the worst item. )
asciilifeform: while we're on subj, ffa is more or less guaranteed to lose to just about any heathen bignumtron in factorial speed, and it should not be hard to see why.☟︎
asciilifeform: asciilifeform's pet is doing pretty well with ru
asciilifeform: hey they're (surprise..) people too, can in fact learn human languages
asciilifeform: занавеска, ->у because she's getting it
asciilifeform: oblig: 'Штирлиц встал утром спозаранку и отодрал на окне занавеску. Он не знал, что Позаранку и Занавеску были румынскими разведчицами...'