log☇︎
54400+ entries in 0.012s
asciilifeform: btw arm and mips have toggles for endianism
asciilifeform: mircea_popescu: and most of the knob params are of the http://btcbase.org/log/2018-01-25#1775939 kind. ☝︎
asciilifeform: mircea_popescu: i hatetobreakittoya, but WHOLE FUCKING pseudoengineering kompyooting thing, is 'whisperproduct'
asciilifeform: i dun actually disagree with mircea_popescu : i never liked bigendianism . but it did come from a particular cost analysis , ftr. ☟︎☟︎
asciilifeform: errything -- costs.
asciilifeform: it does cost.
asciilifeform: on every word access ?!
asciilifeform: ( it ain't impossible. but i can't immediately think of an economical method )
asciilifeform: mircea_popescu: i'd like to see your algo for 2s-complement add/sub for a hypothetical box where sign bit is not the senior bit
asciilifeform: i'll confess , i'm with mircea_popescu on this one, how much time is spent printing and testing sign bits ?
asciilifeform: mircea_popescu: the 'philosophically consistent' ( hey kurchatov! ) method is: little-endianism . but with it, you're stuck loading a whole parcel to test its sign bit ( i dun give a fuck, personally , on modern iron ) but -- unless yer an arab -- flipping words prior to printing , in the civilized style, left to right
asciilifeform: possibly worth reviewing why people even came up with bigendianism. it was partly from 'can test sign bit by looking at zeroth byte' , and partly the ben_vulpes ( from #trilema-mod6 log linked 2d ago ) problem -- 'let's store words in the order in which they get printed'
asciilifeform was waiting for this
asciilifeform: ( attach a dynamo to dijkstra's corpse prior to testing, yes 'oughta tell From First Principles!111' )
asciilifeform: for answering mircea_popescu's 'but does it actually work' .
asciilifeform: btw iirc trinque has a bigendian machine with a working gnat.
asciilifeform: ( i recommend to diana_coman and even to mircea_popescu to read the linked doc )
asciilifeform: and the effect is what is desired, namely the layout is exactly the same, independent of whether the code is compiled on a big-endian or little-endian machine. '
asciilifeform: ' for Data'Bit_Order use High_Order_First;
asciilifeform: btw,
asciilifeform: ( other than to bake own iron with 1bit busses etc )
asciilifeform: i described the two known pills ( without endorsing a particular one ) against endianism. afaik there is not a third.
asciilifeform: diana_coman: the short version is that the cpu is a physical object. this is an eternal and incurable headache for programmerz, yes
asciilifeform: mircea_popescu: not in ada planet.
asciilifeform: and yes the Bit_Order thing works, all kinds stuff would immediately liquify if it didn't
asciilifeform: but i think mircea_popescu gets it
asciilifeform: it exists as order in which bytes inside word appear
asciilifeform: endianism dun exist inside byte lol
asciilifeform: ( and if it didn't -- it ain't hard to determine it mechanically . i will leave it as exercise how )
asciilifeform: ( tldr : ada tells you the endianism of the box you're on )
asciilifeform: mircea_popescu: https://gcc.gnu.org/onlinedocs/gnat_rm/Effect-of-Bit_005fOrder-on-Byte-Ordering.html
asciilifeform: mircea_popescu: actually no
asciilifeform: this is how the problem is traditionally solved.
asciilifeform: so in b) you either flip ( opposites ) endiannesses of all inputs, or not flip ( same endianness ).
asciilifeform: what you can do, is either a) operate bitwise, ffa-style. b) mandate an endianism for the data format. and since you know the endianism of the machine you're building on, in particular build, you know whether the machine's is opposite or same as the data's.
asciilifeform: aha.
asciilifeform: endianism is not an attribute discernible from a pile of bits
asciilifeform: diana_coman: you can't 'check endianism', you gotta know from where the input came to know its endianism
asciilifeform: ugh shitgoogle as usual
asciilifeform: !~google network byte order
asciilifeform: this problem was a serious headache for the tcp/ip people, they solved it mircea_popescu-style, 'fuckyou and errything going over the wire is to be bigendian' (at the time, bigendianism dominated in 'serious' iron)
asciilifeform: diana_coman: all of this being said, if you can guarantee that the endianism of the input matches the endianism of the roundconstants -- you get correct answer. otherwise not.
asciilifeform: ( it was written, recall, not in empty space but for usg's contest. and 1 of the demands was 'not much slower than older hashes' )
asciilifeform: cuz slow
asciilifeform: nao diana_coman knows why asciilifeform favours crackpotteries like numbertheoretical hashing etc.
asciilifeform: sorta like how ffacalc works ( observe that it does exactly same thing on all possible endianisms , even 'middle endian' ( yes exists ))
asciilifeform: nao you could try to derive a keccak' , where it aint..
asciilifeform: because of the way keccak is defined, the input is operated on wordwise
asciilifeform: diana_coman: as your proggy is currently written, it is only sensitive to endianism mismatch between the inputs and the endianism of the machine on which your proggy was built ( i.e. in which the round constants are stored ). this is not curable at the program level .
asciilifeform: diana_coman: is your current hypothesis that the iota operator is endianized ?
asciilifeform: i'm still looking for what is
asciilifeform: diana_coman: BitsToWord and WordToBits are not endianism-sensitive.
asciilifeform: i'ma read diana_coman's proggy and come back .
asciilifeform: worse, even
asciilifeform: same thing neh
asciilifeform: before we start feeding asciilifeform's machine arch crackpotteries again ( he dun mind at all..) let's determine whether diana_coman actually has an endianism problem ?
asciilifeform: aite, mircea_popescu gets a 1bit bus and 4096b rsa op takes 25 years.
asciilifeform: mircea_popescu: the basic problem of 'how wide apart the rails on the railroad' doesn't go away , regardless of what you set the knobs to
asciilifeform: diana_coman: this part i cannot cure , hashing as it stands is an exercise in voodoo
asciilifeform: mircea_popescu: to make it unexist, gotta understand what it is
asciilifeform: diana_coman: endianism only comes into play if you address individual bytes
asciilifeform: mircea_popescu: it is important to grasp what endiannessism IS
asciilifeform: mircea_popescu, diana_coman : if you don't byte-address, it does not matter whether you use constants, you are not endian-sensitive
asciilifeform: mircea_popescu: this is not necessarily so
asciilifeform: diana_coman: waitasec : what makes you think that your keccak is sensitive to endianness ?
asciilifeform: and np.
asciilifeform: mircea_popescu: got it; worx!
asciilifeform: mircea_popescu: http://p.bvulpes.com/pastes/Np6fj/?raw=true
asciilifeform: aha
asciilifeform: i meant attempted ukrization, rather than necessarily that particular result. but yes
asciilifeform: followed by ukrization aha
asciilifeform: eh aint the cia torture palace and usg naval base still open there ?
asciilifeform: dafuq even is that
asciilifeform: ( in detail, e.g. http://btcbase.org/log/2017-03-01#1620942 ) ☝︎
asciilifeform: iirc it recurred, as 'responsibility triangle' in later thread, and then once again as the http://btcbase.org/log/2017-02-25#1618589 mega-problem ☝︎
asciilifeform: kept looking for a thesis, and didn't find
asciilifeform: i confess that i eggoged on this article
asciilifeform: ben_vulpes: yer 'there's a way to go yet' link is borked
asciilifeform: ( fregeism notwithstanding )
asciilifeform in the midst of fairly hefty conversion of '5000 log frags' to proper blogotronic text -- in re ffa . but ffa is in this respect substantially simpler item; it is not a mega-mystery how to do arithmetic.
asciilifeform: ben_vulpes: i pictured something moar lumberjacky, with gigantic saw
asciilifeform: on one end phf , trinque on other
asciilifeform: aha
asciilifeform: only a matter of time.
asciilifeform: but more generally the lipstick-on-pig incarnation of 'let's wrap gnupatch/gnudiff' is doomed to be retired
asciilifeform: hanbot: see if you can achieve same barf with my vtron
asciilifeform: hanbot: i'd like to know how you got '.orig'. afaik this only happens when merging is enabled. no vtron i know of , enables it
asciilifeform: http://therealbitcoin.org/ml/btc-dev/2015-August/thread.html#161 << the earliest materials .
asciilifeform: hey hanbot , wanna write the Troo Vtronic Likbez ?
asciilifeform: and afaik the answ is nope
asciilifeform: ( other than the l0gz )
asciilifeform: ben_vulpes: i think the q was, whether this is put into writing properly somewhere.
asciilifeform: hanbot: afaik it's still even today the state of the art v-likbez.
asciilifeform: http://cascadianhacker.com/07_v-tronics-101-a-gentle-introduction-to-the-most-serene-republic-of-bitcoins-cryptographically-backed-version-control-system << item
asciilifeform: hanbot: ben_vulpes's www
asciilifeform: there is not so much any more of 'called in general'. tho i do get occasional wardialer to this day.
asciilifeform: possibly.
asciilifeform: ( they traditionally make sure to )
asciilifeform: also fwiw ~every spammer i ever heard through a phone, knew my name
asciilifeform: ( nao on other hand you couldn't simply roto-dial to him )