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=7&d=6

Saturday, 6 July 2024

05:18:00 <Matt|home> damn, what was that article about that guy who wrote his own "abridged" version of the c standard or something?
05:18:00 <Matt|home> and it was god awful?
05:19:00 <Matt|home> iu really think it was an osdev wiki page but i really can't find it with any of my keyword searches
05:19:00 <mjg> dude what :D
05:21:00 <Matt|home> man.. it was a link to a comedy article criticisng a programming book
05:21:00 <Matt|home> but it was hella funny
05:22:00 <Mondenkind> what?
05:22:00 <Mondenkind> i wanna see this
05:23:00 <Matt|home> if i can find the article :\
05:23:00 <Matt|home> maybe you can hel Mondenkindp, im really high right now and im not sure how to go about this but basically:
05:23:00 <Mondenkind> why does everybody misspell my name lmao
05:24:00 <Matt|home> some guy with a dunning kruger type personality wrote an abridged version of the C standard, it was titled something like people who don't have time to read the whole standard
05:24:00 <Matt|home> and it was being reviewed rather scathingly by some technical website article
05:24:00 <Matt|home> it's your nick dude, i just used tab :p
05:24:00 <Mondenkind> my nick isn't Mondenkindp
05:25:00 <mjg> 07:24 < Mondenkindp> my nick isn't Mondenkind
05:25:00 <Matt|home> how'd you do that..
05:25:00 * Mondenkind trouts mjg
05:26:00 <mjg> still, what fucking tech website would do a tech correction
05:26:00 <Matt|home> yeah i can't find it, forget it
05:26:00 <mjg> if anything if a tech website would post anything on the subject it would repeat the bs
05:26:00 <mjg> remember the article about "it is not always faster to do things in memory
05:26:00 <mjg> some college students wrote a regrettable paper about using files to temp store results instead of ram and got things "faster"
05:27:00 <mjg> except it turns out all the content remained cached
05:27:00 <mjg> :d
10:08:00 <Ermine> now my wireplumber crashes very frequently...
15:21:00 * geist yawns
15:22:00 <nikolapdp> o
15:22:00 <nikolapdp> oi
15:22:00 <Ermine> oui
15:23:00 <GeDaMo> Needs more vowels :P
15:24:00 <nikolapdp> aoui
15:44:00 <geist> got up early for an island-wide gigantic garage sale like thing that happens every year
15:44:00 <geist> maybe will score some good shit,dunno
15:44:00 <nikolapdp> maybe you'll find another pdp :P
15:46:00 <heat> Ermine, welcome to hell
15:46:00 <nikolapdp> hello to you too heat
15:46:00 <nikolapdp> i guess
15:48:00 <heat> hi nikolapdp
15:48:00 <heat> it was re: <Ermine> now my wireplumber crashes very frequently...
15:48:00 <nikolapdp> ah right
15:48:00 <nikolapdp> fair
15:51:00 <Ermine> heat: i'd say "Doom music kicks in", but it didn't, there's no sound
15:52:00 <heat> hahaha
15:52:00 <heat> systemctl restart --user pipewire
15:52:00 <Ermine> yeah, that's what I do every now and then
15:53:00 <nikolar> If pipewire is so unstable, why not use pulsw
15:53:00 <nikolar> Until it gets better at least
15:55:00 <heat> pulsewire lol, pulsewire is a downgrade in everything
15:55:00 <heat> including stability
15:55:00 <heat> sorry, pulseaudio
15:56:00 <heat> pulsewire would be cursed
15:57:00 <nikolar> I meant just pulse
15:57:00 <nikolar> Not some cursed combo
16:00:00 <heat> yeah haha imagine xwayland
16:00:00 <heat> wait
16:07:00 <gog> GPTOS
16:08:00 <gog> pulsewire is canon also
16:08:00 <gog> pipewire has a pulseaudio emulation module
16:08:00 * gog fingerguns
16:08:00 <heat> i know, all new software needs to pretend it's old software
16:16:00 <Ermine> if that software could pretend it's working
16:17:00 <nikolar> heat: xwayland actually works, unlike pulsewire :P
16:18:00 <Ermine> but it sucks
16:18:00 <nikolar> What does
16:18:00 <Ermine> xwayland
16:18:00 <heat> https://imgflip.com/i/8w3yl7
16:18:00 <bslsk05> ​imgflip.com: Always Has Been Meme - Imgflip
16:19:00 <heat> nikolar, pulsewire works properly
16:19:00 <heat> xwayland works as well as the wayland server behind it, naturally
16:19:00 <Ermine> heat: I lol'd
16:20:00 <Ermine> zoom is cringey in xwayland
16:20:00 <Ermine> not to mention lack of fractional scaling
17:04:00 <dostoyevsky2> I wonder what the significance is that netbsd supports Xen ... they write nothing about qemu support... even though they might have a virtio driver?
17:18:00 <nikolar> Well if you have virtio then it shouldn't matter, no?
17:21:00 <heat> i mean, it's pretty much automatic to have qemu support, if you already run on commodity PCs
17:21:00 <heat> virtio devices are probably most of the few devices that aren't real in any way shape or form
17:46:00 <GeDaMo> https://youtu.be/XT6t2L3SVM8
17:46:00 <bslsk05> ​'I Bought the HEAVIEST Computer on eBay: The PDP-11/34!' by Dave's Garage (00:27:52)
17:57:00 <mjg> note the guy is a massive twat, see https://www.atg.wa.gov/news/news-releases/attorney-general-s-office-sues-settles-washington-based-softwareonlinecom
17:57:00 <bslsk05> ​www.atg.wa.gov: Attorney General’s Office Sues, Settles with Washington-based SoftwareOnline.com | Washington State
17:57:00 <mjg> kind of ruins watching any of his stuff, even if one is trying to ignore the geezery
17:58:00 <GeDaMo> :/
18:49:00 <nikolar> Ah so typical scam behavior
19:27:00 <carrar> Oh I didn't know that about David Plummer, that's interesting & disappointing at the same time
19:31:00 <geist> my general annoyance with him is he's kinda clueless sometimes
19:32:00 <nikolar> Yeah there were several times I thought that too
19:32:00 <nikolar> And I wasn't sure if he was dumbing it down on purpose or not
19:34:00 <nortti> clueless how?
19:34:00 <nikolar> Just the way he's describing things
19:34:00 <nikolar> Also another annoying thing is referring to c++ as c
19:35:00 <geist> yeah i mean obviously not everyone is born with all knowledge, but he sort of comes across as if he knows it
19:35:00 <geist> OTOH i haven't watched the pdp vid. gonna do that in a bit
19:35:00 <geist> he did managed to do a good multi hour interview with dave cutler though, so i thank him for that
19:35:00 <geist> he's in the local seattle area, actually has been asking folks on the seattle retro computer club for help on the PDP, so he's at least not being a twat about it
19:36:00 <geist> and i can't fault someone for wanting to e interested in something, and he has the money to spend so good for him
19:38:00 <geist> iirc i think he wrote a whole book about how has has aspergers and whatnot which kinda checks out based on how tone deaf he is sometimes on his channel
19:39:00 <geist> so i think he sort of comes across as 'i'm an interesting person here is a bunch of information i know'
19:41:00 <heat> he can't drop the "i wrote the task manager" gist
19:41:00 <heat> it's really annoying
19:41:00 <heat> the guy who wrote top isn't talking about it
19:41:00 <geist> oh heh yeah that too
19:42:00 <netbsduser> heat: i saw claims made that real-hardware vitrio net nics were considered
19:43:00 <geist> i thik the idea there is for the most part good net nics are just as good, if not better than virtio
19:43:00 <geist> at least by the time yo get to 1gb nics they all had similar ring structures
19:44:00 <netbsduser> geist: if you can but find the documentation and deal with their diversity
19:44:00 <geist> e1000 for example is easily as powerful, though its ring structure is simpler in a specific way: each descriptor is a fixed size
19:44:00 <geist> which actually makes a lot of sense, you can up front compute how many descriptors to use for any given packet
19:44:00 <netbsduser> i have a generic e1000 driver but i haven't been able to sus out where the full details are for a lot of the e1000s that have the fun features like multiqueue
19:44:00 <geist> well, on the RX side, the TX side i think you can chain together dissimilar sizes
19:45:00 <geist> netbsduser: oh i just dowloaded the manual and started with taht
19:45:00 <geist> intel has fantastic docs
19:45:00 <netbsduser> i have at least been able to devise zero-copy RX for e1000, that's possible generically
19:45:00 <heat> yeah you can chain them together
19:45:00 <netbsduser> TX even
19:45:00 <netbsduser> not RX
19:45:00 <heat> i do it on my driver with great success, for sg io
19:46:00 <geist> right, which makes sense once you get used to it, very straightforward for hardware to deal with
19:46:00 <heat> which my packetbufs do natively
19:46:00 <geist> anyway what i dunno is how 10g and 40g nics work at that level, is there the Next Level after e1000?
19:46:00 <geist> or is that basically about as good as it gets
19:47:00 <netbsduser> all i know is that on gnu/linux, freebsd, netbsd, there are newer more fangled drivers for the newer more fangled e1000 variants
19:47:00 <heat> yo geist you're an avid top user aren't you
19:47:00 <geist> heat: i love me some top
19:47:00 <geist> sometimes even htop
19:47:00 <heat> how does scrolling work in top
19:47:00 <heat> down arrows update the thing
19:47:00 <geist> top does scrolling?
19:47:00 <heat> I WOULD HOPE SO
19:47:00 <geist> oh i assumed it was just refresh
19:47:00 <geist> spacebar refreshes too
19:48:00 <heat> toybox top seems to scroll
19:48:00 <nikolar> Yeah I'm not sure what arrow keys do in top
19:48:00 <nikolar> It's odd
19:48:00 <heat> yeah busybox top seems to scroll too
19:48:00 <nikolar> Space definitely refreshes
19:48:00 <geist> htop scrolls
19:48:00 <geist> i'd assume it would probably freeze the last snapshot and then scroll through it
19:48:00 <geist> since it updating out from underneath you would be messed up
19:48:00 <heat> see, if the top guy bragged about writing top
19:49:00 <heat> i'd shoot the guy
19:49:00 <heat> it is completely incomprehensible for common human beings
19:49:00 <heat> procps top has a help screen at least
19:49:00 <heat> with 500 different keybinds for weird stuff
19:50:00 <nikolar> It's comprehensible heat don't be so dramatic
19:50:00 <heat> <nikolar> Yeah I'm not sure what arrow keys do in top
19:50:00 <nikolar> That doesn't make the tool incomprehensible
19:50:00 <nikolar> I can see what's going on just fine
19:52:00 <heat> could use some, idk, keybind labels
19:52:00 <heat> like htop
19:52:00 <nortti> looking at the top(1) man page I get on my system"For additional information see topic 5c. SCROLLING a Window."
19:53:00 <heat> procps-ng's man page is 1600 lines
19:53:00 <heat> WITH A TABLE OF CONTENTS
19:55:00 <nortti> having read topic 5c. SROLLING a Window, I'm still not entirely sure how scrolling works in top(1)
19:56:00 <nortti> it does appear that you can just use arrow keys, tho
19:58:00 <heat> busybox top seems to be a lot more usable
19:58:00 <heat> noted
20:02:00 <kof673> dostoyevsky, i believe you used to be able to use netbsd as xen dom0, and this goes back to before cpu virtualization features were required :D
20:03:00 <kof673> surely that is gone now but i looked at it once :D
20:03:00 <Ermine> htop > top
20:04:00 <heat> btop is really nifty
20:05:00 <geist> my main complaint about htop is it has much less information available re: memory
20:06:00 <geist> it doesn't really have the specific details you can bring up in top, and generally displayed on the default screen
20:06:00 <geist> it's good for cpu stuff and looks pretty though
20:06:00 <heat> yeah
20:06:00 <heat> fwiw most linux tooling is completely superficial when it comes to memory details
20:06:00 <heat> vmstat is like, completely useless
20:07:00 <nikolar> There are some additional metrics you can show in htoo
20:07:00 <nikolar> htoo
20:07:00 <nikolar> htop
20:07:00 <geist> yeah but not the ones i want
20:07:00 <geist> for regular top i usually add delta minor and major PFs and SWAP size
20:08:00 <Ermine> "improper memory accounting" (c)
20:09:00 <heat> thankfully because PROCFS is so good and great and works with TEXT you can probably make your own awk script in 3 minutes
20:09:00 <netbsduser> kof673: old message i'm replying to but overcommit or not, using malloc() to guess how much RAM there is, is no use in the presence of virtual memory
20:09:00 <heat> not me, i don't know awk
20:10:00 <netbsduser> kernels written with a robust engineering ethos (such as solaris) strictly account virtual memory, so you will be able to guess at how big the swapfiles + ram are by allocating lots of memory and seeing where it starts to fail
20:11:00 <Ermine> btop looks cool, but too much bells and whistles to my taste
20:11:00 <kof673> yep, it was just a silly thing to see what various things would do
20:11:00 <heat> netbsduser, so solaris doesn't support ASAN?
20:11:00 <heat> that's a feature?
20:11:00 <kof673> e.g. 16-bit seems to give me like 40k (not sure if separate segment, or depends on code size)
20:11:00 <kof673> chameleon simulator apparently has like 20M lol
20:11:00 <kof673> that made me happy lol
20:11:00 <netbsduser> heat: it has to be opted-in
20:12:00 <kof673> that's a viable target lol
20:12:00 <netbsduser> you can give a special flag to mmap to make it not charge the virtual memory quota
20:12:00 <Ermine> CONFIG_ASAN=y
20:12:00 <netbsduser> and in that case i assume it will just unceremoniously terminate your process if you try to make a fault that would over commit
20:13:00 <heat> thankfully linux has that and a sysctl with 3 different overcommit modes
20:13:00 <Matt|home> o\
20:14:00 <netbsduser> they must have added it quite recently
20:14:00 <heat> nope
20:14:00 <netbsduser> is it thorough then?
20:15:00 <heat> * Strict overcommit modes added 2002 Feb 26 by Alan Cox.
20:15:00 <netbsduser> it's one thing to make a best effort at accounting but another to have the kernel soldier on and promise never to terminate a process
20:16:00 <netbsduser> i am not saying that the linux kernel is a fake scotsman
20:16:00 <Ermine> but no, overcommit is here because they can't count pages! (c) dalias
20:17:00 <heat> it seems to approximate
20:17:00 <heat> with pcpu counters
20:17:00 <netbsduser> rather that it's one thing to throw in a quick attempt in strict accounting because you're jealous of solaris, while your kernel is still at risk of terminating user processes when available virtual memory is low, but another to guarantee or near-guarantee against that
20:21:00 <heat> sharing a system-global atomic variable and incrementing/decrementing with a cmpxchg is a great way to *reliably* kill your performance
20:22:00 <netbsduser> i would replicate it
20:23:00 <netbsduser> since ideally you are not usually running the commit to naer exhaustion
20:24:00 <netbsduser> so you could give each core 16 pages' worth and refill that from global commit when it runs out, and replenish global commit when you've released a lot on one core
20:24:00 <heat> yes, that's what linux does, but now you can't guarantee never OOM killing a process
20:24:00 <heat> they have a percpu counter system that counts locally up to a certain limit (in this case 32 pages), then commits to a global counter
20:25:00 <heat> you can technically go 32*nr_cpus above the overcommit limit
20:26:00 <netbsduser> if the cpu local commit is not borrowed from the global commit then that's a mistake
20:26:00 <Ermine> would be cool to have this parameter tunable at kernel build time
20:26:00 <heat> global commit can change
20:26:00 <netbsduser> but shouldn't you be avoiding committing all the time? it's not like physical pages, you are hopefully not mmap'ing too often
20:27:00 <heat> Ermine, what parameter?
20:27:00 <Ermine> local counting limit
20:27:00 <heat> why?
20:28:00 <heat> say you have 128 cpus. max error is 32 * 128 pages ~= 4MiB
20:29:00 <netbsduser> i would say don't let it err
20:29:00 <netbsduser> speculatively allocate global commit to CPUs
20:29:00 <heat> i would hope that in a 128 CPU machine you're not so heavily committed as to not be able to swap out 4MiB of file pages
20:29:00 <heat> particularly since this doesn't account page cache pages anyway
20:30:00 <netbsduser> i don't think strict accounting implies that *every* possible page of virtual memory should be usable, just that you can't use more than can be backed
20:31:00 <netbsduser> but extreme measures could be employed like ordering all the CPUs to dump their local cache of global commit and not bother taking more local cache out while there is a shortage
20:31:00 <Ermine> heat: oic
20:31:00 <netbsduser> then for the almost exhausted commit case you revert to dealing in it globally
20:33:00 <kof673> "malloc nonsense" ack_6_0_p5_pc86 target ( this just makes a bootable image x86-16, but it does have some libc like malloc() ): 43298 bytes chameleon simulator: 6644151 ...*3 because these are 24-bit bytes lol 19,932,453
20:33:00 <heat> meh this is completely best effort
20:33:00 <kof673> ack is amazingly fast ...
20:33:00 <heat> slab pages are not accounted for, other page allocations are not accounted for, page cache is not accounted for
20:35:00 <kof673> *fast to compile code...if you do if (0) i believe it literally will put that...not talking about run-time lol
20:35:00 <heat> slab actually can't account things in many cases because the overhead is very measurable, it's an active problem space in linux mm
20:37:00 <Matt|home> welp, sorry for the off-topic but apparently this question is literally off-topic in #windows so: it seems my win 10 pro version is already activated. this means i don't have to pay for another copy if i get a new computer right, i can just use the old activation key?
20:40:00 <carrar> Correct, since you wouldn't want to install Windows on this new computers, but rather some home made OS or linux. You won't need a key for those :)
20:40:00 <nortti> as far as I understand that will depend on the kind of activation key you have
20:40:00 <Matt|home> yeah im not going there.. i spent six hours ranting against linux idiocy and couldn't believe how bad the fanboys were
20:40:00 <Matt|home> it's a digital activation key
20:41:00 <Matt|home> er, digital license
20:41:00 <nortti> retail copy of win 10 pro, OEM?
20:41:00 <Matt|home> im not sure, but 80% yeah
20:41:00 <nortti> tied to your microsoft account?
20:41:00 <Matt|home> no
20:42:00 <nortti> then unsure, but I'd lean towards "probably will work, yeah"
20:42:00 <Matt|home> ty <3
20:43:00 <netbsduser> Matt|home: just because linux is less able at accounting doesn't mean it's idiotic
20:43:00 <heat> what
20:43:00 <heat> linux is more able at accounting
20:43:00 <netbsduser> heat: this "linux idiocy" he referred to
20:43:00 <heat> it accounts fucking everything and it's impressive at how fast it still is
20:44:00 <netbsduser> i am not confident it can avoid terminating user processes even with strict accounting mode
20:45:00 <heat> if the system is OOM killing it's completely hosed
20:47:00 <heat> i would guess it's very very hard to assure you can't oomkill ever, unless every allocation is accounted for
21:02:00 <nikolar> Well you could just not overcommit
21:03:00 <heat> every random page allocation would need to be committed
21:04:00 <nikolar> Yeah
21:04:00 <heat> it does sound doable-ish with some dubious effort, might try to play around with that
22:07:00 <Matt|home> im not getting into an OS debate again, i've made my anti-linux stance very clear in other channels but im not here to debate or inflame anything. if you're genuinely curious just pm me or something
22:15:00 <heat> OS debates are always very useful
22:15:00 <heat> you just need to convince the other guy he's wrong, he'll agree and switch to your favourite OS
22:18:00 <gog> what if instead the cracks in your facade of an identity collapse and you decide that not only are you wrong about your choice of OS but you're also living a painful and unsustainable lie and undergo gender transition after installing openindiana
22:21:00 <heat> incredibly based
22:21:00 <Matt|home> what's up gog
22:22:00 <gog> hi Matt|home
22:22:00 <heat> how was it gog
22:22:00 <gog> gebnde
22:23:00 <gog> gender transition or openinidana?
22:23:00 <Matt|home> hm. this is a little frustrating. i might have to drop this book
22:23:00 <heat> i mean the really big decision
22:23:00 <heat> switching to openindiana
22:23:00 <gog> painful and not as glamorous as i hoped. but comfortable and liberating at the same time
22:23:00 <heat> one can justify gender transitioning, one cannot justify switching to openindiana
22:24:00 <heat> it needs to be done purely based on vibes
22:24:00 <gog> installing openindiana should require more psychiatric intervention than being recommended for HRT
22:24:00 <heat> did it
22:24:00 <heat> did it scale
22:26:00 <Mondenkind> i support informed consent for os installation
22:26:00 <Mondenkind> people should have the freedom to install openindiana as long as they understand the risks and consequences
22:27:00 <gog> sorry i'm an OS-medicalist i guess
22:27:00 * kof673 throws in "spread across many osen, to hide from the wicked" dark saying of old
22:27:00 <heat> my christian values do not allow me to install openindiana
22:27:00 <heat> i simply think it's wrong
22:34:00 <mjg> gog: you actually installed openindiana????
22:34:00 <gog> no
22:34:00 <mjg> 8(
22:34:00 <heat> LIAR
22:34:00 <mjg> i tried once, i think it failed to boot
22:35:00 <gog> i tried to install opensolaris in like 2009
22:35:00 <heat> mjg, you actually installed FreeBSD????
22:35:00 <gog> on x86
22:35:00 <mjg> was supposed to be for kicks
22:35:00 <gog> it was unusuably slow
22:35:00 <mjg> gog: it was ENTERPRISE
22:35:00 <heat> i bet you were missing like, gpu drivers
22:35:00 <gog> maybe?
22:36:00 <heat> the driverless world is pretty rough
22:37:00 <mjg> i'm afraid slowaris got the name deservedly
22:37:00 <mjg> anyway i judge people by technology they use
22:37:00 <gog> we know
22:38:00 <heat> deservedly
22:38:00 <mjg> i guess you can call me a technologist
22:38:00 <gog> you're a technophobe
22:38:00 <heat> why does mjg hate techno??
22:38:00 <heat> it's an okay music genre
22:38:00 <mjg> techno is a genre?
22:38:00 <gog> it's a member of the EDM family
22:38:00 <heat> wow you are old
22:38:00 <mjg> i don't know squat about the area,i know the word
22:39:00 <mjg> i woudl expect it's what outsiders use to refer to something with electronic sounds
22:39:00 <mjg> and actual people who are into it would consider you a fucken' normie for using the word
22:47:00 <nikolar> Same with literally everything
22:58:00 <Matt|home> anyone have luck/good experience with o'reilly books?
23:07:00 <nikolar> I haven't read them personally but I've heard that they aren't great
23:07:00 <nikolar> So take that as you will
23:10:00 <gog> i had C in a Nutshell
23:11:00 <gog> it has a decent section on Makefiles
23:14:00 <nikolar> Kek what about the sections on c
23:15:00 <gog> all i remember is it had nothing i didn't already know
23:15:00 <gog> it's very basic stuff
23:16:00 <nikolar> So basically no really worth it
23:16:00 <gog> nah
23:16:00 <zid> There are no good C books
23:16:00 <gog> what about the c programming language by brian kernighan and dennis ritchie
23:17:00 <zid> K&R2 is.. awkward and dated
23:17:00 <gog> me too
23:17:00 <zid> it mainly covers weird text processing tasks, also
23:17:00 <nikolar> Good practice though
23:17:00 <zid> and lacks C99 and all the 30 years of hindsight we have
23:17:00 <zid> yea it's a good book
23:17:00 <nikolar> Sure, it's not the only thing you need to be proficient in c
23:17:00 <nikolar> But it gets you started
23:17:00 <zid> yes, it's a good book
23:18:00 <zid> but there are no good books if your goal is to go from not knowing C, to very knowing C
23:18:00 <heat> i always recommend the c programming language by brian kernighan and dennis ritchie
23:18:00 <heat> all the other C books suck
23:18:00 <nikolar> Same
23:18:00 <nikolar> zid yeah but I don't think those exist for any language
23:18:00 <gog> my goal is to go from knowing c to not knowing c
23:18:00 <heat> YES
23:18:00 <nikolar> No
23:19:00 <heat> kiss the girls you didn't ask while arguing UB on IRC
23:19:00 <heat> didn't kiss*
23:19:00 <heat> obviously ask them for kissing
23:19:00 <zid> nikolapdp: Mostly because most other languages are undocumented
23:19:00 <zid> to begin with
23:19:00 <zid> C at least has a spec, so you can *try* to do it
23:20:00 <nikolar> Yeah I guess that's a fair point
23:20:00 <zid> C++ book would be 14000 pages long, so you can't, all other languages are ad-hoc or change every 4 weeks even if they DO bother to write it down
23:20:00 <nikolar> Rust doesn't have a standard, java does kind of
23:20:00 <zid> There are lots of java books, I can't comment on their quality though
23:20:00 <nikolar> There's ecmascript you could target if you really wanted, python doesn't quite have a standard
23:20:00 <zid> problem with a javascript book is that nobody writes javascript
23:21:00 <nortti> and this is why common lisp stays winning
23:21:00 <heat> HASKELL
23:21:00 <nikolar> zid how so
23:21:00 <zid> they write against weird frameworks that somehow extend the grammar with other nonsense, the ({f}()).$ crap I see all the time
23:21:00 <nikolar> Ah lol
23:21:00 <zid> or they realize that's a sham and use something that compiles to javascript
23:22:00 <nikolar> Kek
23:34:00 <kof673> oreilly did the animals on cover IIRC
23:34:00 <kof673> that was the vi book IIRC: tarsier, (family Tarsiidae), any of about 13 species of small leaping primates found only on various islands of Southeast Asia, including the Philippines. Tarsiers are intermediate in form between lemurs and monkeys, measuring only about 9–16 cm (3.5–6 inches) long
23:53:00 <zid> k for some reason youtube popped up a "Please select one of these three videos to tune your recommendations"
23:53:00 <zid> and one of them was.. the entire austin powers movie
23:53:00 <zid> so I guess I am watching austin powers
23:55:00 <nikolar> Kek nice
23:55:00 <nikolar> Groovy
23:56:00 <zid> https://cdn.discordapp.com/attachments/923184228143865856/1259188353190985798/8f64754b-23d8-4ebf-8e4b-b777b38e16c5.jpg?ex=668ac609&is=66897489&hm=c0836cada1bacdda5495cf6d1273b6933bbf5d69ce0ac99863593806587ec0a7&
23:56:00 <nikolar> Book
23:56:00 <nikolar> Boom