log☇︎
257200+ entries in 0.174s
ben_vulpes: phf: is that particular 'compact size' anything like other hand-rolled variable length integers in c-land?
phf: well, step two after writing compact size reader/writer is to figure out how to make a general purpose "binary-type object of count `compact size`"
ben_vulpes: noty, i would like to constrain the attack surface to satoshis retardation.
ben_vulpes: otherwise what, write parsing of entire structure by hand? and then reserialization?
ben_vulpes: asciilifeform: it is imho entirely worth the sweat ☟︎
ben_vulpes: conveniently, the generic for read-binary accepts other keys, into which i can pass a length for reading
asciilifeform: but whether this is worth the sweat, i cannot say.
asciilifeform: and the 'correct' thing to do would be to extend it such that it would be.
asciilifeform: which unfortunately isn't the case for variable-length types in it
asciilifeform: well the thing that presumably drew ben_vulpes to using 'binary-types' is the notion that 'describe the type and never have to manually craft readers/writers'
phf: the writer likewise knows all it needs to know about how to serialize from ~the number~. the check becomes "in which range it is, in which case write it thus"
phf: so it's up to reader to decide if it should return first octet as ~the number~ or read first octet and read a bunch of stuff after and return that as ~the number~
phf: the type is called compact size (in bitcoin src parlance), it is simply an number. the reader reads a byte, decides what to do, ultimately returns ~the number~
ben_vulpes: phf: i do believe that i have to hold onto first-octet, if it's less than 253 it *is* the length.
ben_vulpes: far tidier asciilifeform ty
asciilifeform: phf: i dunno that binary-types offers a clean way of handling this type
phf: well, while asciilifeform's yak shaving, i don't think this is correct way to handle the type
asciilifeform: and similar for the other one.
asciilifeform: type
phf: ben_vulpes: you don't have to store first-octet since, it's a property of variable-integer (also if you change variable-integer, you'll have to make sure to correspondingly update first-octet)
ben_vulpes: funny, that's the exact same misread trinque made.
ben_vulpes: fell back to a setf from read-binary.
ben_vulpes: i wasted an inordinate amount of time on various false starts in storing variable length fields.
asciilifeform: it is painful to read
ben_vulpes: (if the thing had an adult database, the tree would fall naturally out of foreign keys on height, from each block to its parents)
ben_vulpes: while i have your attention, asciilifeform, am i doing this entirely incorrectly? http://wotpaste.cascadianhacker.com/pastes/azncd/?raw=true
asciilifeform: turned out that we had differing records of orphaned blox.
asciilifeform: when i was doing the repeatable-sync experiments.
asciilifeform: i ran into this caltrop when diffing my blocks with mircea_popescu's way back when
ben_vulpes: when i need to handle reorgs, i'll do so.
asciilifeform: (you don't know that it will be orphaned until later)
asciilifeform: because there is no fundamental way to weasel out of doing so
asciilifeform: it hangs on to any orphaned chain
ben_vulpes: and i believe that the thing hangs on to short chains
asciilifeform: (and trb does in fact store orphaned blocks eternally)
ben_vulpes: 'tis a tree
asciilifeform: at the frayed tail end, it is ~always~ potentially bifurcated
asciilifeform: ben_vulpes: it helps to remember that the blockchain is ~not~ in actuality a simple linear sequence
ben_vulpes: (and only the ones in the main chain, atm)
ben_vulpes: i'm leaning on dumpblock to get them in chain-order
asciilifeform: ben_vulpes: these already lived in a consecutive pile.
ben_vulpes: yeah i have the vast majority of blocks serialized to disk and am trimming them apart.
asciilifeform: you will never have to go to the town market to buy a new rhinoceros or new bulldog, you can cut the head of this one as many times as it takes.
asciilifeform: ben_vulpes: but look on bright side: if you have the thing running on your box, it won't run away, you can vivisect it until you learn whatever you wanted to learn.
asciilifeform: ben_vulpes: 'trivially' means different things to different people.
asciilifeform: mircea_popescu: fwiw, i have nfi what, if anything, is left there to see.
ben_vulpes is looking for the log line where asciilifeform made a comment about how the block structure was trivially deduceable from the source, a few days ago after i published the header serialization snippet
asciilifeform: esp. if coupled with actual working wireshark + trb node.
asciilifeform: https://github.com/lbotsch/wireshark-bitcoin << not a wholly bad guide to the thing
ben_vulpes: oh trust me i fucking know
ben_vulpes: i doubt it, as everything so far is little-endian, and only by convention reversed by early block explorers to show the zeros first or who the fuck knows i've never found a sensible explanation for reversing block hashes (and only block hashes!) ☟︎
asciilifeform: source, lulzily, is quite unhelpful because of the 'serialization' abstraction it liberally makes use of
ben_vulpes: so now to the source and hexdump to see how individual transactions are structured
ben_vulpes: but the strange thing is that i read the sequence number where i expected to see the index
ben_vulpes: obvs my thinger is broken in that the hash is wrong, but amusingly i get the sequence number as tx in index
ben_vulpes: in other 'own thing', 'prototyping' and 'omgwtfbbq' nyooz, this is where i threw my hands up and went to bed last night: http://wotpaste.cascadianhacker.com/pastes/m8mjo/?raw=true
asciilifeform: ( it must've been a real downer for these folks, who turned into boring, snoring car mechanics, dentists, etc. 'hey, remember when we used to saw dude apart and stitch his head onto his arse? ' 'shuddup, pass the oil pan' )
asciilifeform: where mengele et al lived out their days.
asciilifeform: speaking of which, did mircea_popescu ever visit town of barriloche ?
mircea_popescu: and if the above horrifies wife, get rid of her.
mircea_popescu: "dad, i want to put the cat's head on the dog's body, can i borrow your hair trimmer ?" "that won't work, it's too small and it will get clogged in blood. here's the chainsaw."
mircea_popescu: this is tru.
asciilifeform: e.g., today's netcat.
asciilifeform: eh hey i dun recall ever deying him the requested rope.
mircea_popescu: gotta be a lot more nurturing in the way of rope supplies, by your own theory ?
scriba: Logged on 2016-09-19: [17:19:45] <mircea_popescu> give kid as much rope to hang self with as kid can carry.
asciilifeform: the one thing that cures is the years going by and the patient bashing himself bloody against the concrete wall of the 'ignored and abstracted'.
mircea_popescu: the ill gotta be curable at least on occasion, or else you're stuck explaining this place.
asciilifeform: because the ill is not curable.
asciilifeform: at no point is the notion that 'irrelevant' foobar will dissolve the bottle, the desk, the floor, the house, your mother, and you, and the town - contemplated.
mircea_popescu: but it's also structurally broken ; because it fails to neatly reduce uncrowned king of universe via reduction to absurd. which is the measure of persuasion, apud socrates.
mircea_popescu: there is some of that.
asciilifeform: 'if i don't understand how foobar works, i can declare it irrelevant and never need to understand'
asciilifeform: (which translates into an amazing spectrum of cognitive slips)
asciilifeform: it is unpersuasive for the very familiar reason that every boy thinks himself uncrowned king of universe
mircea_popescu: anyway. most of my concern is that your (plural) heartfelt advice is remarkably unpersuasive. gotta wonder wtf devil is at work here.
asciilifeform: but if instead 'practical' demonstration - can point to nearly any pile of shit in software land as proof
asciilifeform: depending on what kind of 'show' -- straight to (as mircea_popescu cited earlier) the good doctor godel
mircea_popescu: (i'm not even proposing it isn't, just wanna see what the showing would look like.)
mircea_popescu: asciilifeform can you show this to be truth ?
asciilifeform: precisely of the kind mircea_popescu and other sane folk decry
asciilifeform: a dude who believes that he is genuinely solving some actual problem by bolting a gui onto 'portage', is engaging in willful idiocy
mircea_popescu: trinque yah, but now it's in a much better formulation. at least to my taste.
trinque: I will deny he "knows" masamune on the same grounds
trinque: mircea_popescu: he is *not* replacing the underlying system and thus cannot avoid developing comprehensive knowledge of how *it* works before plonking whatever atop it and calling it something
mircea_popescu: this is not that, however.
asciilifeform: fella 'asks' regularly, 'my bulldog head that i stitched onto this rhinoceros just won't wake up, plox help'
mircea_popescu: what, seriously, he asked you 3092 times ?
mircea_popescu: trinque his objection is to the notion of "learn" and "knowledge" involved in that statement though, you might've noticed. and i don't really see it's altogether weak.
trinque: doesn't bother me one bit, only demonstrated that "I don't know how to network these two machines" and got thunked to... learn that.
mircea_popescu: no, it's not just you, it's me too. but he didn't ask us!
asciilifeform: but possibly that's just me.
asciilifeform: i'd personally rather see folks explore directions that haven't been explored to agonizing death and conclusively mapped as dead.
mircea_popescu: give kid as much rope to hang self with as kid can carry.
mircea_popescu: it ~is~ as if all you wanna talk about is why he shouldn't do what he figures he wants to do. this isn't very bright, is it ?
mircea_popescu: "dad i wanna get married" "honeybunch, you'll get old and your tits will sag and it'll suck. don't get married, it's a dead end"
asciilifeform: it isn't as if we tied him to a pole to keep him from going into it.
asciilifeform: mircea_popescu: what is to be gained from ~not telling~ the kid that the dead end is a dead end ?
mircea_popescu: but anyway, leaving the discussion aside for a moment to focus on the meta discussion : am i the only one who's a little irked by the fact that kid wants to do x, gets list of instructions to not do x ? what is this, the nuclear family, elementary unit of the state ?
mircea_popescu: really, making a lisp that works for serious applications in this sense is outside his pay grade