log
500+ entries in 0.06s
asciilifeform: i was hoping to avoid baking hashing into ffa/p , but loox like it isn't escapable if we're doing oaep
diana_coman: the table with FFA patches looks great; I'll look into carving again some space to re-start on it
asciilifeform: i think just his bigendian vs littlendian speshulcases (why he has any?! ffa doesn't..! ) weigh moar than all of ffa together
asciilifeform: i'd like to be able to put a link in the 'ffa regrind' article, 'and you can press it with ~this~'
a111: Logged on 2018-11-13 14:21 asciilifeform: when i started ffa, i did not plan to bake any asm speedups at all. but there's 2 reasons to do it, eventually : one is that on e.g. x86/x64, getting the upper half of a word-sized multiplication, without asm, takes ~four~ MULs plus a buncha additions : http://www.loper-os.org/pub/ffa/hypertext/ch11/w_mul__adb.htm#95_14
asciilifeform: nao, this being said, my objective is still to give acceptably-performing, re erryday ops, ffa ~without asm~. but asmism will make a serious diff re e.g. key generation, make minutes instead of day+.
ave1: http://www.loper-os.org/pub/ffa/hypertext/ch11/w_mul__adb.htm#33_13, this is the egyptian mul?
asciilifeform: ( there is also the fact that such a simple thing as addition with carry takes not 1 ADD instruction, but an entire http://www.loper-os.org/pub/ffa/hypertext/ch11/word_ops__adb.htm#36_13 orchestra )
asciilifeform: the other is that on iron such as certain ARM ( i have not yet investigated ~which~ ) , and ppc, and certain others, there does not even exist a constant-time MUL, and one is stuck with some variant of http://www.loper-os.org/pub/ffa/hypertext/ch11/w_mul__adb.htm#33_13 -- which really begs to be asmed, is riotously inefficient
asciilifeform: when i started ffa, i did not plan to bake any asm speedups at all. but there's 2 reasons to do it, eventually : one is that on e.g. x86/x64, getting the upper half of a word-sized multiplication, without asm, takes ~four~ MULs plus a buncha additions : http://www.loper-os.org/pub/ffa/hypertext/ch11/w_mul__adb.htm#95_14
asciilifeform: ( but eventually i do want to write e.g., asmtronic MUL, for arm64 ffa )
asciilifeform: i was able to regrind ffa today, using phf's vdiff, but atm cannot yet press and confirm that it actually presses to same thing as the classical
bvt: though i have nothing against work on bignum multiplication and modexp -- but as i see it, it could be a side branch of ffa. ffa already provides a solid foundation for such algorithm exploration.
asciilifeform in the process of keccakizing ffa, hence practical q
asciilifeform: when i have the choice, i'd rather write proggy to need no such cassettes ( observe, streams are not used in ffa )
mod6: So usually that leaves 30min-1hour per night, sometimes more depending on the size. Sometimes I fall down a well in the logs if i'm looking for something specific related to any number of things: pizarro, foundation, ada, ffa, who knows.
asciilifeform: mircea_popescu: after ffa/p beta rollout, i'ma be at yer service for the next thing ( fg2? tmsr.mips ? radio ? or other, take yer pick )
asciilifeform: ( i got one coming in a week or so, tho, for ffa exhaustive tests )
asciilifeform: ^ mircea_popescu , diana_coman , other potential ffa eaters ^
asciilifeform finally finished rereading ffa, nao preparing ch12 + estimate of just-how-long-to-battlefield promised earlier
asciilifeform: phf: i prolly won't get a chance to actually put it to use in near term, hands pretty full with ffa; but would like to have it. if it's there to be had.
asciilifeform: ( it's not ~completely~ fucktarded, all of ffa is still reachable via http://www.loper-os.org/pub/ffa/hypertext/ch11/ffa__ads.htm . but still frustrating )
asciilifeform: phf: it's definitely not perfect, e.g. why the FUCK is FFA_FZ_ZeroP not clickable ?
asciilifeform: phf: the default view ( http://www.loper-os.org/pub/ffa/hypertext/ch11/ ) of gnathtml gives you a frames thing with ~worthless alphabetic index in the left pane. really it oughta show 'where currently clicked symbol used' imho
asciilifeform: 3) -l1 turns on line numbering; -I adds paths to the libraryisms ; -p takes a file containing src_dir=. gpr_file=ffa_calc.gpr .
asciilifeform: 2) cd ffa/ffacalc ; gnathtml.pl -l1 -f -D -I obj -I ../libffa -I ../libffa/obj -p ffa_calc.adp ffa_calc.adb
asciilifeform: mod6: rereading own ffa , from opening shot to 11
asciilifeform: fwiw i've massaged ffa to the point where it's fully static and the problem dun affect it any. but some of my other stuff (mmap) is hobbled by it.
asciilifeform: current ffa relies on the user/caller to wipe
asciilifeform: ( it's not a wholly useless thing, i dun have it in current ffa but my 1st draft used it to wipe all data on the stack erry time it goes out of scope )
bvt: myeah, i solved it by maximally recreating the ffa project structure, so can't say i did anything informed by the 'first principles' there.
bvt: otoh, when i added a single line 'package SIO is new Ada.Sequential_IO(Positive);' to ffa_calc.adb, it errored out during the compilation in the same way
bvt: just tested ffa-8 where rng was introduced -- it works fine. would be trying to understand what is wrong with my code, then
diana_coman: hm, weird; now I'm really curious if you get the same complaint with asciilifeform's ffa (or my smg comms for that matter)
bvt: i used gnat 2017. will test ffa rng code and see if it works out.
asciilifeform: bvt: which gnat are you using ? i've never observed any such thing ( and i use the same restriction, http://btcbase.org/patches/ffa_ch11_tuning_and_api/tree/ffa/libffa/restrict.adc#L76 , ~with~ sequential i/o, http://btcbase.org/patches/ffa_ch11_tuning_and_api/tree/ffa/ffacalc/ffa_rng.adb#L49 )
mircea_popescu: hence the whole effort in ffa, which is nothing else and nothing besides a switching harness for 64 bit cpu so it doesn't leak data while switching it for a 8192 native byte.
a111: Logged on 2018-11-01 21:02 asciilifeform re-rotates desk to ffa pile
a111: Logged on 2018-10-31 17:54 asciilifeform: implicit conditionals aint evil per se , tho ; i banned them in ffa specifically as they get in the way of constanttimeism, is all
asciilifeform re-rotates desk to ffa pile
asciilifeform: there is no particular reason why ~erry~ proggy has to have the same pragma fascism as ffa ( and in fact i've written several that cannot function under that set of constraints, e.g. the mmap thing requires System.Address )
asciilifeform: implicit conditionals aint evil per se , tho ; i banned them in ffa specifically as they get in the way of constanttimeism, is all
asciilifeform: diana_coman: out of curiosity -- given what mircea_popescu said the other day re necessary speed of rsa ops, could potentially use the current (11) ffa ?
asciilifeform: the funny/sad bit is that this is ALREADY in gnat, for e.g. http://btcbase.org/patches/ffa_ch8_randomism#L132 , but ~not exposed~ ! to user
asciilifeform: bvt: i have a variant of this in ffa, and yet another subset in mmap
diana_coman: ftr I quite like the neat way in which asciilifeform defined those basic types in FFA; however, he went for the classical types so byte, nibble ; and I find octet SO much easier than I'm reluctant to give it up in my code (though all it takes is anyway a "subtype Octet is Byte" at top if Byte definition is to be adopted)
lobbes: hm interesting. I too have hands tied up but have been meaning to get a few chapters of ffa under my belt. I'll jot this idea down for far off in the conveyor if someone else doesn't get to it first (and by all means, Someone: feel free to beat me to this punch)
ave1: Using the stack makes code less error prone and a lot more readable, please read the FFA code; http://www.loper-os.org/?cat=49.
asciilifeform: i have 1 presently ( switched off, will move it to pizarro in near fyootoor ) , talks to ffa
asciilifeform: i illustrated this in ffa
ave1: asciilifeform, I was looking for mux just now in ffa just now and I came by the add_gated which uses a different method,.
asciilifeform: ave1: use the method illustrated in w_mux, http://btcbase.org/patches/ffa_ch1_genesis#L870
asciilifeform: ave1: you dun need ffa for this, yer dividing single words by single word
ave1: the div variant could be made to be constant time using the ffa primitives but currently is not.
mircea_popescu: we ~needed~ a republican crc32 anyway, it's useful and important, chapter head exactly like "we need a hash" or "we need a ffa", and i was aware extant code is not fit for pitching.
asciilifeform: http://btcbase.org/log/2018-10-04#1857985 << financials -- none; conveyor -- tmsr.udp ; ffa to resume once i wrap up keccakizing ☝︎
a111: Logged on 2018-10-01 15:59 mod6: And before the republic, I was very much a one-thing-at-a-time type of engineer. Seems like over the last year or maybe 18 months, I feel like I'm context switching so much, that I find it hard to get deep into the thinking that I need to. For instance, it bothers me that I still haven't found time to work through FFA.
mod6: Not only FFA, but other parts of TRB that I'd love to educate myself upon. I think you take my meaning.
mod6: And before the republic, I was very much a one-thing-at-a-time type of engineer. Seems like over the last year or maybe 18 months, I feel like I'm context switching so much, that I find it hard to get deep into the thinking that I need to. For instance, it bothers me that I still haven't found time to work through FFA.
a111: Logged on 2018-09-28 16:15 Mocky: asciilifeform, O(1) crapolade packet rejection is already available in software with your FFA lib, if RSA over non-frag UDP was built on top, no?
Mocky: asciilifeform, O(1) crapolade packet rejection is already available in software with your FFA lib, if RSA over non-frag UDP was built on top, no?
asciilifeform: e.g. i can put out ch12 of ffa on keccak.
asciilifeform: http://btcbase.org/patches/ffa_ch11_tuning_and_api/tree/ffa/libffa/fz_io.adb#L59 << example of endian-insensitive routine.
asciilifeform: http://btcbase.org/log/2018-09-14#1850327 >> they are, see e.g. http://btcbase.org/patches/ffa_ch4_ffacalc#L43 example ☝︎
asciilifeform: ( i had'em in the 1st drafts of ffa, then abolished , they interfere with proper compartmentalization )
asciilifeform: diana_coman: currently i am lacking a bigendian iron (or a gnat for such) so never got a chance to truly and properly test endianism conversion (as for ffa, it is endian-insensitive, but this is simple where there is no networking)
asciilifeform: ( and i didn't get a chance to finish the whole thing, was right when i picked up ffa )
asciilifeform: BingoBoingo: i'm willing to talk to 'hey i read ffa and in ch4 you missed this-here obvious optimization, here's proof'. but 'hi i am reddit, hear me roar' can go the fuck perma-away.
mats: depending on how that goes, i'll explore different power plants, and if THAT goes well, there's a gnat port to build future ffa-gossipd
asciilifeform: ( ffa in particular , only needs a stack, and 2 uarts, 1 for commands, 1 for FUCKGOATS ... )
a111: Logged on 2018-08-04 22:05 asciilifeform: ben_vulpes: iirc i proposed at one time an intermediate item on the way to proper gossipd ( 'serpent'-ciphered tunneler to connect coupla ircd instances to each other, and ditto for users ( get otp cookie a la deedbot, get a key that's good for 1 tcp connect ) but so far instead followed mircea_popescu's advice re not wasting sweat on such a thing, but pushing with ffa so as to get with what to gossipd.
asciilifeform: ben_vulpes: iirc i proposed at one time an intermediate item on the way to proper gossipd ( 'serpent'-ciphered tunneler to connect coupla ircd instances to each other, and ditto for users ( get otp cookie a la deedbot, get a key that's good for 1 tcp connect ) but so far instead followed mircea_popescu's advice re not wasting sweat on such a thing, but pushing with ffa so as to get with what to gossipd.
asciilifeform: btw i oughta mention , i had to resort to a modified vdiff.sh : http://p.bvulpes.com/pastes/rB9AD/?raw=true for ch11 , as the ada comment syntax causes inbandism barf with classic vdiff.sh when deleting or modifying the comment headers at the start of ffa modules
asciilifeform: http://btcbase.org/patches/ffa_ch11_tuning_and_api << for the l0gz.
mircea_popescu: o hey. wb ffa.
asciilifeform finally got inlining to work properly in ffa, ave-style . nao, the article!
phf: asciilifeform: while you're at it, ffa_ch4_ffacalc is also binary
mircea_popescu: i'll note that everthying the republicans deliver builds like a fucking charm, be it ffa, avetronics or what have you. i've never had a problem of this sort inside the walls.
a111: Logged on 2018-07-18 13:42 asciilifeform: phf: say what you will re ada standard, but e.g. ffa is ( afaik! ) a nontrivial and at same time ada2012-compliant proggy.
asciilifeform: mircea_popescu: conceivably not all works call for the ffa degree of fascism, where asciilifeform insists on being able to say exactly how many bytes are required after a O(1) look at the inputs, and to say exactly in what order they will be accessed etc
asciilifeform: http://btcbase.org/patches/ffa_ch4_ffacalc#L55 << copies the unix turd into the fixed space, if fits, if not, above.
asciilifeform: observe http://btcbase.org/patches/ffa_ch4_ffacalc#L97 mechanism, i fix a max length of param apriori, and routine will explicitly and pompously end the world if luser insists on trying to stuff it further.
asciilifeform: ( http://btcbase.org/patches/ffa_ch10_karatsuba/tree/ffa/ffacalc/cmdline.ads + http://btcbase.org/patches/ffa_ch10_karatsuba/tree/ffa/ffacalc/cmdline.adb for the curious )
asciilifeform: ( there was not an existing 'profile' corresponding to the degree of 'fascism' asciilifeform wanted , hence the bulk of http://btcbase.org/patches/ffa_ch10_karatsuba/tree/ffa/libffa/restrict.adc item )
asciilifeform: for thread completeness i must add that there are items in the standard (i.e. 'tasks') that i do not use in ffa, but intend to make use of in future ( i.e. trbi ) , and may be let live.
a111: Logged on 2018-07-18 13:45 phf: as far as ada is concerned, the tmsr ada is a subset of standard, that only exists in your head, and can be somewhat inferred from ffa. that's no standard
asciilifeform: ( hence why the logic is brought out to ffa_calc, rather than part of the lib proper -- to emphasize this )
phf: i'm starting to think that maybe it doesn't (my memory of logs are hazy on that point, perhaps ave1 mentioned that he's working on getting ffa_calc working), because i believe you're also using interfaces.c at least to declare the types that you get in/out of c system calls
asciilifeform: phf: my specific motivation in asking ave1 for this, was to enable building e.g. ffa where binary is small enuff to manually disasm and audit.
phf: asciilifeform: i thought that you were arguing that the subset of ada runtime that's included in zfp "ought to be enough for everyone", since at the moment i believe it compiles ffa, my apologies.
phf: as far as ada is concerned, the tmsr ada is a subset of standard, that only exists in your head, and can be somewhat inferred from ffa. that's no standard
asciilifeform: ( ~ffa_calc~ is not, as it uses a gnatism to grab the commandline args. )
asciilifeform: phf: say what you will re ada standard, but e.g. ffa is ( afaik! ) a nontrivial and at same time ada2012-compliant proggy.
asciilifeform: shinohai: otherwise pretty busy, currently with ffa reignition
asciilifeform: trinque: currently massaging ch11 of ffa series, right after this will test-fire your opus
ave1: thx diana_coman, It's now very minimal, mostly so that it can be understood as is. I'm working on adding all the code in so that at least ffa can build.
a111: Logged on 2018-07-05 05:17 mircea_popescu: asciilifeform when's the ffa restart btw ?
mircea_popescu: asciilifeform when's the ffa restart btw ?
asciilifeform wrapping up a very gnarly ffa surgery, >2x speed boost. thx to ave1 for the gnat clues.
asciilifeform: observe that ffa runs , per PeterL, on winblowz, despite asciilifeform having made 0 effort in this direction