00:00
foudfou has quit [Remote host closed the connection]
00:01
foudfou has joined #osdev
00:03
SophiaNya has quit [Remote host closed the connection]
00:03
ptrc has quit [Remote host closed the connection]
00:04
SophiaNya has joined #osdev
00:04
ptrc has joined #osdev
00:08
vdamewood has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
00:10
<
mjg >
anyone with accesss to gemini (you can do it through bard)
00:10
<
mjg >
from what i hear has to be someone based in the US
00:10
<
mjg >
got a prompt to pass
00:14
<
geist >
heat_: yeah it's my understanding that xenix on 286 was a 16bit OS with multiple segments
00:14
<
geist >
which lines up with things like 2BSD on PDP-11, etc. 16 bit stuff with segments
00:14
<
zid` >
nah that was CG geist
00:15
<
zid` >
Convincing rendering by big unix to fool you
00:16
<
mjg >
geist: > write a rust program which compares files in 2 directory trees on linux
00:16
<
mjg >
both bard ang chatgpt webdev it
00:16
<
mjg >
let's see what gemini has to offer
00:16
<
heat_ >
didn't you say rust was webdev
00:17
<
heat_ >
they rust'd it
00:17
<
mjg >
what people normally do with rust, sometimes following official docs, is totes webdev
00:17
<
geist >
what do you mean webdev it?
00:17
<
mjg >
geist: slurping stuff upfront
00:17
<
mjg >
geist: e.g., read_to_string()
00:17
eddof13 has quit [Quit: eddof13]
00:17
<
heat_ >
FYI that's what windows does
00:18
<
geist >
oooh lemme see
00:18
<
geist >
yeah: file1.read_to_end(&mut buf1)?;
00:18
<
geist >
and then is buf1 == buf2
00:19
<
geist >
though i dunno if that's gemini
00:19
<
geist >
i have to be careful that i'm not leaking something. hang on
00:19
<
mjg >
maybe you can literally ask it
00:19
<
mjg >
i mean i doubt bard would claim it is gemini
00:19
<
mjg >
"what is your name"
00:20
<
geist >
ah yeah this is gemini pro
00:20
<
geist >
anyway it does a pretty standard answer, and to be nice it gives a bit pile of caveats at the bottom
00:21
<
mjg >
did it emit that read_to_end?
00:21
<
mjg >
i was genuinely hoping for better
00:21
<
mjg >
thanks for testing
00:21
<
geist >
it pretty much says at the bottom a list of things you can do to optimize it
00:21
<
geist >
lemme ask it to optimize
00:21
<
mjg >
it's going to spawn threads
00:22
<
heat_ >
ask it to protobuf-ize it
00:22
<
heat_ >
that's how you know if it's a google engineer under the covers doing all the work
00:22
<
mjg >
you think it's a LLM generating
00:22
<
mjg >
and it's someone paid $1/hour in india
00:22
<
mjg >
copy pasting from SO
00:23
<
heat_ >
no, it's google engineers that couldn't pay rent in SF, so they live inside bard
00:23
<
geist >
i just asked it to use fixed sized buffers and it rewrote it
00:23
<
geist >
looks pretty good to me
00:23
<
moon-child >
mechanical llm
00:24
<
geist >
the first response used read_to_string, but then i asked it 'can you avoid using read_to_string and instead use fixed size buffers?'
00:24
<
mjg >
this is still bad, some of the mistakes being pure rustims
00:25
<
mjg >
key though is that read can transiently return only part of the buffer
00:25
<
mjg >
so you have to redo it
00:25
<
mjg >
but this code will autofail you on it
00:25
<
geist >
i think the key with these things is it frequently doesn't get it exactly right on the first ask, because it doesn't know the constraints
00:25
<
geist >
so it usually gives the simplest answer first
00:25
<
mjg >
also any failure to stat will panic the entire thing insteado f skipping the file
00:25
<
mjg >
it should default to /safe/ answers
00:25
<
heat_ >
have you considered
00:25
<
mjg >
which most notably avoids slurping arbitrarily sized files in one go
00:26
<
heat_ >
that this is a LLM and not a code wizard
00:26
<
mjg >
have you considered
00:26
<
mjg >
people copy paste from this
00:26
<
geist >
yeah i mean, the fact that it's kinda halfway there i'm pretty impressed
00:26
<
heat_ >
yes, fuck those people
00:26
<
mjg >
geist: no doubt, tech is most impressive
00:26
<
mjg >
just people take its output as impeccable
00:26
<
heat_ >
i'm fairly impressed with bard
00:26
<
geist >
i've used it a bit here and there to break out of some hole and just give me a suggestion
00:26
<
mjg >
or at least good enough to plop in
00:26
<
geist >
like 'how do i write an awk script to do something'
00:26
<
heat_ >
OMG GEIST IS WEBDEV
00:27
<
mjg >
i have an awk oneliner i dislike a lot
00:27
<
geist >
just to be clear the answers here are the external version
00:27
<
mjg >
and asked people who claim to know awk how to improve it
00:27
<
geist >
i'm using my personal account
00:27
<
mjg >
nobody gave me a good answer
00:27
<
mjg >
maybe i'll ask chatgpt now
00:28
<
mjg >
geist: in this contxt that's great, this is what most people will have access to
00:28
<
geist >
i asked it to write some TMS9900 code the other day wondering if it could pull it off. did okay
00:28
<
heat_ >
the real answer to 'how do i write an awk script to do something' is 'you don't'
00:28
<
mjg >
heat_: awk is great mofo
00:28
<
mjg >
heat_: LIKE GNUPLOT
00:28
<
heat_ >
awk is the gnu plot of text processing
00:28
<
heat_ >
gnuplot is the rust of plotting
00:28
<
heat_ >
rust is the rust of rust
00:28
<
mjg >
i'm literally bleedin' rust
00:29
blockhead has left #osdev [#osdev]
00:29
<
heat_ >
you realize i wanted to quickly gnuplot a histogram and the easiest solution was to fucking copy someone's random script
00:29
<
heat_ >
because there's no way to easily plot a histogram
00:29
<
heat_ >
gnuplot has no easy quick way to plot a histogram
00:29
<
mjg >
here is a secret
00:30
<
mjg >
gnuplot is standard unix-like dogshit if you have to use it from scratch
00:30
<
heat_ >
no one uses gnuplot, everyone claims to use it but they use microsoft excel
00:30
<
mjg >
you need a bunch of templates handy
00:30
<
mjg >
no, plenty of people use gnuplot, but it's mostly cargo culting scripts from other peole
00:30
<
mjg >
and tweaking shit until it starts working
00:30
<
heat_ >
cargo culting? is that a rust reference?
00:30
<
mjg >
's a standard term mofo
00:31
<
heat_ >
joke over head
00:31
<
mjg >
you are a genz, i totally believe you have not heard of it
00:31
<
mcrod >
i've used gnuplot
00:31
<
bslsk05 >
calteches.library.caltech.edu: Cargo Cult Science
00:31
<
mcrod >
thanks i'll take matplotlib and numpy any day
00:31
<
mjg >
starts with the same letter as Rust
00:32
<
mcrod >
I've had to fix a fucking R script at work
00:32
<
mcrod >
do that with no experience with R and you'll understand patience
00:32
<
geist >
huh i thought R was not half bad?
00:32
<
mcrod >
i personally found it distasteful
00:32
<
mcrod >
but then again, I'm tainted
00:32
<
mcrod >
remember, I had to fix a script that was already broken while saying "god wtf is this shit"
00:33
<
mjg >
that will do it to you
00:37
<
mjg >
on something positive (but not totally), one massive quality of life improvement in higher langs like rust is the way "includes" work
00:38
<
mjg >
in c you get tons of shit you not using and you might have even missed explicit #include which happens to work due to mess elsehwere which pulls what you need anyway
00:38
<
geist >
heh been reading about the original cargo cults on islands
00:38
<
geist >
i knew about it, but never really read that much into it
00:38
<
geist >
apparently still going on
00:39
<
geist >
pretty limited, i think but still have some folks go off in the woods and do rituals
00:39
<
mjg >
i read about it in "the natural history of nonsense"
00:39
gorgonical has quit [Ping timeout: 255 seconds]
01:01
<
zid` >
John Frum is an imposter
01:03
\Test_User has quit [Quit: \Test_User]
01:04
\Test_User has joined #osdev
01:08
<
mjg >
what the actual fuck
01:08
<
mjg >
by url i thought it's a satirical club in the uk
01:14
<
zid` >
where's MY pig killing club :(
01:19
<
bslsk05 >
'I know a genuine Magnetbox, Panaphonic, & Sorny when I see one.' by OWEN CA$H (00:00:37)
01:20
<
kof123 >
crescent moon was cat horus with his little knife...pig was darkness (see also zelda 3) you're welcome
01:21
\Test_User has quit [Quit: \Test_User]
01:21
\Test_User has joined #osdev
02:22
goliath has quit [Quit: SIGSEGV]
02:37
heat_ has quit [Ping timeout: 256 seconds]
02:55
tomith has quit [Quit: tomith]
02:57
joe9 has quit [Quit: leaving]
03:11
srjek|home has joined #osdev
03:15
srjek has quit [Ping timeout: 264 seconds]
03:30
ThinkT510 has quit [Ping timeout: 264 seconds]
03:34
ThinkT510 has joined #osdev
03:40
edr has quit [Quit: Leaving]
03:42
raphaelsc has quit [Remote host closed the connection]
03:42
xenos1984 has quit [Read error: Connection reset by peer]
03:46
terrorjack has joined #osdev
03:56
srjek|home has quit [Ping timeout: 268 seconds]
04:01
xenos1984 has joined #osdev
04:16
rpnx_ has joined #osdev
04:17
Matt|home has joined #osdev
04:17
Nixkernal_ has joined #osdev
04:19
Nixkernal has quit [Ping timeout: 264 seconds]
04:19
sbalmos has quit [Ping timeout: 246 seconds]
04:20
sbalmos has joined #osdev
04:50
craigo has joined #osdev
05:01
rpnx_ has quit [Quit: My laptop has gone to sleep.]
05:24
foudfou has quit [Remote host closed the connection]
05:24
foudfou has joined #osdev
05:35
craigo has quit [Quit: Leaving]
06:04
rpnx_ has joined #osdev
06:20
netbsduser has joined #osdev
06:24
gxt has quit [Remote host closed the connection]
06:25
gxt has joined #osdev
06:35
foudfou has quit [Remote host closed the connection]
06:35
foudfou has joined #osdev
06:40
netbsduser has quit [Ping timeout: 256 seconds]
07:14
mkwrz has quit [Ping timeout: 245 seconds]
07:17
rpnx_ has quit [Quit: My laptop has gone to sleep.]
07:28
mkwrz has joined #osdev
07:39
nitrix has joined #osdev
07:39
gildasio has quit [Remote host closed the connection]
07:39
gildasio has joined #osdev
07:41
mkwrz has quit [Ping timeout: 240 seconds]
07:55
mkwrz has joined #osdev
07:57
gbowne1 has quit [Read error: Connection reset by peer]
08:01
mkwrz has quit [Ping timeout: 268 seconds]
08:08
Vercas has quit [Remote host closed the connection]
08:09
Vercas has joined #osdev
08:11
leon has quit [Ping timeout: 256 seconds]
08:12
mkwrz has joined #osdev
08:17
mkwrz has quit [Ping timeout: 260 seconds]
08:24
xvmt has quit [Remote host closed the connection]
08:25
xvmt has joined #osdev
08:35
leon has joined #osdev
08:46
mkwrz has joined #osdev
08:51
mkwrz has quit [Ping timeout: 260 seconds]
08:57
GeDaMo has joined #osdev
09:03
q3lont has joined #osdev
09:17
stefanct has quit [Ping timeout: 240 seconds]
09:20
mkwrz has joined #osdev
09:25
mkwrz has quit [Ping timeout: 276 seconds]
09:36
heat has joined #osdev
09:42
stefanct has joined #osdev
09:56
q3lont has quit [Quit: Leaving]
10:30
mkwrz has joined #osdev
10:35
mkwrz has quit [Ping timeout: 256 seconds]
10:38
zxrom has quit [Quit: Leaving]
11:18
goliath has joined #osdev
11:22
mkwrz has joined #osdev
11:40
mkwrz has quit [Ping timeout: 260 seconds]
11:55
[_] has joined #osdev
11:58
[itchyjunk] has quit [Ping timeout: 240 seconds]
12:00
srjek|home has joined #osdev
12:01
catphish has joined #osdev
12:03
mkwrz has joined #osdev
12:08
mkwrz has quit [Ping timeout: 276 seconds]
12:13
srjek|home has quit [Ping timeout: 264 seconds]
12:24
zxrom has joined #osdev
12:31
<
zid` >
do some LCM math for me
12:31
<
sham1 >
Least common multiple. AoC?
12:34
<
sham1 >
I just used python's math.lcm
12:34
<
zid` >
okay what do I put into it
12:34
<
zid` >
I quickly browsed reddit, and people were saying they only had Z in their loops.. either I have a bug or that isn't true for everybody :P
12:36
<
sham1 >
You look for each sub paths and their lengths, and get the lengths' lcm
12:39
<
sham1 >
Are you doing part 2 yet?
12:39
<
zid` >
hence "Z in their loops"
12:39
<
zid` >
not "ZZZ in their path"
12:40
<
zid` >
My output is weird and I need to investigate why
12:40
<
sham1 >
So, you can look for each of the beginning positions how long each of them take to go into a node ending in Z
12:40
<
zid` >
I get three Z in a row, every 11k ish cycles
12:40
<
sham1 >
And then LCM those lengths
12:41
<
zid` >
which isn't what I saw other people suggesting their input was like
12:41
<
zid` >
And the LCM shouldn't work unless the distance from A to the loop is the same as Z to Z, right?
12:50
mkwrz has joined #osdev
12:55
mkwrz has quit [Ping timeout: 260 seconds]
13:26
joe9 has joined #osdev
13:27
mkwrz has joined #osdev
13:32
mkwrz has quit [Ping timeout: 240 seconds]
13:32
FreeFull has joined #osdev
13:59
Left_Turn has joined #osdev
14:23
mkwrz has joined #osdev
14:29
mkwrz has quit [Ping timeout: 256 seconds]
14:30
pretty_dumm_guy has joined #osdev
14:30
edr has joined #osdev
14:46
mkwrz has joined #osdev
14:48
srjek|home has joined #osdev
14:50
mkwrz has quit [Ping timeout: 245 seconds]
15:05
<
zid` >
Okay back to AoC, read a book for a bit instead :P
15:05
<
zid` >
8085617200813047808 is too high, apparently
15:06
goliath has quit [Quit: SIGSEGV]
15:09
<
Ermine >
Tried to automate windows installation. It took me longer than to just install windows
15:10
<
zid` >
sounds right
15:12
mkwrz has joined #osdev
15:23
<
zid` >
welp, The thing I thought was the answer isn't, now I'm stuck
15:24
pebble has joined #osdev
15:28
nadja has quit [Ping timeout: 240 seconds]
15:29
pretty_dumm_guy has quit [Quit: WeeChat 3.5]
15:30
pretty_dumm_guy has joined #osdev
15:36
nadja has joined #osdev
16:13
elastic_dog has quit [Ping timeout: 260 seconds]
16:15
eddof13 has joined #osdev
16:17
thunor has joined #osdev
16:19
<
thunor >
the nand2tetris book isn't on your list
16:19
<
thunor >
is this considered a low quality book?
16:25
elastic_dog has joined #osdev
16:28
roper has joined #osdev
16:29
eddof13 has quit [Quit: eddof13]
16:38
eddof13 has joined #osdev
16:45
janemba has quit [Ping timeout: 268 seconds]
16:57
janemba has joined #osdev
16:59
<
thunor >
or is it too unrelated to os specifically?
16:59
<
thunor >
i'll assume that
17:03
eau has quit [Quit: bleh!]
17:16
Turn_Left has joined #osdev
17:17
<
thunor >
i love feeling tired
17:19
eddof13 has quit [Quit: eddof13]
17:20
Left_Turn has quit [Ping timeout: 276 seconds]
17:23
Left_Turn has joined #osdev
17:26
Turn_Left has quit [Ping timeout: 256 seconds]
17:26
dude12312414 has joined #osdev
17:26
eddof13 has joined #osdev
17:29
xenos1984 has quit [Ping timeout: 245 seconds]
17:30
xenos1984 has joined #osdev
17:33
Cindy is now known as bnchs
17:50
<
heat >
zid`, better than oracle db
17:52
<
zid` >
I just like the template
17:56
<
heat >
i like it to
18:05
<
Ermine >
better than ms access
18:05
<
mjg >
nothing beats a db consisting of several contradictory excel files
18:06
<
heat >
C files with contradictory comments moment
18:07
<
heat >
today in me:
18:07
<
heat >
/* TODO: Add a way for inodes to tell they don't support seeking */
18:07
<
heat >
if (filp->f_ino->i_type == VFS_TYPE_FIFO || filp->f_ino->i_flags & INODE_FLAG_NO_SEEK)
18:07
<
heat >
i literally did it and didn't remove the TODO literally above this line
18:08
<
mjg >
very senior enterprise of you
18:08
<
heat >
and before you complain
18:08
<
heat >
yes, INODE_FLAG_NO_SEEK is a LULNAME
18:08
<
heat >
i'm slowly converting these flags to I_<FLAGNAME>
18:08
<
heat >
like a true unix
18:09
<
heat >
when i'm finished with that i'll randomly convert half of my mm to camel case
18:15
<
joe9 >
on amd64, what is the assembly instruction to call 64 bit absolute addresses instead of an offset?
18:15
<
heat >
doesn't exist
18:16
<
heat >
you need movabs <64bit immediate>, %reg; call *(%reg)
18:16
<
heat >
or the intel equivalent
18:16
<
heat >
actually, fun story, they're adding a call 64-bit abs instruction
18:16
<
zid` >
there's also
18:16
<
heat >
i saw that a few days ago
18:17
<
joe9 >
zid`: push; ret is very expensive, isn't it? 2*2 cycles
18:17
<
zid` >
that isn't how modern cpus work at all
18:18
<
zid` >
also it'd push push ret I'm silly
18:18
<
heat >
a 64-bit call will always be expensive
18:18
<
heat >
it's not free
18:18
<
zid` >
or it will miss and cost a billion
18:18
<
zid` >
there's no way to know
18:18
<
zid` >
without all the surrounding code
18:18
<
heat >
anyway don't do this unless you really need to
18:19
<
heat >
call imm32 is OPTIMAL as an unknown member of the community would put it
18:19
<
zid` >
if your code does anything
*useful* it is more than likely just free
18:19
<
zid` >
cus you're stalled doing the useful thing in the FUTURE while this is executing
18:19
<
zid` >
*spooky noises*
18:20
<
joe9 >
heat, in call imm32, the imm32 is an offset, correct?
18:20
<
zid` >
relative displacement from the end of the call
18:21
xenos1984 has quit [Ping timeout: 256 seconds]
18:21
<
heat >
what zid` said
18:22
<
heat >
Reviewed-By: heat
18:22
<
joe9 >
If I am using linear address space, how would the relative displacement be calculated when the code is spread out over more than 4GiB?
18:22
<
Ermine >
imm32 ? Google gives out some windows stuff
18:22
<
zid` >
if it is, you have to use mov rax, blah; call rax
18:22
<
zid` >
but the 'correct' solution is.. don't do that
18:32
dude12312414 has quit [Quit: THE RAM IS TOO DAMN HIGH]
18:35
xenos1984 has joined #osdev
18:48
joe9 has quit [Ping timeout: 256 seconds]
18:55
carbonfiber has joined #osdev
18:56
netbsduser has joined #osdev
18:59
gorgonical has joined #osdev
19:01
joe9 has joined #osdev
19:03
rpnx_ has joined #osdev
19:07
joe9 has quit [Ping timeout: 276 seconds]
19:09
joe9 has joined #osdev
19:15
<
kof123 >
> yes, INODE_FLAG_NO_SEEK is a LULNAME > I'm slowly converting these flags to I_<FLAGNAME> # similar "namespacing" was part of an lkml rust discussion linked the other day
19:19
thunor has left #osdev [Leaving]
19:23
rpnx_ has quit [Quit: My laptop has gone to sleep.]
20:28
gildasio has quit [Ping timeout: 240 seconds]
20:30
gildasio has joined #osdev
20:39
joe9 has quit [Quit: leaving]
20:56
Gooberpatrol_66 has quit [Remote host closed the connection]
20:56
Gooberpatrol_66 has joined #osdev
21:14
wand has joined #osdev
21:16
GeDaMo has quit [Quit: That's it, you people have stood in my way long enough! I'm going to clown college!]
21:28
asarandi has quit [Quit: WeeChat 4.1.1]
21:29
asarandi has joined #osdev
21:32
<
zid` >
I think I should get a kitten.
21:35
eddof13 has quit [Quit: eddof13]
21:56
roper has quit [Quit: leaving]
21:56
eddof13 has joined #osdev
22:01
<
zid` >
First I need to find a big fat female cat to squeeze
22:17
theruran has joined #osdev
22:30
zetef has joined #osdev
22:31
netbsduser has quit [Ping timeout: 276 seconds]
22:33
gbowne1 has joined #osdev
22:43
goliath has joined #osdev
22:43
xenos1984 has quit [Read error: Connection reset by peer]
22:44
zetef has quit [Remote host closed the connection]
22:46
bnchs is now known as Cindy
22:57
agent314 has joined #osdev
23:00
xenos1984 has joined #osdev
23:55
[itchyjunk] has joined #osdev
23:55
carbonfiber has quit [Quit: Connection closed for inactivity]
23:58
[_] has quit [Ping timeout: 260 seconds]