IRC channel logs


back to list of logs

<lampilelo>taylan: write a blog post about it, when i decide to study the vm i want to do it on easy mode!
<taylan>lampilelo: lol, might do so. that being said, I had completely forgotten that the VM is documented to some degree in Guile's Info manual
<taylan>if it explains everything that I figured out manually in the past two days, I will be quite bummed :P well, I guess it's always good to have seen the code anyway.
<lampilelo>hmm, seems like there's a lot of info there
***terpri is now known as robin
<hwpplayer1>hi people!
<tohoyn>sneek: botsnack
***rekado_ is now known as rekado
<ArneBab>leoprikler: what do you mean by a wisp sexp? Do you mean inline-parenthesized-code? If yes: prefix the first paren with a period: . (display foo)
<leoprikler>no, i mean stuff like "\t\tdisplay foo"
<leoprikler>If I jump to a line like that and then try to read a sexp, wisp errors out because of the indentation
<maximed>Why are cons and vector in *effect+exception-free-primitives*? They can throw an 'out-of-memory exception, no?
<leoprikler>everything can throw out-of-memory potentially :P
<amirouche>maybe not `values`
<amirouche>nvm idk
<leoprikler>car and cdr should be really safe, but both can throw :P
<amirouche>if there is no more memory, even values can fail.
<leoprikler>(invalid-argument, that is)
<dsmith>Probably doesn't matter, as nothing seems to call effect+exception-free-primitive? anyway.
***Noisytoot is now known as [[
<avp>Hello Guilers.
<avp>So the Guile chat moved here, I guess?
<ArneBab>welcome :-)
<ArneBab>moved here because #guix also moved here, iirc
<avp>Okay. I'm curious what was the reason for the Great GNU Guile Migration?
***[[ is now known as Noisytoot
<avp>I fixed Guile-SSH building/testing issues on Fedora GNU/Linux 34. Also now there's a Docker image based on Fedora with GNU Guile pre-installed:
***terpri_ is now known as robin
***sneek_ is now known as sneek
***drakonis1 is now known as drakonis
***xkapastel_ is now known as xkapastel
<taylan>hi all
<taylan>does anyone know what "sign-extended" and "zero-extended" immediates are?
***leoprikler_ is now known as leoprikler
***xkapastel_ is now known as xkapastel
<ecraven>probably extending 8->16 bit by copying either the msb, or 0 into the high byte
<ecraven>and the same for 16-32, ...
***avp_ is now known as avp
***drakonis1 is now known as drakonis
<efraim>I'm getting a test error for guile-3.0.7 on powerpc-linux, ERROR: suspendable-ports.test: revealed port fdes not closed - arguments: ((system-error "seek" "~A" ("Bad file descriptor") (9))), happened on two successive runs
<efraim>didn't happen with 3.0.5, didn't test 3.0.6
***Noisytoot is now known as [[
***AndrewG is now known as RhodiumToad
***xkapastel_ is now known as xkapastel
***[[ is now known as Noisytoot
<civodul>efraim: i've seen it reported (for x86_64), but this seems non-deterministic and quite infrequent
<civodul>there were changes around finalizers in 3.0.7 so it could be related
<efraim>I'm sending it though again without my bootstrap optimisations, should find out if it worked in 3 or 42 hours
***jackhill is now known as KM4MBG
***KM4MBG is now known as jackhill
<dsmith>taylan: What ecraven said, upper bits are filled in with either 0 or the sign.
<ecraven>so you have an immediate #b10000000 to some instruction. if you sign-extend it, it'll be filled with 1s to the left (because the most-significant-bit is 1), if you zero-extend it, it'll be filled with 0. usually you want sign-extension for signed integers, and zero-extension for unsigned integers
<dsmith>So 0x7f -> 0x00000007f is the same for bother zero-extend and sign-extend, but 0xf2 -> 0xfffffff2 (sign-ex) or 0xf2 -> 0x000000f2 (zero-ex)
<dsmith>I guess that's assuming twos-complement, which all modern cpus are.
<dsmith>Are there any sign-magnitue or ones-complement machines still running?