ChanServ changed the topic of #picolisp to: PicoLisp language | Channel Log: https://irclog.whitequark.org/picolisp/ | Check also http://www.picolisp.com for more information
Seteeri has quit [Ping timeout: 240 seconds]
<anddam> and good morning
<Regenaxer> Good morning anddam!
aw- has quit [Quit: Leaving.]
mtsd has joined #picolisp
<anddam> btw I watched the PISCES FPGA intro a year ago or the like, whatever happened to that?
<anddam> the PISCES with PilOS seemed something very interesting
<Regenaxer> Not sure, Geo is still on it
<mtsd> Hello everyone. Happy holidays :)
<Regenaxer> Hi mtsd!! o/
<anddam> ever since I read about the "real computer" story, dissing unix in favor of symbolics machine I got very fascinated
<m_mans> Hi all!
<Regenaxer> Cheers m_mans!
<mtsd> Hi m_mans!
<anddam> btw I'm trying Mezzano in virtualbox
<anddam> I'm astonished
<anddam> I mean I think I am too used thinking in a UNIX way, I cannot start to imagine what's to build a graphic environment in a world so different
<anddam> and one of the McCLIM demo crashed, I got the REPL with the usual choices and I just aborted the execution
<anddam> but I figure that's the "running debugging" capability I was reading about, i.e. I could have read the failing function, replaced it and resume execution
<anddam> right?
<Regenaxer> I don't know Mezzano, but in pil you can fix a running program, yes, and continue. But the error point itself throws to the top level (with 'quit) after hitting <return>
<Regenaxer> A typical pil web app continues, e.g. on the next click in the browser gui
<Regenaxer> Usually even an explicit 'load' is not needed, as gui pages are loaded anyway automatically
<anddam> "Vip is included in the PicoLisp distribution. It consists of the library in "@lib/vip.l" and an executable front-end "@bin/vip".
<anddam> on my Ubuntu system picolisp package only has
<anddam> $ dpkg -L picolisp | ag vip
<anddam> /usr/share/picolisp/lib/vip.l
<anddam> should I file a bug for the missing bin/vip frontend?
<anddam> odd, they have psh replica and watchdog from https://github.com/picolisp/picolisp/tree/dev/bin but not vip
<Regenaxer> The Ubuntu package is criminally outdated
<Regenaxer> Current is 19.12
<Regenaxer> I always recommend to keep the global version, and use it to bootstrap a local one
<anddam> how do you bootstrap it? simply copying?
<Regenaxer> It is described in the INSTALL file
<anddam> will check it
<Regenaxer> I usually have one global from the distro, and several local ones
<Regenaxer> btw, bin/vip will probably not run as the path is in the first line. I use a "vip" script in some PATH directory with one line, e.g. in Termux this is:
<Regenaxer> #!/data/data/com.termux/files/home/pico/bin/picolisp /data/data/com.termux/files/home/pico/lib.l
<Regenaxer> # 04oct17abu
<Regenaxer> (load "@bin/vip")
<Regenaxer> I called this script 'vi' btw
<anddam> why wouldn't vip run with the path in first line?
<Regenaxer> It does run, but #!/usr/bin/picolisp is the global (old) installation
<Regenaxer> You can also put symbolic links globally if you uninstall the global ene
<Regenaxer> the links are described in INSTALL too
<anddam> I see, I have already removed the ubuntu package
<Regenaxer> good
<Regenaxer> you can download the pre-generated "*.s" files to build for the first time (if the global is gone)
<tankf33der> Regenaxer: will you check (format) on pil64 on huge numbers ? Remember performance difference ?
<Regenaxer> I just looked at it when implementing for pil21
<anddam> Regenaxer: yes I read the INSTALL, or use java or go with the 32bit bootstrapping
<Regenaxer> I think it cannot be improved
<Regenaxer> anddam, perfect
<Regenaxer> tankf33der, how big is the difference?
<tankf33der> 2-4x
<Regenaxer> I think I cannot change the algorithm
<tankf33der> ok.
<tankf33der> np
<Regenaxer> symToNum, right?
<tankf33der> yea
<Regenaxer> I think the algorithm is the same
<Regenaxer> it is multiplication or addition or symChar
<tankf33der> remember this picture, right?
<tankf33der> pil32 has 3 blocks, pil64 two.
<Regenaxer> yes, the loops are arranged differently
<Regenaxer> But still the same, no?
<tankf33der> no
<Regenaxer> while ((c = symChar(NULL)) is the time consuming loop
<Regenaxer> frac etc are handled inside or outside
<Regenaxer> the 'break'
<Regenaxer> so the same as if handled *after* the loop
<tankf33der> on pil64 you do second code on every loop of first whil.e
<Regenaxer> it is not done
<Regenaxer> only the 'if'
<Regenaxer> if frac it exits (32)
<Regenaxer> or if frac it handles, then exits (64)
<tankf33der> checking again.
<Regenaxer> I think just the arrangement is different
<Regenaxer> and an 'if' is as expensive as the other
<Regenaxer> The big work is not in the loops
<Regenaxer> it is tenFold and add
<Regenaxer> and perhaps symChar
<Regenaxer> all three are more complicated in pil64, due te checking for short or big numbers
<tankf33der> i see.
v88m has quit [Ping timeout: 268 seconds]
mtsd has quit [Ping timeout: 240 seconds]
mtsd has joined #picolisp
aw- has joined #picolisp
mtsd has quit [Ping timeout: 268 seconds]
orivej has quit [Ping timeout: 265 seconds]
orivej has joined #picolisp
orivej has quit [Ping timeout: 265 seconds]
orivej has joined #picolisp
v88m has joined #picolisp
orivej has quit [Ping timeout: 240 seconds]
orivej has joined #picolisp
v88m has quit [Ping timeout: 258 seconds]
mtsd has joined #picolisp
mtsd has quit [Client Quit]
mtsd has joined #picolisp
mtsd has quit [Ping timeout: 240 seconds]
v88m has joined #picolisp
v88m has quit [Ping timeout: 258 seconds]
mtsd has joined #picolisp
<anddam> I stowed 19.12 in /usr/ocal
<anddam> local*
<Regenaxer> great
<anddam> ofc the picolisp and pil shebang have hardcoded /usr/lib but from I get it's not an issue
<Regenaxer> It is easier if you set the symbolic links in /usr/bin/ etc
<tankf33der> anddam: i follow github repo and always uses latest code.
orivej has quit [Ping timeout: 258 seconds]
mtsd has quit [Ping timeout: 265 seconds]
v88m has joined #picolisp
v88m has quit [Ping timeout: 258 seconds]
andyjpb has joined #picolisp
orivej has joined #picolisp
orivej has quit [Ping timeout: 240 seconds]
mtsd has joined #picolisp
mtsd has quit [Client Quit]
orivej has joined #picolisp
orivej has quit [Ping timeout: 265 seconds]
orivej has joined #picolisp
orivej has quit [Ping timeout: 265 seconds]