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 quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #picolisp
orivej has quit [Ping timeout: 256 seconds]
Blukunfando has quit []
mtsd has joined #picolisp
rob_w has joined #picolisp
stultulo has joined #picolisp
f8l has quit [Ping timeout: 258 seconds]
stultulo is now known as f8l
<Nistur> mornin'
<beneroth> Morning!
<Nistur> hulloo
<mtsd> Morning' all
<Regenaxer> Hi all
<beneroth> hey mtsd, Regenaxer :)
<Nistur> :)
<aw-> hi beneroth Nistur Regenaxer
<Regenaxer> Hi aw-
<aw-> Regenaxer: do you have plans to make a 20.6 release next month?
<Regenaxer> yes
<Regenaxer> But not much changes iirc
<aw-> OK thanks
<Regenaxer> these releases are only for Debian and descendants anyway
<Regenaxer> Important is the rolling release
<aw-> and me ;) i use them in my automation scripts
<Regenaxer> ah, ok :)
<beneroth> hi aw-
orivej has joined #picolisp
<tankf33der> new record in issue.md
<tankf33der> http://ix.io/2nnH
<tankf33der> afk.
<Regenaxer> Thanks tankf33der!
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #picolisp
orivej has quit [Read error: Connection reset by peer]
orivej has joined #picolisp
orivej has quit [Ping timeout: 272 seconds]
orivej_ has joined #picolisp
rob_w has quit [Remote host closed the connection]
orivej_ has quit [Ping timeout: 258 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
<tankf33der> i can corrupt internal state
<Regenaxer> Which internal state do you mean? Stack?
<tankf33der> hm
<tankf33der> pil64 too
<Regenaxer> Or like "ny last time? i.e. gc collects wrong stuff
<Regenaxer> In that case the symbol 'any' was collected aecause it was not protected in stack structures
<tankf33der> http://ix.io/2noc
<Regenaxer> The most common error when programming the interpreter
<tankf33der> like this.
<tankf33der> i just had fun.
<Regenaxer> :)
<Regenaxer> pico~(all) is ~ as a read macro
<Regenaxer> ie it *executes*
<Regenaxer> at read time
<Regenaxer> unpredictable results
<tankf33der> i see
<Regenaxer> But (head 10 (all)) should be fine
<Regenaxer> : (head 10 (all))
<Regenaxer> -> (! % & * + - / : ; =)
<Regenaxer> so pico~(all) destroyed something ;)
<tankf33der> it insert something
<Regenaxer> !
<tankf33der> in head.
<Regenaxer> not sure
<tankf33der> ok
<Regenaxer> It executed at read time (! ...)
<Regenaxer> but ! is not defined yet in pil2*
<Regenaxer> 1
<Regenaxer> So I'd expect an error ...
<Regenaxer> : (1 pico~(list 3 4) 9)
<Regenaxer> -> (1 $374470034353 (list 3 4) 9)
<Regenaxer> So this does not work as read macro (3 4)
<Regenaxer> It thinks it is a namespace access and creates a symbol
<Regenaxer> $374470034353
<Regenaxer> This works correctly:
<Regenaxer> : (1 pico ~(list 3 4) 9)
<Regenaxer> -> (1 pico 3 4 9)
<Regenaxer> The reader should give an error
<Regenaxer> if there is not a symbol after pico~
<tankf33der> yeah
<Regenaxer> Currently it creates a symbol without name
<Regenaxer> like $374470034353
<Regenaxer> and interns it
<Regenaxer> I make an error check here
<Regenaxer> : 'pico~(foo)
<Regenaxer> Bad input '('
<Regenaxer> ?
<Regenaxer> works
<beneroth> good improvement :)
<beneroth> nice find, tankf33der
<Regenaxer> Will release later. I started with 'line' yesterday an will finish it first.
mtsd has quit [Quit: Leaving]
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #picolisp
<Regenaxer> Brr, 'line' is funny
<Regenaxer> Rather complicated
<Regenaxer> for historical reasons
<beneroth> in pil, or you mean the general complexity of reading a "simple" line
<Regenaxer> Back in the old days imported data from relational DBs were in fixed-width format
<Regenaxer> no, in pil
<beneroth> unix text data files
<beneroth> ah
<Regenaxer> the 'cnt' arguments
<Regenaxer> for sublists
<Regenaxer> Seldom used nowadays
<Regenaxer> CSV data have some char to 'split'
<beneroth> wow I totally forgot about that
<beneroth> never used it
<Regenaxer> Better if line would split directly
<beneroth> yes, I still often to CSV, even for simple settings which are not worth to put into a database file
<beneroth> usually using TAB as separator
<Regenaxer> I could check for non-numeric args
<Regenaxer> yeah
<beneroth> yeah that would be a nice idea
<Regenaxer> But then it is even more complicated :)
<Regenaxer> hmm, maybe not so much more
<beneroth> on the other hand, often I parse CSV files anyway with (loop (skip "#") (T (eof)) ...)
<Regenaxer> I try ...
<beneroth> and then using (from) (till)
<Regenaxer> ok
<beneroth> gives more flexibility to what I want to parse as strings and what as lists
<Regenaxer> right
<beneroth> and finer control to detect invalid formatted files / rows
<Regenaxer> Though most common is (while (split (line) "\n") ...)
<beneroth> T
<Regenaxer> Nowadays we have "xlsx2csv"
<Regenaxer> Perhaps best
<Regenaxer> (in (list "xlsx2csv" "-dtab" "-aei" @)
<Regenaxer> takes Excel directly
<beneroth> yes this I also do
<beneroth> I don't see really any use for a fixed-size textual format...
<Regenaxer> yeah
<Regenaxer> But *if* you have, it is expensive to parse
<Regenaxer> so 'line' is very fast here
<beneroth> T
<beneroth> though what about (rd) ?
<Regenaxer> I try to extend for symbolic args
<Regenaxer> Binary?
<beneroth> I mean about raw byte readings...
<beneroth> aye
<beneroth> cumbersome, I know
<Regenaxer> T
<Regenaxer> especially for utf-8
<beneroth> ah, right
<Regenaxer> line is very useful, also because it accepts Mac files
<Regenaxer> with CR as delimitia
<Regenaxer> and CR+NL for DOS-style
<beneroth> though.. (char) would read a single utf-8 character, independent of its raw binary size, right?
<beneroth> T
<Regenaxer> ye
<Regenaxer> s
<beneroth> that has to be kept
<beneroth> I mean the mac/windows/unix linefeed chaos
<Regenaxer> yes
<Regenaxer> Chaos indeed
orivej has quit [Ping timeout: 258 seconds]
orivej has joined #picolisp
orivej has quit [Ping timeout: 256 seconds]
orivej has joined #picolisp
orivej has quit [Ping timeout: 256 seconds]
orivej has joined #picolisp
orivej_ has joined #picolisp
orivej has quit [Ping timeout: 264 seconds]
orivej_ has quit [Ping timeout: 260 seconds]
orivej has joined #picolisp
orivej has quit [Ping timeout: 246 seconds]
orivej has joined #picolisp
orivej has quit [Ping timeout: 260 seconds]
orivej_ has joined #picolisp
orivej has joined #picolisp
orivej_ has quit [Ping timeout: 272 seconds]
rob_w has joined #picolisp
orivej_ has joined #picolisp
orivej has quit [Ping timeout: 265 seconds]
orivej_ has quit [Ping timeout: 260 seconds]
orivej has joined #picolisp
orivej has quit [Ping timeout: 246 seconds]
orivej has joined #picolisp
orivej has quit [Read error: Connection reset by peer]
orivej_ has joined #picolisp
orivej_ has quit [Ping timeout: 265 seconds]
karswell has joined #picolisp
orivej has joined #picolisp
<Regenaxer> 'line' done
orivej_ has joined #picolisp
orivej has quit [Ping timeout: 272 seconds]
orivej_ has quit [Ping timeout: 265 seconds]
orivej has joined #picolisp
orivej has quit [Ping timeout: 246 seconds]
orivej has joined #picolisp
<tankf33der> i will have fun tomorrow
<Regenaxer> yeppi
orivej has quit [Ping timeout: 246 seconds]
orivej has joined #picolisp
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #picolisp
<tankf33der> tested one
<tankf33der> except one thing
<tankf33der> tested now, all ok, except one thing
<tankf33der> http://ix.io/2nrb
<tankf33der> ==========
<tankf33der> also i found super bracket mismatcj
<tankf33der> also i found super bracket mismatch
<tankf33der> [mpech@lambda pil21-tests]$ pil21 +
<tankf33der> : [42]
<tankf33der> ?
<tankf33der> (42) -- Super parentheses mismatch
<tankf33der> -> (42)
<tankf33der> [mpech@lambda pil21-tests]$ pil +
<tankf33der> : [42]
<tankf33der> :
<tankf33der> ==========
<tankf33der> afk.
<Regenaxer> Zero is an illegal argument to 'line', at least it makes no sense
<Regenaxer> I check the super parens
orivej has quit [Ping timeout: 272 seconds]
orivej has joined #picolisp
<Regenaxer> Super parens fixed
<tankf33der> but line output is different versus pil64
orivej_ has joined #picolisp
orivej has quit [Ping timeout: 265 seconds]
rob_w has quit [Quit: Leaving]
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
orivej has quit [Ping timeout: 240 seconds]
orivej has joined #picolisp
orivej has quit [Ping timeout: 246 seconds]
orivej has joined #picolisp
L1 has joined #picolisp
CORDIC has quit [Remote host closed the connection]
orivej has quit [Ping timeout: 260 seconds]
orivej has joined #picolisp