ChanServ changed the topic of #picolisp to: PicoLisp language | Channel Log: https://irclog.whitequark.org/picolisp/ | Picolisp latest found at http://www.software-lab.de/down.html | check also http://www.picolisp.com for more information
orivej has joined #picolisp
<rick42> beneroth: idk
chuckJ has joined #picolisp
aw- has joined #picolisp
chuckJ has quit [Ping timeout: 268 seconds]
alexshendi has joined #picolisp
orivej has quit [Ping timeout: 256 seconds]
orivej has joined #picolisp
alexshendi has quit [Ping timeout: 255 seconds]
orivej has quit [Ping timeout: 248 seconds]
orivej has joined #picolisp
orivej has quit [Ping timeout: 268 seconds]
orivej has joined #picolisp
orivej has quit [Ping timeout: 256 seconds]
orivej has joined #picolisp
rob_w has joined #picolisp
rob_w has quit [Changing host]
rob_w has joined #picolisp
<Regenaxer> tankfeeder, I like your 'swap' solution. Shall we put it also into misc/fibo.l line 14?
<tankfeeder> yes, why not
<Regenaxer> ok :)
<Regenaxer> It is more elegant than the 'prog1' I think
<tankfeeder> somewhere in crypto functions ive implement variables swapping a,b,c = c,a,b on (swap)
<Regenaxer> yes, useful here, with 'xchg' it would need a temp var
orivej has quit [Ping timeout: 248 seconds]
jibanes has quit [Ping timeout: 256 seconds]
jibanes has joined #picolisp
orivej has joined #picolisp
rob_w has quit [Remote host closed the connection]
rob_w has joined #picolisp
rob_w has quit [Changing host]
rob_w has joined #picolisp
mtsd has joined #picolisp
orivej has quit [Ping timeout: 252 seconds]
aw- has quit [Ping timeout: 248 seconds]
mtsd has quit [Ping timeout: 260 seconds]
aw- has joined #picolisp
rob_w has quit [Quit: Leaving]
rob_w has joined #picolisp
orivej has joined #picolisp
<aw-> sigh.. my JSON lib is not perfect
mtsd has joined #picolisp
<aw-> discovered a bug in the parser :\
<Regenaxer> :(
<Regenaxer> There is *always* one more bug :)
<aw-> ahhh
<aw-> thank you
<aw-> that's reassuring
<aw-> you're right
<Regenaxer> I just discovered bugs in 'co' and 'yield'
<aw-> because of tankfeeder ?
<Regenaxer> due to the activities of tankfeeder, I experimented with coroutines
<Regenaxer> yep
<aw-> i see
<Regenaxer> I neglected them
<aw-> good to have people using your code and finding stuff
<Regenaxer> exactly
<aw-> makes it better,
<Regenaxer> Not fatal bugs, but these two functions should preserve '@]
<Regenaxer> will fix
<aw-> ok! ganbatte ;)
orivej has quit [Ping timeout: 240 seconds]
<Regenaxer> :)
orivej has joined #picolisp
orivej has quit [Ping timeout: 248 seconds]
orivej has joined #picolisp
miskatonic has joined #picolisp
miskatonic has quit [Remote host closed the connection]
<tankfeeder> Regenaxer: let me know when fix ready
<Regenaxer> ok, will take some time
mtsd has quit [Ping timeout: 260 seconds]
<tankfeeder> i want try again solve this
<beneroth> tankfeeder, be aware there are multiple encoding schemes and multiple different restrictions apply to different parts of an URL
<tankfeeder> yea
<beneroth> looks like this might be irrelevant for the rosetta task. but generally, URL parsing is actually non-trivial
miskatonic has joined #picolisp
miskatonic has quit [Remote host closed the connection]
orivej has quit [Ping timeout: 260 seconds]
orivej has joined #picolisp
<tankfeeder> : (str "12.34.45" "")
<tankfeeder> -> Segmentation fault
<tankfeeder> ===========
<tankfeeder> pil32 dont crash
<tankfeeder> : (str "12.22.22" "")
<tankfeeder> -> NIL
<tankfeeder> -> NIL
<tankfeeder> : (== 1 1)
<tankfeeder> : (version)
<tankfeeder> 18.1.8 C
<tankfeeder> -> (18 1 8)
<tankfeeder> :
<tankfeeder> Regenaxer: ping.
<Regenaxer> hm, no idea
<Regenaxer> What should "12.34.45" be?
<Regenaxer> What should it parse to?
<tankfeeder> i cant answer, just having fun around it
<Regenaxer> In any case, not a legal fixpoint number
<tankfeeder> : (str "12.33" "")
<tankfeeder> -> (12)
<tankfeeder> ok
<Regenaxer> yes
<Regenaxer> : (str "12.64" "") -> (13)
<Regenaxer> Then 'read' might crash too (?)
<Regenaxer> No, works
<Regenaxer> : (read "") "12.34.45" -> ("1" "2" "." "3" "4" "." "4" "5")
<Regenaxer> No idea ;)
<tankfeeder> : (read "")
<tankfeeder> 12.2.2.2
<tankfeeder> -> Segmentation fault
<Regenaxer> I'm struggling now with 'co' and 'yield'
<tankfeeder> ok
<Regenaxer> This is probably the most complicated part of the interpreter
<Regenaxer> Really tough
<Regenaxer> I don't want to mess it up
<tankfeeder> ok
<tankfeeder> no hurry
<aw-> oh weird
<aw-> crashes on arm64 too
<aw-> NIL on OS X
<tankfeeder> its ok.
<aw-> fixed the JSON lib.. added more validation tests, will publish new version tomorrow. need sleep
rob_w has quit [Remote host closed the connection]
aw- has quit [Quit: Leaving.]
<Regenaxer> tankfeeder here?
<Regenaxer> I think I fixed 'co' and 'yield' to preserve '@'
Regenaxer has left #picolisp [#picolisp]
Regenaxer has joined #picolisp
<beneroth> wb
<Regenaxer> It was quite a bit dangerous
<beneroth> Regenaxer, great :)
<Regenaxer> Hope I got it right
<Regenaxer> Thanks beneroth!
<beneroth> risk of deleting/clearing something else instead, or because it is generally a complicated change?
<Regenaxer> generally complicated
<Regenaxer> I dare to make a release though
<Regenaxer> I think not many people use coroutines
<Regenaxer> tankfeeder, next time you are here, please test it too
<beneroth> no risks, no rewards. move fast and break things.
<Regenaxer> :)
<Regenaxer> This coroutine stuff is dammned hard to test, because where are so many ways co and yield call each other, and there are so many environments to be maintained
<beneroth> aye
<beneroth> you need a fuzzying testing oracle (à la quicktest)
<beneroth> I mean QuickCheck
<tankfeeder> Regenaxer: here
<Regenaxer> Hi!
<tankfeeder> released? i will play a lot
<Regenaxer> Great! Thanks!
karswell has quit [Read error: No route to host]
<Regenaxer> found the bug in (str "12.34.56" "")
<Regenaxer> A check for NULL returned by tokenCE_E is missing
<Regenaxer> also in pil32 and ersatz
<beneroth> that was quick
<beneroth> :)
<beneroth> bbl
<Regenaxer> hmm, no, it *is* checked :(
<tankfeeder> all tests passed
<Regenaxer> Thanks!
<tankfeeder> ok
<Regenaxer> Parser bug fixed for pil64
<Regenaxer> Not sure if something is wrong in the other versions too
<tankfeeder> i will test too
<Regenaxer> Ersatz also fixed. pil32 is correct
<Regenaxer> Thanks!
<tankfeeder> pil64 passed
<tankfeeder> check diff later
<Regenaxer> ok
orivej has quit [Ping timeout: 248 seconds]
<beneroth> thank you two very much, tankfeeder and Regenaxer
<beneroth> I appreciate your efforts
<beneroth> :)
<Regenaxer> Thanks beneroth! It was a must to fix these issues :)
<Regenaxer> Otherwise I can't find peace
<beneroth> I know the feeling. Only way good quality comes to be.
<beneroth> to care
<Regenaxer> T
<beneroth> too bad the incentives in our current economy mainly optimize for "good enough" instead of "great"...
<rick42> hi all
<rick42> is this with today's coroutine changes?
<rick42> $ pil -version -bye
<rick42> 18.1.9
miskatonic has joined #picolisp
<beneroth> I'd guess so
<beneroth> hi miskatonic
<miskatonic> hi
<miskatonic> thirty years of picolisp!
miskatonic has quit [Quit: ERC (IRC client for Emacs 24.5.1)]
alexshendi has joined #picolisp