Search logs:

channel logs for 2004 - 2010 are archived at http://tunes.org/~nef/logs/old/ ·· can't be searched

#osdev2 = #osdev @ Libera from 23may2021 to present

#osdev @ OPN/FreeNode from 3apr2001 to 23may2021

all other channels are on OPN/FreeNode from 2004 to present


http://bespin.org/~qz/search/?view=1&c=osdev2&y=24&m=4&d=9

Tuesday, 9 April 2024

00:00:00 <gog> i meant björk
00:01:00 <heat> is that a new dua lipa song
00:01:00 <gog> yes
00:12:00 <childlikempress> i wish i were a dua lipa song
00:14:00 <kof673> bad gog :/ "all there ever was, is, or ever shall be" -- nature god/goddess/whoever
00:15:00 <gog> what
00:16:00 <kof673> it was all "nature" even if computers are a step more "abstracted"
00:16:00 <gog> oh
00:16:00 <kof673> thinking sand or whatever lol
00:16:00 <gog> two words: butlerian jihad
00:17:00 <gog> we must destroy the thinking machines before they destroy us
03:53:00 <geist> heat: RUUUUST
08:07:00 <nortti> https://cliffle.com/blog/hubris-reply-fault/
08:07:00 <bslsk05> ​cliffle.com: The server chose violence - Cliffle
08:26:00 <GeDaMo> Nice :)
08:26:00 <vdamewood> beep
08:26:00 <kof673> "we keep finding operations that really can’t fail. Setting a GPIO pin, for example" # yeah, but have you ever set a GPIO pin on <insert substance here> (across a network for the metaphor)
08:27:00 <kof673> that is not to nitpick that example, but a good reason why everything might actually "really can fail"
08:28:00 <kof673> if something is "network transparent" failure is always an option surely
08:29:00 <GeDaMo> Wouldn't that be the network failing, not the pin setting?
08:29:00 <nortti> hopefully setting a GPIO pin is not network transparent
08:29:00 * kof673 sees plan9 glenda shed a single tear
08:30:00 <kof673> yes network, but should the caller know something goes across a network or not?
08:30:00 <kof673> well, virtual device then for another case
08:30:00 <kof673> a simulated GPIO pin done in software
08:31:00 <kof673> i'm still reading, have not decided yet on the general idea
08:47:00 <kof673> for a vague handwavey analogy, foo(struct thing * t, size_t i) foo() validates each record of t[]. should it fail at the first problem and e.g. return the failing index and reason? or continue checking the other elements, and e.g. return/set a bit array of failing elements and reasons somewhere as well? this i think is more what should the caller know, or should they have to call foo() again and again potentially to se
08:47:00 <kof673> e which records are actually invalid. and a question of how resource-intensive it is to check a record perhaps. is the information useless if any part is bad, or can the caller still use the "good" elements?
08:47:00 <kof673> i don't know, not accusing the link of doing so, just hard for me to decide on a one-size-fits-all rule
08:55:00 <kof673> or, a compiler finds a syntax error. same deal, fail immediately, or keep going, assuming that possible further error messages are more useful than not?
09:02:00 <kof673> there is that rfc saying too "be liberal in what you accept, conservative in what you send"
09:02:00 <mjg> that really sucks, does not it
09:03:00 <mjg> but then again, from interop perspective it is probably unavoidable
09:06:00 <nortti> while it's pretty hard to retrofit strictness onto deployed protocols, I do want to say newer protocols tend to be quite strict from the beginning
09:09:00 <mjg> t does not matter how strict the protocol is
09:10:00 <mjg> if the leading implementation (for example showed down the throat by microsoft) is doing stupid shit, that's what you have to support
09:11:00 <nortti> true, but strict protocols at least admit strict implementations
09:20:00 <kof673> agree with both; it seems double-sided to me: interop goes up if you are flexible, but then you are "encouraging bad behavior" arguably i.e. flaky things never get fixed, because they work "well enough"
10:34:00 <zid> Is it linguistics time yet?
10:34:00 <zid> calque is a loan-word and loan-word is a calque.
10:35:00 <GeDaMo> zid: been reading Reddit? :P
10:35:00 <zid> ofc
10:42:00 <zid> GeDaMo what weird puzzle today
10:44:00 <GeDaMo> Was it?
10:52:00 <zid> huh
10:52:00 <zid> I don't know any weird puzzles called was it
10:52:00 <zid> I guess I'll just do squardle and wordle until you find me something
10:56:00 * vdamewood plays Squirtle
10:56:00 <zid> There's a squirdle
10:56:00 <zid> where you have to guess a pokerman
10:56:00 <zid> but I only know like 2 gens so I can't really play it
10:57:00 <zid> at least on default settings
11:18:00 <GeDaMo> zid: https://bazingle.wook.wtf/
11:18:00 <bslsk05> ​bazingle.wook.wtf: Bazingle
11:22:00 <nikolapdp> zid it's always linguistics time
11:33:00 <zid> good news, whatever the answer is, it isn't in my dictionary, I checked
11:34:00 <zid> oh, fuck you GeDaMo
11:35:00 <GeDaMo> :D
11:36:00 <GeDaMo> That was my response too :P
11:39:00 <nikolapdp> lol
15:25:00 <heat> bazingle
15:27:00 <gog> rust
15:27:00 <zid> asp.net
15:27:00 <gog> shut up
15:27:00 <mjg> web.dev
15:28:00 <zid> It all returns to nothing, it just keeps tumbling down, tumbling down, tumbling down
15:28:00 <gog> i'm not a webdev, i'm a temporarily embarassed osdev
15:28:00 <zid> gog have you considered letting the boundary of your psyche erode and becoming one with the sea of consciousness?
15:29:00 <zid> dirac would bepleased
15:29:00 <gog> i just need a heroic dose of psilocybin
15:30:00 <zid> or a spear of longinus
15:30:00 <gog> is this an anime reference
15:30:00 <gog> is this EVANGELION
15:30:00 <zid> ofc it's evanlgeion :P
15:30:00 <gog> mmm LCL
15:30:00 <zid> I only infact, speak in advanced evangelion memes
15:31:00 <zid> heat's over here playing power rangers and shouting AT FIELD! at other kids, I am figuring out how to compress the soul of my dead wife into a point mass
15:31:00 <gog> gendo ikari is a weird fucken dude
15:32:00 <gog> i guess every character in that show is dealing with extreme trauma
15:32:00 <zid> He misses his wife, she was nice to him even though he's a dickhead
15:32:00 <zid> yui: "I can fix him!"
15:33:00 <zid> yea sure you can, get in the robot
15:53:00 <heat> i feel sick
15:53:00 <heat> i've just argued *for* mouse support inclusion in OVMF
15:53:00 <heat> what's wrong with me
15:53:00 <zid> is it nice and laggy
15:54:00 <zid> like every single mouse impl in any bios I've ever used
15:54:00 <heat> probably
15:54:00 <zid> perfect
15:54:00 <zid> 4Hz is a lovely way to use a mouse
15:54:00 <heat> tbh i don't understand why firmware mouses suck
15:54:00 <zid> just the crappy software redraw speed I think
15:54:00 <zid> 5fps -> 200ms of input lag and choppy as fuck
15:54:00 <heat> mine feels floaty and the sensitivity was clearly designed for the touchpad :D
15:55:00 <zid> and yea, probably wrong sensitivity
15:55:00 <zid> all combined is a thoroughly miserable experience
15:59:00 <zid> GOP should add hw mouse, rather than ovmf adding an impl for a shitty software one
16:15:00 <heat> god yes
16:15:00 <heat> GOP should add opengl too
16:17:00 <heat> typedef struct gl_proto { void *(*GetProcAddress)(CONST CHAR16 *Name, struct gl_proto *Protocol); } EFI_OPENGL_PROTOCOL;
16:17:00 <heat> hire me intel
16:22:00 <pounce> u really want to work in beaverton
16:23:00 <heat> sounds like a fake name
16:23:00 <pounce> i wish it were
16:24:00 <heat> do you work in beaverton
16:24:00 <pounce> ok i guess it's Hillsboro, even further from beaverton
16:24:00 <pounce> heat: no, intel
16:25:00 <heat> you work at intel now?
16:25:00 <pounce> no!!
16:25:00 <pounce> <heat> hire me intel
16:25:00 <heat> i remember you used to have a facebook/ cloak
16:25:00 <gog> me too
16:25:00 <pounce> but it's on like, the boring side of portland
16:25:00 <heat> yeah i mean
16:25:00 <gog> beaverton was the inspiration for lumberton from david lynch's blue velvet
16:25:00 <heat> one has to assume all those corporate cities are boring as fuck
16:26:00 <pounce> i worked at facebook but i quit because i don't like making money
16:26:00 <heat> based
16:26:00 <zid> good
16:26:00 <zid> I recommend getting really interested in buying other people computer parts
16:26:00 <heat> i'd shoot myself if i had to live in fucking menlo park
16:26:00 <pounce> no it was seattle
16:26:00 <pounce> but if i liked computer parts it would have been a good place to stay
16:26:00 <heat> or fucking mountain view
16:26:00 <heat> or belevue or whtaever the fuck that is
16:26:00 <pounce> facebook sent me a $40,000 desktop with NUMA by accident
16:27:00 <heat> cuz 1) expensive 2) nerds
16:27:00 <heat> 3) literally nothing else
16:27:00 <zid> $40k and they couldn't even buy ram that was local to you? rude
16:27:00 <pounce> oh, i didn't have to do bellevue thank goodness
16:27:00 <zid> "It's got some ram, but it's in a different postal area"
16:27:00 <pounce> more uniform than that :p
16:28:00 <zid> My last desktop was numa cus I mismatched the dimms
16:28:00 <zid> facebook equally cheap
16:28:00 <heat> ah yes im glad to have a break from my facebook job, now let me step into my Facebook Powered bus to go down to my local Facebook McDonald's and have a McFacebook
16:28:00 <pounce> TRUE
16:28:00 <pounce> i went to Menlo park once
16:28:00 <heat> it's sure good to live in Facebook Park
16:28:00 <pounce> it was so lame
16:28:00 <zid> don't forget to drink your verification can so that the bus lets you off, heat
16:28:00 <pounce> i had to take the facebook bus
16:28:00 <pounce> to go across the bay
16:28:00 <pounce> to go to the other facebook
16:29:00 <pounce> and they didn't even have anybody in the offices, it was just empty limnal tech office space as far as the eye can see
16:29:00 <FireFly> why did the pounce cross the bay? to get to the other facebook...
16:29:00 <pounce> they had more turkeys than people!!
16:29:00 <heat> facebook backrooms
16:29:00 <zid> and now they're begging people to go back to the offices so that their billion dollar campuses weren't a total waste of money
16:29:00 <pounce> inshallah my old coworkers escape the facebook backrooms
16:29:00 <zid> that only served to make local property moguls rich
16:30:00 <heat> is facebook bad now?
16:30:00 <heat> as far as i know their benefits and pay were the best among big tech
16:30:00 <heat> and you weren't uber-harassed
16:30:00 <heat> wait no, not uber, tesla and spacex
16:31:00 <pounce> lack of harassment was nice, probably better than foss haha 🥹
16:32:00 <heat> do you work for a foss company now?
16:33:00 <heat> did you fill those ginormous canonical interview questionnaires
16:33:00 <pounce> no im in school
16:33:00 <heat> "were you a good math student in 9th grade? How good? If so, why?"
16:33:00 <pounce> https://nyan.network/notice/AgYaslmfffeiQeRvyi
16:33:00 <bslsk05> ​<pounce> @wxcafe> you have to peak in high school to work at canonicalyeah sounds about right
16:34:00 <heat> "where do you think canonical should expand for the next 10 years?"
16:34:00 <heat> i'm so happy things haven't changed
16:34:00 <zid> "Wherever the tendrils locate food sources, else the basilisk will be displeased"
16:35:00 <pounce> pspspspspsps
16:35:00 <zid> tell your cat I said pspspsps
16:35:00 <heat> ok
16:35:00 <pounce> im trying to summon puck
16:35:00 <heat> he said
16:35:00 <pounce> bc i don't know why bslsk05 didn't render the newlines
16:35:00 <zid> because
16:35:00 <zid> newlines?
16:36:00 <zid> like, what do you render them.. as?
16:36:00 <pounce> ␤
16:36:00 <zid> my cat says "I have never been fed or let out in my ENTIRE LIFE, you utter cretin"
16:36:00 <heat> netherlands
16:36:00 <heat> my cat usually says 🟢
16:36:00 <heat> because he's just green
16:36:00 <heat> fucking green
16:36:00 <zid> what is that
16:36:00 <heat> woodland tones are strong with that motherfucker
16:36:00 <zid> it appears to be some kind of circle
16:36:00 <heat> it's a green circle zid
16:36:00 <zid> oh I don't have green
16:37:00 <zid> 9 test 🟢
16:37:00 <zid> there, now it'sgreen
16:37:00 <heat> emojis are good
16:37:00 <pounce> im doing mathematics for my grad degree rn
16:37:00 <zid> sucker
16:37:00 <pounce> but i don't think i was good enough in high school for canonical
16:37:00 <heat> top 10 inventions ever
16:37:00 <gog> meow?
16:37:00 <zid> https://preview.redd.it/i2a3jdmumjt41.png?auto=webp&s=256a53768e2a716c18e64b1e19a515cd283a4f7a
16:37:00 <heat> what kind of maths pounce
16:37:00 <bslsk05> ​redirect -> www.reddit.com <no title>
16:37:00 <heat> is it one of those maths that feel like a total scam?
16:37:00 <heat> like abstract algebra
16:38:00 <puck> pounce: meow
16:38:00 <pounce> wait, let me send the icelandic title
16:38:00 <puck> pounce: newline rendering is Weird
16:39:00 <puck> bad HTML processing
16:39:00 <pounce> heat: here's my thesis topic: https://0x0.st/XikY.png
16:39:00 <heat> what does that mean? I don't read viking
16:39:00 <heat> why are you in iceland? are you gog?
16:40:00 <pounce> i am gog, you found me out
16:40:00 <pounce> and i love rust
16:40:00 <gog> yes
16:40:00 <gog> i used to work at facebook
16:40:00 <gog> you know my secret
16:40:00 <zid> GREAT PÖT
16:41:00 <gog> but yes pounce and i are irl besties now
16:41:00 <zid> a student is reading a text in class and starts off “Goethe was a great poet” whereupon the teacher interrupts him and says “oe is pronounced as ö”. The kid starts again and says ”Göte was a great pöt”
16:41:00 <zid> never not going to think of this every time I see o-dots
16:41:00 <sham1> ööö
16:42:00 <heat> pounce seriously what does that mean
16:42:00 <heat> google translate cant give me an accurate translation
16:42:00 <pounce> lmao
16:42:00 <heat> OR that's nonsense
16:42:00 <heat> "Correspondence (At) trinity in Ögda"
16:43:00 <zid> https://cdn.discordapp.com/attachments/338001333405876224/1227278629793435772/Screenshot_20240408-182609.png?ex=6627d34b&is=66155e4b&hm=2674a9dd7f27daed0fa8e818f022df8609542180950c8cb97d2ba4615f53660d&
16:43:00 <pounce> the english translation is "interactions between (co)monads in Agda"
16:43:00 <pounce> basically im doing formalized mathematics about programming languages... or programming languages that formalize mathematics. both ways work
16:44:00 <heat> sounds like computer science
16:45:00 <heat> cuz i didn't get half of it
16:45:00 <zid> sounds like we're being taken for absolute fools
16:45:00 <zid> but yea, SYMOLIC FORMALISM
16:45:00 <heat> the TAX PAYER is paying for this
16:45:00 <heat> https://i.imgur.com/CE3utRd.png we're so fucked
16:45:00 <bslsk05> ​i.imgur.com <no title>
16:46:00 <pounce> gog: do you like my translation i worked really hard on it 🥺
16:46:00 <heat> https://i.imgur.com/x6UuBJW.png i have to say my district is way above the rest of the country and this is because i fucking carry the whole country
16:46:00 <bslsk05> ​i.imgur.com <no title>
16:47:00 <pounce> mister president, we have found the OS dev
16:48:00 <heat> we found THE kernel developer
16:51:00 <gog> pounce: it's so good that i don't know what it means because your icelandic is way better than mine
16:53:00 <heat> both of your icelandics are way better than mine because i do not know iceland at all
16:53:00 <heat> icelandic
16:53:00 <heat> ice language
16:54:00 <pounce> you know that's basically what it's called in chinese
16:55:00 <pounce> 冰島語
16:55:00 <heat> how many languages do you know
16:56:00 <pounce> i know 1 and i suck at many
17:02:00 <zid> perfect
17:02:00 <zid> being bilingual just means you suck at two languages equally
17:02:00 <zid> pounce: hippo language?
17:03:00 <zid> oh, that's island not horse
17:03:00 <zid> my font is teeeny
17:06:00 <gog> i'm going home fuck this
17:06:00 <zid> Home to LA
17:06:00 <zid> *earthworm jim music*
17:24:00 <nikolapdp> zid my case arrived
17:28:00 <zid> so literally the least important part first?rip
17:29:00 <zid> You can get PC cases delivered in under 20 mins here
17:30:00 <zid> phone 202588, PREMIER PIZZA AND BEST KEBAB, ask for an extra large with jalapeno and mushroom, comes shipped inside a complementary PC case
17:32:00 <nikolapdp> why didn't i think of that
17:34:00 <zid> If you get a 4090 or something, you need multiple pizzas now though
17:34:00 <zid> https://cdn.discordapp.com/attachments/417023075348119556/1227310732501319690/hpngko9t2gdb1.webp?ex=6627f130&is=66157c30&hm=204ff12d5c297050970035af846f51f2f9823f024ef471c76b6ea586784bfcd8&
17:35:00 <nikolapdp> it's not as bad as 4090 luckily
17:36:00 <geist> gog has arrived
17:37:00 <zid> they were here before, so it's revived
17:39:00 <gog> hi
17:39:00 <nikolapdp> hello gog
17:40:00 <gog> hi
17:44:00 <zid> hate it when ur drinkign acetone like normal and then you start coughing
17:44:00 <zid> https://cdn.discordapp.com/attachments/417023075348119556/1227313140614697000/pp8pzj1ghenc1.webp?ex=6627f36f&is=66157e6f&hm=22fd7a9a22cbcafa65c72f26f691e85aaf60d648cdc460f3a8b9fcbd8a388f56&
17:46:00 <GeDaMo> Uh ... :|
17:46:00 <nikolapdp> well turn your head away, duh
17:46:00 <zid> you don't expect it
17:46:00 <zid> you just get a bad fume hit and do a huge cough
17:48:00 <gog> lmao
17:48:00 <geist> well gog had a fuck this moment
17:48:00 <gog> oh i meant "fuck this" as in work
17:48:00 <gog> it was 17:00 time to go
17:48:00 <geist> yah, but at least that meant you didn't go drive off a bridge somewhere
17:48:00 <gog> yet
17:49:00 <geist> or jump into a volcano
17:49:00 <geist> there's a bit of a caldera near grindavik you can jump into if the need arose
17:49:00 <gog> that's too far away
17:50:00 <gog> also it's not a fast death
17:50:00 <gog> no thanks
17:50:00 <gog> well, it's fast, but not immediate
17:50:00 <geist> these are important details taught in icelandic schools
17:51:00 <geist> how to heroically jump into a volcano
17:51:00 <geist> proper technique
17:52:00 <gog> yes
17:56:00 <heat>  hmm
17:56:00 <heat> for how many seconds are you alive before the lava kills you
17:56:00 <heat> i would assume it's almost immediate, maybe 1 second
17:56:00 <heat> basically enough for it to chew through your brain
18:06:00 <vin> Hi, does anyone know how next-page hardware prefetchers on Intel work? I might have asked this question earlier here
18:07:00 <heat> they prefetch the next page
18:07:00 <heat> follow me for more cpu tips and tricks
18:10:00 <vin> while that is funny heat, I am looking for specifics. How is it triggered? How aggressive is the prefetching? etc
18:10:00 <vin> Does all processors have it? How do I check if mine supports TLB prefill
18:12:00 <vin> I couldn't find anything in Intel's Sofware Developement Manual
18:19:00 <zid> It will vary per microarch
18:19:00 <zid> and isn't something intel will document outside of the *optimization* manual, if at all
18:19:00 <zid> you'll need to try make a clever benchmark that measures it
18:20:00 <zid> (the reason you won't find info is because it's not particularly useful info, btw)
18:24:00 <vin> I scoured through the manual and didn't find anything of relevance other than a intel forum discussion https://community.intel.com/t5/Software-Tuning-Performance/Is-next-page-prefetcher-available-on-Haswell-microarchitecture/td-p/1100229
18:24:00 <bslsk05> ​community.intel.com: Is next-page prefetcher available on Haswell microarchitecture? - Intel Community
18:24:00 <vin> Regarding its usefullnes, I think it depends on the user.
18:25:00 <rsjw> maybe there's some info in patents
18:46:00 <vin> rsjw: good idea. A quick search seem to only result in cache line prefetchers though https://patents.google.com/?q=(next+%22page%22+prefetcher+intel)&oq=next+%22page%22+prefetcher+intel
18:46:00 <bslsk05> ​patents.google.com: Google Patents
18:57:00 <vin> TIL L1 prefetchers can cross page boundaries and can trigger page walks on TLB miss!!
20:04:00 <heat16> guess im 16-bit today
20:05:00 <zid> I thought that was your age
20:05:00 <heat16> im 13
20:05:00 <heat16> yall wanna play
20:05:00 <heat16> uh
20:05:00 <heat16> fortnite
20:07:00 <Mondenkind> psh
20:07:00 <Mondenkind> fortnite is for 7-year-olds
20:07:00 <Mondenkind> this channel is for _mature_ people
20:07:00 <zid> sorry too old
20:07:00 <heat16> define mature
20:08:00 <Mondenkind> if you insist
20:08:00 <heat> this client is so fucked sometimes
20:08:00 * Mondenkind #define mature
20:08:00 <heat> like porn-site category mature?
20:09:00 <heat> 7 year olds can be mature and based
20:10:00 <mjg> cats are based and red pilled
20:10:00 <nikolapdp> heat16: hello fellow 16 bit
20:11:00 <heat> heat16 is no longer with us
20:11:00 <nikolapdp> rip
20:20:00 <kof673> what do people think about various libm?
20:22:00 <Mondenkind> core-math best libm
20:27:00 <heat> i mean, most libm's inherit from sun's
20:27:00 <heat> 1) SUN SUPREMACY
20:28:00 <heat> 2) shows how hard it is to write a good, fast libm
20:29:00 <Mondenkind> yeah
20:30:00 <gorgonical> restarting is for punks. never restart kernels
20:31:00 <zid> correct
20:31:00 <Mondenkind> 13:30:58 up 20 days, 18:46, 2 users, load average: 0.19, 0.14, 0.10
20:31:00 <zid> but, next time I do end up restarting
20:31:00 <Mondenkind> there was a power outage :(
20:31:00 <zid> make sure to remind me to disable spread spectrum
20:31:00 <gorgonical> 16:33:45 up 222 days, 19:02, 1 user, load average: 4.23, 5.16, 4.20
20:31:00 <zid> it's on by default for some reason
20:31:00 <Mondenkind> hey zid
20:31:00 <Mondenkind> remember to disable spread spectrum
20:32:00 <zid> 3wks 2days 23hrs 20mins 1sec
20:32:00 <zid> I forget what that was about, I think too much animal crossing caused me one of my mystery MCEs
20:32:00 <gorgonical> I had to figure out how to nuke the x11/dbus-enabled userland and revive it in order for this song and dance to work, too
20:32:00 <gorgonical> I used to just restart the whole thing whenever I fucked something up tinkering with the userland
20:34:00 <sham1> 23:34:02 up 2 days, 3:19, 1 user, load average: 0.62, 1.33, 2.59
20:34:00 <sham1> I really don't care about uptime tbh, also makes updates more reliable when you reboot afterwards
20:34:00 <Mondenkind> dbus😱😱❌❌🤮
20:43:00 <heat> 'uptime' is not recognized as an internal or external command,
20:43:00 <heat> operable program or batch file.
20:44:00 <sham1> > windows
20:44:00 <heat> sham1: noooooo you don't get it, you need to run your system like a 0 downtime server because
20:44:00 <heat> uh
20:44:00 <heat> yes
20:44:00 <sham1> Also, at least use PowerShell
20:44:00 <nikolapdp> i agree heat
20:45:00 <nikolapdp> we must have 0 downtime, that's why pdp is the best
20:45:00 <heat> a real pdp would've set your house on fire
20:46:00 <heat> you don't want your nice soviet block to get burnt down by a capitalist math machine
20:46:00 <nikolapdp> nah the pdp is reliable
20:46:00 <nikolapdp> the soviet math machine would've burnt down the block
20:46:00 <heat> reliable warmer yeah
20:47:00 <heat> ask geist
20:47:00 <heat> even the VAX is warm and cozy
20:47:00 <nikolapdp> well depends on what pdp he has
20:47:00 <Ermine> Asus router firmware, despite being fucked as hell, shows pretty decent uptimes
20:51:00 <sham1> Friends don't let friends use consume networking hardware
20:51:00 <nikolapdp> consume?
20:51:00 <sham1> I accidentally a letter
20:52:00 <sham1> consume hardware
20:53:00 * Ermine consumes hardware
20:53:00 <sham1> CONSUMER HARDWARE
20:53:00 <sham1> Aaaa
20:53:00 <sham1> Stupid consumer-tier keyboard
20:53:00 <heat> consume-tier?
20:54:00 <heat> i use *checks notes* whatever my ISP gives me
20:54:00 <nikolapdp> you also a word
20:54:00 <heat> this one being particularly cursed
20:54:00 <heat> this router loses track of ipv6 flow info
20:55:00 <heat> which fucks up when the load balancing takes the flow info into account -> TCP RST
20:55:00 <sham1> Wait, your ISP gives you IPv6?
20:55:00 <sham1> I'm jealous
20:56:00 <heat> yep
20:56:00 <Ermine> my mobile provider silently started giving ipv6, and that broke my wireguard tunnel
20:58:00 <gorgonical> also isn't the point of the soviet concrete block that it's pretty much impervious to puny fire?
20:59:00 <gorgonical> I mean, you might lose your stuff, but the apartment will be fine
20:59:00 <nikolapdp> i imagine it is
20:59:00 <heat> i don't know, what do you think i am, a soviet architecture exprt
20:59:00 <heat> expert
20:59:00 <sham1> Well the point of a commieblock is to be cheap, which is why they're also found in non-commie countries
21:03:00 <heat> what non-commie country has commieblocks?
21:03:00 <zid> if you ask serbia, serbia
21:03:00 <sham1> For example the former West Germany, Finland also has them
21:04:00 <zid> former *west* germany?
21:04:00 <zid> You mean.. germany?
21:04:00 <sham1> Yes, because there's no West Germany anymore, there's just Germany
21:04:00 <zid> "Former louisianna purchase"
21:05:00 <heat> you mean east germany
21:05:00 <zid> yea why west and not east is the question
21:05:00 <zid> east is understandable
21:05:00 <zid> btw if it's in the west
21:05:00 <zid> it isn't a commie block
21:05:00 <heat> which, i don't know if you're a history buff, but east germany was communist
21:05:00 <zid> it's a BRUTALIST ARCHETECTURAL PIECE
21:05:00 <sham1> Like yeah, technically West Germany just absorbed the DDR and just became whole again, but I mean it in the sense that there are those kinds of block houses even on the western side of what was once the "Inner German border"
21:06:00 <heat> what you're talking about might be considered "apartment blocks"
21:07:00 <gorgonical> is this like how immigrants from western countries are called expats
21:07:00 <sham1> Cheap apartment buildings made out of concrete and prefab stuff
21:07:00 <geist> nikolapdp, heat: PDP 11/53
21:07:00 <gorgonical> by that logic most apartments in america are commieblocks
21:07:00 <geist> so it's fairly late, it's ASIC based. pulls about 80W on the wall, which I was quite surprised
21:08:00 <sham1> That whole thing about the whole "expat" thing annoys me. No, the reason why they're called expats is not because they're white. They're called expats because there's an expectation that they go back to their home countries unlike immigrants who, well, immigrate
21:08:00 <gorgonical> You think so? An interesting view
21:08:00 <heat> commieblocks are a particular architectural thing from the soviet union (and later other communist countries)
21:08:00 <heat> they're not just apartment blocks
21:08:00 <zid> gorgonical: no way, americans don't know what concrete is
21:09:00 <zid> They build everything out of matchsticks
21:09:00 <gorgonical> Honestly I haven't heard that idea that expats are just "trying it out." I feel like I would not expect an american in Germany to describe themselves as "immigrants"
21:09:00 <gorgonical> zid: the underlying spirit of building "shelter" out of the cheapest, shittiest materials possible is the same
21:09:00 <zid> The capitalists heard about the three little pigs and said "What a great idea, we can evict the poors easily and construction costs will be cheaper"
21:09:00 <sham1> Maybe they wouldn't self-describe as immigrants, but they would be if they're there to stay
21:09:00 <zid> expat usually just depends on whether they intend to integrate
21:09:00 <sham1> It's literally what "immigrant" means
21:10:00 <zid> or live in an enclave
21:10:00 <kof673> ^^^ to sham my understanding: emigrate ~= physically leave, immigrate ~= physically enter, expatriate ~= leave on paper
21:10:00 <heat> i understand what you're saying but the poisonous language used around "immigration" would never be used on an american
21:10:00 <heat> if i go to your country to work, i'm an immigrant
21:10:00 <heat> if you go to my country to work, you're an expat
21:10:00 <zid> You're an immigrant because you're porutgal
21:10:00 <heat> or "just working"
21:10:00 <heat> exactly
21:10:00 <geist> zid: i know you're kidding, but a lot of reason a lot of US doesn't do bricks or concrete is because of earthquakes. though it's clearly regional
21:11:00 <geist> when you travel frmo the west coast to east coast you start seeing a lot more brick or rock or concrete
21:11:00 <zid> lots of earthquake places do concrete, it's good at it, but expensiver
21:11:00 <gorgonical> my point is made exactly by heat
21:11:00 <zid> heat is SWARTHY so he's an immigrant
21:11:00 <zid> I'm white so I'm an expat
21:12:00 <sham1> I honestly don't care about how a bunch of racists in a $COUNTRY would use the term, they mean exactly what they mean and if they don't like it, so be it
21:12:00 <gorgonical> which is silly because if I have the opportunity to move to Europe with a good job I sure as fuck am gonna stay
21:12:00 <gorgonical> and I'll happily be an immigrant
21:12:00 <zid> no you get to be a foreign worker, gorg, sorry
21:12:00 <zid> assuming you're white
21:12:00 <gorgonical> extremely
21:12:00 <zid> yep, no immigrant status for you
21:12:00 <zid> just overseas seasonal worker
21:13:00 <gog> hi
21:13:00 <heat> zid: actually i'm not swarthy, i'm pretty white
21:13:00 <sham1> Coming in and gentrifying the country smh
21:13:00 <gorgonical> "my seasonal contract expires in 160 seasons"
21:13:00 <gog> me too
21:13:00 <zid> heat: compared to an irish person or comparedto average spaniard, though
21:13:00 <heat> both
21:13:00 <heat> i am objectively clear skinned
21:13:00 <sham1> Of course wrt heat it's a moot point since he has Schengen
21:13:00 <kazinsal> translucent crew checking in
21:14:00 <zid> that and migratory birds such as portugoose don't need passports anyway
21:14:00 <heat> i was confused as to what obscure syndrome you were saying i have
21:14:00 <heat> schengen syndrome
21:14:00 <sham1> The rare disease of open borders
21:14:00 <heat> very serious stuff.
21:14:00 <zid> I have helvetica syndrome :(
21:14:00 <heat> and no, this generally matters
21:14:00 <sham1> zid: ...you're well typeset?
21:14:00 <gorgonical> No he likes to eat melted cheese on potatoes
21:15:00 <heat> now, to me exactly it might not matter because specialized tech guy
21:15:00 <geist> TIL a new word re programming: monomorphization
21:15:00 <heat> but if i were to go to france i would be a DIRTY IMMIGRANT
21:15:00 <gorgonical> sounds like it's related to homoiconicity
21:15:00 <zid> https://www.youtube.com/watch?v=-Y-yKmzP-4U
21:15:00 <bslsk05> ​'helvetica scenario' by imeaktsu7 (00:00:51)
21:15:00 <heat> ok guys now lets try english
21:15:00 <heat> thanks
21:16:00 <sham1> monomorphisation, to make into one form
21:16:00 <geist> it describes the thing i always take too long to describe: the explosion of one off specialized fucntions you get with templates and other things like that
21:16:00 <gorgonical> oh it's like loop unrolling but for instantiations of a template
21:17:00 <geist> yah i was talking internally on chat about how rust code size tends to explode with tons of specialized instances, and someone mentioned monomorphization
21:17:00 <geist> and now i have a word to describe it
21:17:00 <sham1> Well except that you couldn't use a template or whatever without fully instantiating it
21:17:00 <heat> zid: have you seen switzerland's national team shirts?
21:17:00 <heat> they used helvetica
21:17:00 <heat> it's great
21:17:00 <gorgonical> Surely c++ must work similarly under the hood with zero-cost abstractions for stl containers and such?
21:17:00 <heat> ZERO COST ABSTRACTIONS
21:17:00 <sham1> heat: they should have used Arial for the irony
21:17:00 <heat> there are no such abstractions unfortunately
21:17:00 <gorgonical> oops I said a bad word apparently
21:17:00 <geist> the cost a lot of time with templates is lots of stamped out, specialized copies of stuff
21:17:00 <heat> yeah
21:18:00 <geist> rust has a similar thing as soon as you write code that takes an argument for something that acts as a X
21:18:00 <gorgonical> anyway it's actually probably not comparable. compile-time generics I think never have dynamic dispatch, right?
21:18:00 <gorgonical> it's like, the whole point
21:18:00 <heat> yep
21:18:00 <geist> yep. the cost is lots of code bloat
21:18:00 <heat> and compile time
21:18:00 <gorgonical> so monomorphization is loop unrolling polymorphically-typed functions into the equivalent compiler templated ones
21:18:00 <geist> which is why things like that are good for lots of things and not good for other stuff
21:19:00 <heat> this is why templates need to be contained to be used effectively
21:20:00 <heat> like std::list<type> doesn't need to know the type all the way
21:20:00 <gorgonical> I fundamentally agree with rust's position. type systems are useful for us and arguing that it makes the compiler complicated is essentially the language designers say "but I don't wanna"
21:20:00 <heat> you can just know the node's size and then do malloc
21:20:00 <heat73> seriously whats with this client
21:20:00 <heat73> anyway
21:21:00 <zid> The only time I wanted templates in C is because I wanted float and int to work with the same linked list impl
21:21:00 <gorgonical> heat73: surely then std::list is like an embedded linked-list thing, right?
21:21:00 <zid> I basically just wanted an 'agnostic u32'
21:21:00 <zid> not a type
21:21:00 <zid> (I knew they were the same size on the platform)
21:21:00 <heat73> gorgonical: std::list is an extrusive data structure
21:22:00 <gorgonical> it's like struct node { struct node next; void* data; } right
21:22:00 <heat73> yes
21:22:00 <gorgonical> I haven't heard that term in so long I forgot what it meant
21:22:00 <heat19> OH FUCK OFF
21:23:00 <gorgonical> linked lists in C are so awful to use. Iterating and manipulating is pure pain
21:23:00 * gog extrudes
21:23:00 <zid> There's a language that has linked lists but where you don't have to look after them?
21:23:00 <heat19> my point was: you could do node allocation, etc on std::list's class. but then everything is implicitly templated and as such std::list<int>::alloc_node() and std::list<long>::alloc_node() will both be instantiated separately (unless inlined)
21:23:00 * Mondenkind intrudes
21:24:00 <gorgonical> heat19: for functional correctness it barely matters but for type correctness you have to have separate copies
21:24:00 <heat19> if you do something like: template <typename Type> class list : public list_base { /* in the growing code */ (auto node = list_base::alloc_node(sizeof(Type), alignof(Type);
21:24:00 <heat19> it Just Works
21:24:00 <gorgonical> but that requires reflection
21:24:00 <heat19> without separate instantiation of the template
21:25:00 <heat19> no it does not
21:25:00 <gorgonical> or dynamic dispatch of some sort
21:25:00 <gorgonical> or it has to coalesce definitions
21:25:00 <heat19> the templated bits need to know what the type is (and they do), list_base::alloc_node is a generic function call with a size and an alignment
21:25:00 <heat19> basically you contain the templated bits to whatever really needs them
21:26:00 <heat19> this is how you stop code bloat from blowing up
21:26:00 <gorgonical> oh I think I see your point. You're not suggesting there's some magic trick here
21:26:00 <gorgonical> Just following aggresively the principle of least concern
21:27:00 <zid> To whom it may concern: templates suck
21:27:00 <zid> like that
21:27:00 <heat19> like, imagine if template <typename Type> Type *operator new() called into malloc<Type>() etc etc
21:27:00 <heat19> you'd end up with separate copies of malloc for each type
21:27:00 <gorgonical> the cost will be though that you have to make more jumps, presumably
21:28:00 <heat19> not necessarily a jump, could be inlined
21:28:00 <nikolapdp> geist, how much power does your pdp11/53 use
21:28:00 <gorgonical> true but the compiler could be made smart enough to push template information inward automatically, too
21:29:00 <heat19> the cost will be that e.g the compiler could flatten your node_size = sizeof(type) + sizeof(base_node) at compile time in the templated bit, but instead if it can't align it it'll need to do it with ARGUMENTS and REGISTERS
21:29:00 <heat19> s/align it/inline it/
21:30:00 <heat19> there's a slight runtime cost which may or may not be worth it, depending on your architecture and code size and whether all the templatey bits are screwing up your icache etc
21:31:00 <heat19> if you take 500KB of templatey code into a 20KB generic version you're probably getting performance just from the reduced icache pressure
21:32:00 <geist> nikolapdp: about 80W
21:32:00 <gorgonical> From a pl perspective I think you're making the argument the "correct" way in that what is a templated type other than you saying to the compiler "all the code inside here applies specifically to this type"
21:32:00 <nikolapdp> see heat, perfectly acceptable
21:32:00 <nikolapdp> thanks giest
21:32:00 <nikolapdp> geist
21:32:00 <geist> like i said it's a fairly late model PDP11, from the last generation (pdp11/*3s)
21:33:00 <heat19> uses like 8x more power than my laptop
21:33:00 <geist> 23/53/73/83
21:33:00 <geist> so it's basically a full ASIC implementation
21:33:00 <geist> but still in the case where like 1MB is a whole 8x11 board
21:33:00 <heat19> your VAX definitely makes your room warmer right?
21:33:00 <gorgonical> As in, how else would templating work? Unless you have a really sophisticated type model the compiler can't know that much about the memory model. Probably ML/haskells can do this auto-optimization
21:33:00 <geist> that's more like 300W yeah
21:35:00 <heat19> gorgonical: yeah kinda
21:35:00 <Ermine> In Java, generics are used for type checking, and then get replaced with Object
21:36:00 <heat19> like generally a lot of templated types are just carelessly templated (because muh type safety, etc) which leads to template code bloat explosion
21:36:00 <Ermine> There are template fans though
21:37:00 <heat19> i have a template <typename Type> class memory_pool that does not need to be templated *at all* except for type safety on the alloc() and free() functions. because of it all being templated all of the allocator is duplicated on instantiation
21:37:00 <Ermine> Does it make onyx... BLOATED?
21:38:00 <heat19> you could argue it is BLOATED yes
21:38:00 <gorgonical> but strong. like kyriakos grizzly
21:38:00 * Ermine calls musl police
21:39:00 <heat19> dalias is coming to portugal just to kneecap me
21:41:00 <geist> heat19: i suppose this is exactly where something like LTO could perhaps collapse the templated stuff back togetgher again
21:42:00 <geist> i dunno what compiler/linkers do that, though i had hard that MSVC's LTCG was pretty good at deduping things
21:42:00 <heat19> yeah but then the real question might be whether you want that or not
21:43:00 <Ermine> Oh wow, didn't expect lto to be able to do that
21:43:00 <pounce> heat19: rewrite it in C
21:43:00 <nikolapdp> yes rewrite it in c
21:43:00 <heat19> if you want a codepath so clean so inlined without any needless arguments etc, you might be against dedupping templates there
21:43:00 <heat19> pounce: in rust
21:43:00 <pounce> crust
21:44:00 <pounce> im sad my rust os went nowhere :(
21:44:00 <nikolapdp> no rust
21:44:00 <pounce> it was before it was cool
21:44:00 <pounce> in 2016
21:44:00 <nikolapdp> it was never cool
21:45:00 <Ermine> You can do kind-of-templating in C with macros, but will lto handle that?
21:47:00 <Ermine> nikolapdp: use cola
21:47:00 <nikolapdp> why wouldn't it?
21:48:00 <heat19> LTO has no semantic understanding of two functions that look similar but work with different types
21:48:00 <heat19> it is A LOT harder than having C++ code tell me "oh this function here can work with ints and longs and it's only different for these variables, kthxbye"
21:50:00 <heat19> best case you could probably have some sort of heuristic on LTO's side but it'll be worse than having semantic understanding of what you're trying to do
21:52:00 <zid> dedup the machine code via crc32, ez
21:58:00 <Mondenkind> oh gooddd that reminds me of this one paper from microsoft
21:58:00 <Mondenkind> about a thing they implemented in msvc (never shipped, thankfully)
21:59:00 <Mondenkind> where they used djb2 as a hash expecting strong collision resistance
21:59:00 <Mondenkind> as in the compilation would be completely broken if there was ever a collision
21:59:00 <Mondenkind> in fucking djb2
22:03:00 <mjg> OH
22:03:00 <mjg> language
22:04:00 <geist> heat19: well i was thinking that post translation if it comes up with basically the same bytecode it can detect that they're identical and collapse
22:04:00 <geist> so if you end up with a function that operates on ints and longs and ends up with the same code
22:05:00 <geist> or... say a intrusive list that works on the same offset from the base of the object
22:14:00 <zid> yea that's basically exactly what I wanted a template for in my C
22:15:00 <zid> I had a {float v; struct node *next;} and {int v; struct node *next;} and all the list code would have been machinecode identical
22:15:00 <zid> but I had to make two of them because of types
22:15:00 <zid> and just pray that the compiler could somehow compile them, eventually I just typecast the shit out of it to make sure
22:15:00 <zid> somehow combine*
23:36:00 <mcrod> it’s still memory training
23:37:00 * mcrod fetal position
23:45:00 <geist> better than a fecal position