beneroth changed the topic of #picolisp to: PicoLisp language | The scalpel of software development | Channel Log: https://libera.irclog.whitequark.org/picolisp | Check www.picolisp.com for more information
f[x] has quit [Remote host closed the connection]
<abu[7]> Hi user3456, yes, it is the sign bit. It is 1 if the number is negative
<abu[7]> It is also the sign bit for bignums BTW
<abu[7]> You can inspect such things on the repl:
<abu[7]> : (let X 7 (bin (struct (adr 'X) 'N)))
<abu[7]> -> "1110010"
<abu[7]> : (let X -7 (bin (struct (adr 'X) 'N)))
<abu[7]> -> "1111010"
<user3456> I see, thank you
<user3456> I'm also curious about how allocating cells in the interpreter is done
<user3456> I know that bit(0) is reserved for the gc, but apart from that there's no further information in the reference about it
<abu[7]> The interpreter maintains a linked list of free cells in the heap
<user3456> I see
<user3456> Is it one list entry per cell or are cell ranges grouped together?
<abu[7]> One per cell
<user3456> (Trying to implement something similar to picolisp from scratch as programming practice)
<user3456> Got it
<abu[7]> Physical allocation is this:
<abu[7]> (vi 'llvm~cons)
<abu[7]> The global $Avail list
<abu[7]> Basically (let P (val $Avail) (setq P (val $Avail)
<abu[7]> ie the cells are linked via their CARs (val)
<abu[7]> see "### Heap ###" in @doc/structures
<abu[7]> Hmm, well, not really. It is the list of heaps
<abu[7]> Each heap contains the free and allocated cells
<user3456> which file is it in the pil21 git repo? on a windows system rn so I can't run picolisp directly
<abu[7]> 'llvm~cons is in @src/gc.l
<abu[7]> Line 287
<abu[7]> What does it mean you cannot run it directly?
<user3456> windows isn't POSIX compatible
<abu[7]> So you can't run it at all?
<user3456> I have access to a shell on a debian server and picolisp fine there
<user3456> it's less convenient though
<abu[7]> But then (vi 'llvm~cons) works
<abu[7]> $ pil +
<abu[7]> : (vi 'llvm~cons)
<user3456> yeah that works once I ssh in
<abu[7]> I do the same here at this moment
<abu[7]> Pil and IRC are remote on a Debian server
<abu[7]> Using TMUX
<user3456> I see
<user3456> for me, irc is local (hexchat) but I connect through znc running on the debian host
<abu[7]> Good
gahr has quit [Ping timeout: 260 seconds]
<geri> somehow i still hadnt quit this emacs session :D
<geri> hi-hi
gahr has joined #picolisp
<abu[7]> Hi geri
<geri> hacking on my keyboard layout B)
rob_w has joined #picolisp
Iacob has quit [Quit: IRCNow and Forever!]
ello has joined #picolisp
ello_ has quit [Ping timeout: 252 seconds]
Iacob has joined #picolisp
beneroth has quit [Read error: Connection reset by peer]
beneroth has joined #picolisp
rob_w has quit [Remote host closed the connection]
f[x] has joined #picolisp
taleon has quit [*.net *.split]
taleon has joined #picolisp
f[x] has quit [Remote host closed the connection]
f[x] has joined #picolisp
f[x] has quit [Remote host closed the connection]
cpli_ has joined #picolisp
z4k4ri4_ has joined #picolisp
cpli has quit [Ping timeout: 246 seconds]
z4k4ri4 has quit [Ping timeout: 246 seconds]
cpli_ is now known as cpli