log☇︎
76300+ entries in 0.046s
trinque: don't have a gnat built for them yet
asciilifeform: this being said, still gotta come up with bigendian box to test with at some point ( iirc trinque had one somewhere, but afaik no gnat for it yet )
asciilifeform: observe that 'address bytes only via word slides' worx even if you shat on one endianism and ate on other.
asciilifeform: ( given as you never operate on anyffing that came down the wire without passing checksum )
asciilifeform: mircea_popescu: the beauty is that there's no actual need to standardize one.
mircea_popescu: iirc we even had a discussion re standardizing a byte order ; though from the fact that i don't recall the results i take it i got shown broken cats. ☟︎
a111: Logged on 2018-09-14 16:30 asciilifeform: ( imho the tradition where 'just about errybody's little endian, but we spend cpu and flip bytes erry time we send something because in 1989 somebody had a pdp' is asinine )
mircea_popescu: http://btcbase.org/log/2018-09-14#1850418 << yes, none of that. ☝︎☟︎☟︎
asciilifeform: mircea_popescu: how did erdos put it, 'first you forget to unzip after piss, then to unzip ~before~, and only ~then~ your own theorems'
a111: Logged on 2018-09-14 13:38 asciilifeform has reached the mircea_popescu level of amnesia where 'hmm did i make this and it is on hdd somewhere or did i only want to'
asciilifeform: and sometimes lost entirely. but you prolly knew this.
asciilifeform: diana_coman: keep in mind that udp packets can get arbitrarily reordered in flight. ☟︎
asciilifeform: BingoBoingo: got it, loox same as last time.
BingoBoingo: asciilifeform: re: cutting down on stale time at customs http://p.bvulpes.com/pastes/S3auq/?raw=true
asciilifeform: nao, you'll prolly want to queue the incomings, but imho thats outside the scope of this thread
asciilifeform: it's how i did the cmdline thing ( earlier linked )
diana_coman goes to read some more
diana_coman: sounds very, very appealing to be honest
asciilifeform: ( you let it emit precisely e.g. 512byte into a preallocated buffer that never moves ; the ip it came from, into a 32bit , and that's it )
asciilifeform: imho there's no particular shame in wrapping an os call that doesn't have possibility of overflows
diana_coman: I certainly have to consider that option too if all that gnat.sockets buys me is some bloat + streams ☟︎
asciilifeform: diana_coman: then you may want to wrap unix recv() as i described ( can use my mmap example )
asciilifeform: but for certain things 'stream' is actually the correct abstraction (e.g. the variable-length tx in classical btc block)
diana_coman: supporting windows in not a requirement; whoever wants to support it is free to make their own implementation of the protocol anyways
asciilifeform: they baked this sad into file i/o also ( hence how it shows up in 'horsecocks' )
diana_coman: hm, so basically there might be something to "only tcp on gnat.sockets" after all since they baked this assumption in the...implementation of gnat.sockets themselves??
asciilifeform: it presumes that you want unbounded bags of octets
asciilifeform: sorta like the idjicy of gnat's builtin unix cmdline handling
diana_coman: asciilifeform, I'm also still unsure *why* exactly would I need streams; I can see it perhaps on client side if one wants to implement streams on top of udp basically to add checks/re-send or whatever they want to do but that is no concern of the protocol itself
asciilifeform: supposedly will arrive by end of next wk ( in practice, whoknows, iirc the last shot was 1 week of postage and 5 of orc customs )
asciilifeform: BingoBoingo, mod6 , ben_vulpes : ordered ! 308.28 orcbux ( 62.18 of'em orc fee, 37.21 -- postage, the rest -- 8 drives and pack of 20 adhesive hedgehogs ) ☟︎☟︎
diana_coman: phf, fixed link and thank you!
BingoBoingo: asciilifeform: ty
asciilifeform: ( imho the tradition where 'just about errybody's little endian, but we spend cpu and flip bytes erry time we send something because in 1989 somebody had a pdp' is asinine ) ☟︎
a111: Logged on 2018-09-14 12:38 diana_coman: re unchecked.conversion - there is still the issue of flipping the bytes though; this needs more thinking
asciilifeform: to round out thread, http://btcbase.org/log/2018-09-14#1850330 << in my orig udp attempt, i dispensed with the traditional 'gotta be in network byte order (tm)' doctrine, in favour of 'if packet doesn't pass muster, THEN flip the endianism and try again 1ce' ☝︎☟︎
asciilifeform: ( tho will add, ada Strings actually work with arbitrary garbage, given as they do not use the idiot c 'null termination' paradigm )
asciilifeform: ( tho naturally you won't use ada String for arbitrary octetolade. but same principle. )
a111: Logged on 2018-09-14 12:37 diana_coman: as I was writing that I was thinking that an unchecked.conversion for the whole thing might work - provided arrays are indeed stored as one would expect in a continuous space
asciilifeform: http://btcbase.org/log/2018-09-14#1850327 >> they are, see e.g. http://btcbase.org/patches/ffa_ch4_ffacalc#L43 example ☝︎
a111: Logged on 2018-09-14 05:15 trinque: "if my room is packed with cum socks and mcdonalds bags, dad will be too ashamed to come find me and kick my ass"
asciilifeform: http://btcbase.org/log/2018-09-14#1850298 << i'll add to this, that i've been to hobo encampments and found them to be... ~substantially~ cleaner and better organized than the 'open sores' atrocities. i suspect that the shitgnomatic level of horror is only found in dilapidated third world psych wards where inmates live in own shit. ☝︎
asciilifeform: but nao that i think about it, iirc mircea_popescu maintains currently a mswin eulora client, so you might be stuck with gnat's.
asciilifeform: ( the appeal of 'own gnatsockets' is similar to that of what i did with mmap : adacore's implementation is quite obese on acct of handling winblowz and other broken os )
asciilifeform: then again if you write 'own gnatsockets' you would have to do what i did for 'horsecocks' mmap system and actually handle all possible unix eggogs (granted there are not many of these for udp)
asciilifeform: so in this model you'd have 2 routines, 1 which takes a port, listens on it, and comes back 'someday' with a 512byte buffer fulla packet and the originator ip ; and another that eats a 512byte buffer and a dest ip, and returns immediately.
asciilifeform: tcp is very difficult to sanely work with without a stream abstraction, but udp -- trivial.
asciilifeform: diana_coman: incidentally, i was initially quite unsure re the wisdom of using the streams. but they are part of the standard and do appear to work as described. however for your application it isn't even clear to me that you need'em , could simply call out to unix's socket routine and get octet array of fixed length (e.g. 512byte) to work on.
asciilifeform: ( i had'em in the 1st drafts of ffa, then abolished , they interfere with proper compartmentalization )
asciilifeform: the only lang feature that gets in the way of this partitioning is 'generics', but iirc diana_coman did not use these anywhere ☟︎
asciilifeform: diana_coman: and incidentally ( as you prolly already discovered ) you can keep the restrictive flags, on the subset of the coad that doesn't use tasking. ( and this applies in general )
a111: Logged on 2016-04-06 15:49 asciilifeform: ada tasks, afaik, is the only sane implementation of parallelism where you ~never~ specify explicit thread
a111: Logged on 2018-09-14 12:37 mircea_popescu: anyway, reading through this, i suspect ada threading may turn out to be a pleasure.
a111: Logged on 2018-09-14 01:29 BingoBoingo: asciilifeform: http://aaronrogier.net/fanfront.jpg and http://aaronrogier.net/fanback.jpg Please gpggram a destination for the sticks
lobbesbot: asciilifeform: The operation succeeded.
asciilifeform: !Q later tell BingoBoingo http://p.bvulpes.com/pastes/UJFQW/?raw=true
lobbesbot: phf: Sent 33 minutes ago: <lobbes_phone> next time you're in the btcbase/patches boiler room, plox to add http://blog.lobbesblog.com/2018/09/logbot_command_router_python-genesis/ to 'bot' section?
phf: diana_coman: http://btcbase.org/patches?patchset=smg-comms and http://btcbase.org/patches/smg_comms_genesis (i found the sig in /vpatches/)
asciilifeform: the only pc-side tool in the setup is (patched) flashrom
asciilifeform: phf: fwiw i do not yet have a working heathen toolchain ( other than what shipped on the box ) either
asciilifeform: phf: this was on the off chance that you had a working replacement rom image. ( if you don't yet -- thing won't do you much good atm )
a111: Logged on 2018-09-08 04:08 asciilifeform: !Q later tell phf lemme know if you want the magic pill recipe + patched flashrom util for c101pa .
phf: http://btcbase.org/log/2018-09-08#1848612 << was at sea, but i was also keeping up with the logs (much better in flight entertainment!), i'll take the pill, but not sure i'll have the immediate use for it beyond ogling. i'm having a hard time recreating even the max-heathen environment that will simply reproduce the google stack as is ☝︎
lobbesbot: phf: Sent 6 days, 10 hours, and 44 minutes ago: <asciilifeform> lemme know if you want the magic pill recipe + patched flashrom util for c101pa .
phf: diana_coman: hey, the smg.comms genesis sig link is not resolving
a111: Logged on 2018-09-14 06:06 trinque: /cuntoo/portage weighs 26M right now, compared to /usr/portage weighing 704M
asciilifeform: http://btcbase.org/log/2018-09-14#1850300 << this is pretty neat. ☝︎
a111: Logged on 2017-03-10 16:57 asciilifeform: btw i will also put down in the log, one very simple possible algorithm for a 'txidx-fs' :
asciilifeform: http://btcbase.org/log/2017-03-10#1624240 << orig thread, re subj, for longterm ref. ☝︎
asciilifeform has reached the mircea_popescu level of amnesia where 'hmm did i make this and it is on hdd somewhere or did i only want to' ☟︎
asciilifeform: hmm, loox like i ~did~ glue'em, but the glued model definitely not ready for primetime.
asciilifeform: this is not directly relevant to diana_coman's application tho
a111: Logged on 2017-06-06 19:40 asciilifeform: mod6, phf , et al : http://nosuchlabs.com/pub/ada/horsecocks.tar.gz << i dun recall posting this before, so here it will live, for nao : unofficial release of mmaptron ☟︎
asciilifeform: i then wrote the mmap thing, with aim to bake the 'reads and stores blox , then O(1) tx retrieval' demo, but never got a chance to glue the two together
asciilifeform: ( what it was, was simply a btc block and tx reader, i fed an entire noad's 'dumpblock' chain into it, plus a buncha randomly bitflipped mutilations, behaved correctly )
asciilifeform: diana_coman: re streams, you may find the 'buf_streams' item in horse.tar.gz interesting
diana_coman: asciilifeform, aha; re-reading that thing - I guess the Scalar_Storage_Order looks promising, I'll dig a bit deeper into it
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)
diana_coman: I've found that and gave it a first pass but I didn't quite see how to use it for my problem; it's on the list of refs at any rate, so I'll get to re-read it
diana_coman awaits for the "brb, tea"
asciilifeform: and without tea
asciilifeform: admittedly asciilifeform just woke up and only gave it 1 look thus far
diana_coman: got it; will re-read (I do think I had a quick look at it at that time but it didn't stick)
asciilifeform: i'ma have to repost, 1s
diana_coman: I recall a link to examples in ada; fwiw I think they are even gone from that link at least; was that "nqb"?
asciilifeform: diana_coman: did you ever see the 'nqb' item asciilifeform posted in '17 ? had various imho good examples of operations on streams
diana_coman: I was just thinking I might have missed something crucial there
asciilifeform: i also had a variant that used c imports
asciilifeform: i've a half-written 'g' (if anyone recalls what that was) , used adasockets
diana_coman: also: I'm open to any corrections to that thing there, including any slamming of the sort "this is horrible, wtf, do it THIS way!!"
asciilifeform: ( and i didn't get a chance to finish the whole thing, was right when i picked up ffa )
a111: Logged on 2018-09-14 12:31 mircea_popescu: diana_coman entirely possible you're the first one to ever put udp through gnat.sockets.
asciilifeform: http://btcbase.org/log/2018-09-14#1850323 << i have a proggy, but it dun seem like i ever published the item, so diana_coman will have to count as 1st ☝︎
mircea_popescu: anywya, great reads this morning! the republic prevails!
diana_coman: re unchecked.conversion - there is still the issue of flipping the bytes though; this needs more thinking ☟︎
diana_coman: honestly it *seems* to me that's the case, yes; but I'm still trying to wrap my head around it
mircea_popescu: anyway, reading through this, i suspect ada threading may turn out to be a pleasure. ☟︎
diana_coman: as I was writing that I was thinking that an unchecked.conversion for the whole thing might work - provided arrays are indeed stored as one would expect in a continuous space ☟︎
mircea_popescu: diana_coman http://ossasepia.com/2018/09/14/smgcomms-implementation-chapter-1/#selection-111.394-111.513 << this'll have to change though, there's no way it can work out like that
mircea_popescu: diana_coman entirely possible you're the first one to ever put udp through gnat.sockets. ☟︎