log☇︎
76100+ entries in 0.042s
a111: Logged on 2018-09-17 09:06 diana_coman: arguably it helps if others know what you are working on - perhaps one can help at some point or at least not duplicate the effort, that's all
mircea_popescu: http://btcbase.org/log/2018-09-17#1850719 << she has a point you know ; i don't just mean ave1 though it's a fine example here. you folks have an excellent semaphore system, which works well and has been historically proven to work well (not to mention have all the interest in "feelings" of a guillotine). it is very stupid NOT to use it, to eschew use it, to miss out on using it. ☝︎
a111: Logged on 2018-09-17 12:41 diana_coman: sounds quite likely; and tbh that http://btcbase.org/log/2018-09-17#1850713 makes for weird/sad/hysterical reading depending on pov
diana_coman: re torvalds http://btcbase.org/log/2018-09-17#1850744 ☝︎
diana_coman: ah, I did not mean torvalds!!! I meant ave1's code
mircea_popescu: diana_coman i am not reading on. i'm done with torvalds.
mircea_popescu: schmuck. let's studiously overlook the man hut, so we can pretend "overwhelmed by cunt hut" latger on.
mircea_popescu: !!rate torvalds -10 "The above is basically a long-winded way to get to the somewhat painful personal admission that hey, I need to change some of my behavior"
a111: Logged on 2018-09-17 08:00 ave1: I'm aiming at a small library with support for UDP, TCP and UNIX sockets with direct calls to 64bit x86 and 64bit arm plus C. So far UDP + asm 64bit x86 is done.
mircea_popescu: http://btcbase.org/log/2018-09-17#1850711 << wait, if you have it also... then publish also ? ☝︎
mircea_popescu: ave1 once he publishes later today you can just read/patch/collaborate.
diana_coman: yay, thanks lobbes
a111: Logged on 2018-09-17 09:45 diana_coman: lobbes, esthlos, hanbot, ave1 - do you have something against using categories on your blogs? I find well-defined categories to be really helpful in finding stuff but on your blogs everything is in the "Uncategorized" category
lobbes: http://btcbase.org/log/2018-09-17#1850723 << ty for the feedback. I added the "Categories widget" to the sidebar so should make it easier to browse (http://blog.lobbesblog.com) ☝︎
diana_coman: ahhhh, it returns that value, nm
diana_coman: does it just block until it reads to fill the buffer or how does that work?
diana_coman: ave1, hm, the recv_from doesn't return the length of the received string?
diana_coman: at any rate ave1 this doesn't look bad at all in that it is an ada layer rather than just wrapping the c calls
diana_coman: now I need to read at least https://docs.adacore.com/gnat_ugn-docs/html/gnat_ugn/gnat_ugn/inline_assembler.html
a111: Logged on 2018-09-17 08:05 ave1: In other news, some lulzy drama underway in the Linux kernel camp; https://lore.kernel.org/lkml/CA+55aFy+Hv9O5citAawS+mVZO+ywCKd9NQ2wxUmGsz9ZJzqgJQ@mail.gmail.com/
diana_coman: sounds quite likely; and tbh that http://btcbase.org/log/2018-09-17#1850713 makes for weird/sad/hysterical reading depending on pov ☝︎☟︎
ave1: probably closely related to: http://ossasepia.com/2018/08/04/a-collection-of-pearls-as-well-as-ever-sadder-epitaphs/
ave1: Every time I go deep into these things all kinds of weirdness surfaces.
ave1: but you can also put some magic names in there like "memory"
ave1: clobber is an inline assembly term, it's a list of all registers that may change during the execution of the inline assembly
ave1: turned out with inline asm and pointers the memory needed to be clobbered
ave1: this move caused a major headache as suddenly the syscalls seemed to not fill buffers any longer (out of every 6 invocations of getsockname about 4 would fail with empy output).
ave1: note that all asm code was first in suckit-ip.* but I moved it to the syscall, the suckit-ip stuff will move to linux
ave1: the gprbuild project file includes different source directories based on the platform you'll be building
ave1: Yes, that's right, the source for syscalls is in the platform directory (so in platform/linux-x86_64-asm
diana_coman: ave1, if I get the structure right there, you have an empty root package Suckit and then children packages net and types; there seems to be also Suckit.Syscall that I see listed as dep in suckit.types but I can't find the source for?
diana_coman: I'll read and get back to you
diana_coman: thank you ave1 ! I'll take it
deedbot: http://ave1.org/2018/gnat-zero-foot-print-take-5-assert-and-aggregates/ << ave1 - GNAT Zero Foot Print - Take 5 - Assert and Aggregates
ave1: this builds with the musl gnat, the binary from adacore and the latests zfp.
ave1: diana_coman, code is here; http://ave1.org/code/suckit/, everything is pretty much in flux still (even then name could change, currently ip addresses are in network order but ports are in native order) ☟︎
diana_coman: ave1, the basic thing is that it's a proper hierarchy (so each post in one (sub)category and not in 10)
ave1: now for the well-defined part, this I will have to work on... ☟︎
diana_coman: lobbes, esthlos, hanbot, ave1 - do you have something against using categories on your blogs? I find well-defined categories to be really helpful in finding stuff but on your blogs everything is in the "Uncategorized" category ☟︎
diana_coman: looking forward to it
diana_coman: ave1> I'm aiming at a small library with support for UDP, TCP and UNIX sockets with direct calls to 64bit x86 and 64bit arm plus C. So far UDP + asm 64bit x86 is done. -> mind publishing somewhere this part then?
diana_coman: arguably it helps if others know what you are working on - perhaps one can help at some point or at least not duplicate the effort, that's all ☟︎
ave1: For example BSD expects a 1byte length field in the socket address structures (which is then not used as the interface already has a separate length argument)
ave1: Yes, I though that bsd sockets where some sort of standard, but it seems it has warths all over.
ave1: well, I started this about 4 weeks or so
diana_coman: gah, null terminator and zero starter and what next
diana_coman: ave1 hey, that would be very useful! but honestly, why not say it earlier?
ave1: In other news, some lulzy drama underway in the Linux kernel camp; https://lore.kernel.org/lkml/CA+55aFy+Hv9O5citAawS+mVZO+ywCKd9NQ2wxUmGsz9ZJzqgJQ@mail.gmail.com/ ☟︎☟︎☟︎
ave1: Also no UNIX sockets yet, I was reading the documentation and came accross how linux now supports "abstract" unix sockets which have no equivalent on the file system. Pretty big WTF all over, it's implemented by having a string start with a 0 (zero) byte.
ave1: I'm aiming at a small library with support for UDP, TCP and UNIX sockets with direct calls to 64bit x86 and 64bit arm plus C. So far UDP + asm 64bit x86 is done. ☟︎
a111: Logged on 2018-09-16 16:35 mircea_popescu: honestly, FEWER "this is my fork design" would be way better than more. http://trilema.com/wp-content/uploads/2010/07/basini-unique.jpg and all that.
ave1: I'm also working on a thin networking layer for Ada (using direct system calls in inline assembler). I got stuck on some inline assembly details and once that was resolved I got stuck on the whole select/epoll/kevent support and so forth. So at this point, http://btcbase.org/log/2018-09-16#1850668 applies. ☝︎
deedbot: http://bimbo.club/?p=13 << Bimbo.Club - TMSR Log Summary - 9/05/2018
lobbesbot: PeterL: The operation succeeded.
PeterL: !Q later tell bingoboingo http://p.bvulpes.com/pastes/KDpD9/?raw=true
PeterL: is there a process to get voiced in #pizarro?
mod6: Thank you, Sir. I appreciate the invoice.
mod6: 0.04570496 BTC good asciilifeform ? (I'm using the price point for sept for the calc)
a111: Logged on 2018-09-14 16:42 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 )
mod6: http://btcbase.org/log/2018-09-14#1850424 << Ah, thank you! ☝︎
mircea_popescu: asciilifeform all for posting $subj, this way minigame can just use it rather than make yet-another-new-one
mircea_popescu: i mentioned alf to him, his tongue came out
asciilifeform had nfi their face were this level of... round
a111: Logged on 2018-09-16 16:35 mircea_popescu: honestly, FEWER "this is my fork design" would be way better than more. http://trilema.com/wp-content/uploads/2010/07/basini-unique.jpg and all that.
asciilifeform: mircea_popescu: plox to clarify, is http://btcbase.org/log/2018-09-16#1850668 an arg in favour or against posting $subj ☝︎
mircea_popescu: ima install traffic stops in the dungeon.
mircea_popescu: honestly, FEWER "this is my fork design" would be way better than more. http://trilema.com/wp-content/uploads/2010/07/basini-unique.jpg and all that. ☟︎☟︎
diana_coman: asciilifeform, tomorrow sounds good!
asciilifeform: then diana_coman may find it useful, i'ma hurry up & genesis ( realistically tomorrow posted. )
diana_coman: atm it's only udp I want to do
asciilifeform: it only does udp tho
asciilifeform: diana_coman and mircea_popescu can read and use if they like it, i'ma genesis
a111: Logged on 2018-09-16 15:41 diana_coman: overall this leaves me with the fact that I'll have to make my own "thin layer" with only what I need, certainly thinner than gnat.sockets + gnat.sockets.thin
mircea_popescu: meanwhile in other lulz, the middle english word for "raise awareness" would be... animadverting.
diana_coman: not like typing takes a lot of time
diana_coman: if I knew all that, it'd be ...ready
diana_coman: as I dig into them deeper, I shall know! lol
mircea_popescu: how are you going to handle the weird data models implied by teh nutty syscalls in an ada proggy ?
mircea_popescu: i'm just checking things!
mircea_popescu: are you going to write an ada program to treat c-defined syscalls as black boxes and spit out ada acceptable output ; opr are you going to write a c program to treat c-defined syscalls as compatriots and spit out ada acceptable output ?
diana_coman: sure, but what's the point in wrapping a c call in more c code, I'm not sure I follow what you have in mind
diana_coman: if it's c, there's no need for a wrapper
mircea_popescu: diana_coman but would the wrapper be c or ada ?
diana_coman: myeah; I did not even pretend I *like* to have to do this
mircea_popescu: half the fucxking manual on recv deals with a) spurious extra prototypes and b) data size definition soup.
mircea_popescu: "According to POSIX.1-2001, the msg_controllen field of the msghdr structure should be typed as socklen_t, but glibc currently types it as size_t. " and other joys of the c world.
diana_coman: I don't know what an "ada system call" is, to answer that question; my aim is indeed to wrap them in one place so that everything else makes ada calls and doesn't care
mircea_popescu: more specifically : what exactly is the limit of the "c-ness" of the system calls ? can we pretend they're ada system calls until they are ?
diana_coman: mircea_popescu, it would still wrap recv and send at the very least
mircea_popescu: diana_coman would this be written in ada then ?
deedbot: http://trilema.com/2018/best-in-the-world/ << Trilema - Best in the world!
diana_coman: for lulz from the above code: -- Return highest numbered socket (what does this refer to???)
diana_coman: overall this leaves me with the fact that I'll have to make my own "thin layer" with only what I need, certainly thinner than gnat.sockets + gnat.sockets.thin ☟︎
diana_coman: moreover, the thin layer is in principle internal to gnat.sockets so it's not even meant to be directly used from outside (compiler will throw a warning though nothing worse than that afaik)
diana_coman: while initially I considered using this thin layer, on a deeper look at it, I don't like it; here is the code of it: https://www2.adacore.com/gap-static/GNAT_Book/html/rts/g-socthi__ads.htm and https://www2.adacore.com/gap-static/GNAT_Book/html/rts/g-socthi__adb.htm
a111: Logged on 2018-09-14 16:48 diana_coman: I certainly have to consider that option too if all that gnat.sockets buys me is some bloat + streams
diana_coman: http://btcbase.org/log/2018-09-14#1850437 -> following on from this, I had a look in more detail at the code for gnat.sockets; my conclusion is that gnat.sockets has as main contribution the streams + forcing the weird dance with types; underlying gnat.sockets is the "thin layer" that essentially wraps the system's C functions for sockets ☝︎
deedbot: http://bimbo.club/?p=12 << Bimbo.Club - TMSR Log - 9/02/2018
mircea_popescu: meanwhile in alt coins, "Super Male Vitality is the result of ancient wisdom reinterpreted over several years in the light of modern equipment and analysis."
mircea_popescu: ah if only it were 1998 again, how bien trouve shit like "hip-adjacent" would catch wings and fly! what a "dank meme" it'd have been, back before they had a word for it.