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
orivej has joined #picolisp
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #picolisp
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #picolisp
casaca has quit [Remote host closed the connection]
casaca has joined #picolisp
orivej_ has joined #picolisp
orivej has quit [Ping timeout: 256 seconds]
orivej has joined #picolisp
orivej_ has quit [Ping timeout: 264 seconds]
_whitelogger has joined #picolisp
<tankf33der> btw, pil21 works in range llvm versions 7-10. will try llvm11 soon too.
orivej has quit [Ping timeout: 240 seconds]
orivej has joined #picolisp
<Regenaxer> ok
<tankf33der> you could update readme, will be questions.
<Regenaxer> readme of pil21?
<tankf33der> yea, just a sentence.
<Regenaxer> It does not exist (?)
<Regenaxer> yet
<tankf33der> np
<Regenaxer> I will have to rewrite most parts of the docs
<Regenaxer> First of all ref.html
<Regenaxer> ref?.html only where things changed
<Regenaxer> README, INSTALL in the end perhaps?
<tankf33der> yea, in general no picolisp community so no big problem. i will read them all.
<Regenaxer> :)
<tankf33der> llvm11 will be available as stable update after a month.
<tankf33der> ir two
<tankf33der> or two
<Regenaxer> ok
<Regenaxer> I'm still stuggling with the 'unify' bug
<Regenaxer> tough to debug
<Regenaxer> Haha! No! Simple error, wrong global :)
<Regenaxer> yes, indeed, that was it
<Regenaxer> Released
<tankf33der> all passed.
<tankf33der> trying port Touretzky exercises on pi21.
<tankf33der> ported. all works.
orivej has quit [Ping timeout: 264 seconds]
orivej_ has joined #picolisp
<Regenaxer> Great!
alexshendi has joined #picolisp
<tankf33der> ported 4clojure tasks.
<tankf33der> question:
<tankf33der> if i run bundle manually it passed.
<tankf33der> if i run all tasks in pil21-tests it fails.
<tankf33der> maybe some bindings or around.
<Regenaxer> or debug mode?
<tankf33der> how to find why it fails?
<Regenaxer> trace?
<tankf33der> find the place where replace Lst -> "Lst"
<tankf33der> or something like this.
<Regenaxer> yeah
<tankf33der> becuase (pp 'f119) show expected functions.
<tankf33der> becuase (pp 'f119) show expected function.
<Regenaxer> You know which function?
<Regenaxer> then trace all functions in f119 ?
<tankf33der> ...
<tankf33der> ((f119 '((o e e) (o x o) (x x e))))
<tankf33der> ...
<tankf33der> non-crypto-hashes-OK
<tankf33der> net-OK
<tankf33der> [hard.l:480] ((2 2) (0 1) (0 2)) -- 'test' failed
<tankf33der> ok
<Regenaxer> Is the test running with *Dbg on?
<tankf33der> no
<tankf33der> but i can run
orivej_ has quit [Ping timeout: 240 seconds]
orivej has joined #picolisp
<tankf33der> in general function is trivial
<tankf33der> http://ix.io/2sR1
<tankf33der> (quote
<tankf33der> (a1 b1 c1)
<tankf33der> maybe i need add simul~ here too ?
<Regenaxer> Should give an undefined error if not
<tankf33der> just returns NIL
<Regenaxer> Better do (symbols '(simul pico))
<Regenaxer> yes
<Regenaxer> 'a1' etc
<Regenaxer> hmm, no
<Regenaxer> the symbols are interened at runtime
<Regenaxer> Also, should make not a difference if REPL or script
<tankf33der> if i commented frac.l test code, error gone
<tankf33der> gorlansky and touretzky uses frac and grid code too, but only 4clojure step in somehow
<tankf33der> afk.
<Regenaxer> no idea
<Regenaxer> I would 'trace' and/or 'debug' and see where it differs
<tankf33der> ok
orivej has quit [Ping timeout: 260 seconds]
orivej has joined #picolisp
alexshendi has quit [Read error: Connection reset by peer]
<tankf33der> Regenaxer: found.
<tankf33der> http://ix.io/2sRm
<tankf33der> if comment (off R) line around XXX code in bottom part fails.
<tankf33der> ========
<tankf33der> created smaller example:
<tankf33der> http://ix.io/2sRw
<tankf33der> in case 1 value restored
<tankf33der> in case 2 value modified.
<tankf33der> in both pil21 and pil64.
<tankf33der> issue closed i think.
<tankf33der> afk.
<Regenaxer> Ret
<Regenaxer> yeah, (use (R .) .. (accu ' R
<Regenaxer> So the value in R gets extended
<Regenaxer> good
orivej has quit [Ping timeout: 240 seconds]
orivej has joined #picolisp
<tankf33der> this behaviour lintAll will find, right?
orivej has quit [Ping timeout: 240 seconds]
<beneroth> (use (R . )) is one of the few ways to produce an immediate segfault, afaik
<beneroth> Reader really doesn't like cons pair without any cdr
<tankf33der> but (R .) is circle list
<beneroth> ah
<beneroth> one space difference
<beneroth> ur right
<beneroth> of course :)
<Regenaxer> Hi beneroth :)
<Regenaxer> yeah, runtime assumes the user won't use circular explicit code
<beneroth> what a strange thing, a runtime trusting the user, and vic versa ;-)
<tankf33der> all years adventofcode works in pil21 except complex nontrivial coroutines code.
<Regenaxer> hehe
<beneroth> tankf33der, nice :)
<Regenaxer> ah, yes, coroutines not complete yet
<tankf33der> advent code base is last thing i will add to pil21-test repo.
<tankf33der> Regenaxer: found this
<tankf33der> http://ix.io/2sS2
<Regenaxer> Oh, I see! This is also an effect of the non-existant environment offset
<Regenaxer> Pat and Prg are in the env now
<Regenaxer> So it is not really wrong
<Regenaxer> We could change (match "Pat" (run "Prg")) to (match "Pat" (run "Prg" 1))
<Regenaxer> then '@' is *not* in the env
<Regenaxer> but "Pat" and "Prg" remain
<tankf33der> its ok. np.
<Regenaxer> ok
orivej has joined #picolisp
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #picolisp
orivej_ has joined #picolisp
orivej has quit [Ping timeout: 265 seconds]
<Regenaxer> With 'opt', misc/bigtest is almost as fast as pil64
<Regenaxer> I think for large functions, llvm code can be well optimized
<Regenaxer> Bignums are mostly large functions
<Regenaxer> But typical interpreter stuff, function call overhead is critical
orivej_ has quit [Ping timeout: 240 seconds]
<Regenaxer> That's why I think misc/bench.l and misc/bench2.l is more typical for PicoLisp code
orivej has joined #picolisp
<Regenaxer> EXPRR and SUBR function calls, stack handling, map functions and consing / garbage collection
<Regenaxer> So I'm afraid pil21 will always be a little slower
<tankf33der> i belive this is not issue.
<tankf33der> clang-llvm always slower than gcc.
orivej has quit [Ping timeout: 256 seconds]
orivej_ has joined #picolisp
<Regenaxer> ok, but gcc is not used for pil64
<Regenaxer> (only the linker)
orivej_ has quit [Ping timeout: 264 seconds]
orivej has joined #picolisp
<tankf33der> lets wait for llvm11
orivej has quit [Ping timeout: 264 seconds]
orivej_ has joined #picolisp
orivej_ has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #picolisp
orivej has quit [Ping timeout: 256 seconds]
orivej_ has joined #picolisp
<Regenaxer> I think it will not change much. We don't use the llvm generation of the C compiler, as pil generates its own
<Regenaxer> only some better optimization of the final step, and there is not much room to optimize I think
<tankf33der> amazing i found in my repo all pilog code from all rosettacode tasks combined in one file.
<tankf33der> passed in pil21.
<Regenaxer> Very good news!
<tankf33der> ...
<tankf33der> ...
<tankf33der> ^^^ crypto finished!
<tankf33der> whirlpool-OK
<tankf33der> twofish-OK
<tankf33der> [1-atom-atom.l:670] !? (cdr Lst)
<tankf33der> make: *** [Makefile:2: all] Segmentation fault (core dumped)
<tankf33der> and after added to bundle it crashed.
<tankf33der> if disable pilog call all passed.
<tankf33der> i will debug next week.
<Regenaxer> hmm
<Regenaxer> ok, great
<Regenaxer> Perhaps another pilog bug
<tankf33der> pil21 crash far away from call pilog code.
<tankf33der> afk.
<Regenaxer> I see
<tankf33der> zip of pil21-tests code is 4.4MB now.
<tankf33der> zip of pil21-tests repo files is 4.4MB now.
<Regenaxer> wuff
orivej_ has quit [Ping timeout: 256 seconds]
orivej has joined #picolisp
orivej has quit [Ping timeout: 256 seconds]
orivej_ has joined #picolisp
orivej_ has quit [Ping timeout: 240 seconds]
orivej has joined #picolisp
viaken has quit [Quit: reboot]
viaken has joined #picolisp