rob_w changed the topic of #picolisp to: PicoLisp language | Channel Log: https://irclog.whitequark.org/picolisp/ | Check also http://www.picolisp.com for more information || Attention due to latest spam floods this channel will only allow registered users to send messages - check https://freenode.net/kb/answer/registration
<aw-> freemint: sorry, was sleeping ;) re on-prem: it's a virtual machine (appliance) which builds virtual machines (appliances) for my customers so they can distribute their appliance to their customers - with their custom software etc. Inside it's all managed by PicoLisp, hundreds of different scripts for various tasks.
Edane14 has joined #picolisp
Edane14 has quit [Remote host closed the connection]
razzy has quit [*.net *.split]
razzy has joined #picolisp
UncleSamuel has joined #picolisp
RaptorJesus28 has joined #picolisp
UncleSamuel has quit [Remote host closed the connection]
RaptorJesus28 has quit [Remote host closed the connection]
JStoker21 has joined #picolisp
JStoker21 has quit [Remote host closed the connection]
Bahhumbug1 has joined #picolisp
Bahhumbug1 has quit [Killed (Unit193 (Spam is not permitted on freenode.))]
orivej has quit [Ping timeout: 240 seconds]
grumble21 has joined #picolisp
grumble21 has quit [Remote host closed the connection]
pierpal has quit [Quit: Poof]
pierpal has joined #picolisp
orivej has joined #picolisp
aw- has quit [Quit: Leaving.]
Guest17034 has joined #picolisp
Guest17034 has quit [Remote host closed the connection]
Guest27205 has joined #picolisp
Guest27205 has quit [Killed (Unit193 (Spam is not permitted on freenode.))]
tomaw18 has joined #picolisp
ohnx22 has joined #picolisp
orivej has quit [Ping timeout: 260 seconds]
tomaw18 has quit [Remote host closed the connection]
ohnx22 has quit [Remote host closed the connection]
werkin has joined #picolisp
werkin has quit [Client Quit]
werkin has joined #picolisp
<freemint> aw- so it is like proxmox but with the difference that it does not talk with virtual machines but with programs in virtual machines?
<freemint> aw- i was sleeping too
<freemint> i guess it is human
rob_w has joined #picolisp
mtsd has joined #picolisp
alexshendi has quit [Read error: Connection reset by peer]
<freemint> question: (out "file" (stuff)) is "file" the "current output channel"?
<freemint> I am asking because (out "file" (help 'car T)) prints to console not in the file
<freemint> only the "=========================””
<freemint> ends up in "file"
<freemint> The expected behavior is: Dumps the reference documentation for sym to the current
<freemint> (18 6 12) Termux
pierpal has quit [Quit: Poof]
<freemint> i checked whether it goes in the error stream, but it does not either
pierpal has joined #picolisp
<Nistur> mornin' all
<mtsd> Morning
<freemint> Good Morning
<Nistur> o7
alexshendi has joined #picolisp
<Regenaxer> freemint, right, "file" the "current output channel"
<Regenaxer> 'help' is a bin special it seems
<Regenaxer> It pipes to w3m, and it is the standard output of w3m which is seen. Outside of pil's control
<Regenaxer> Good morning Nistur
<Nistur> guten morgen :)
<Regenaxer> :)
alexshendi has quit [Ping timeout: 248 seconds]
<freemint> Regenaxer Thanks for the explanation i would never figured that out and i know how to work around that ... but my solution is not that pretty
<Regenaxer> You want the output of help in a file?
<Regenaxer> Then best copy and modify it so that w3m writes to the file perhaps
aw- has joined #picolisp
<aw-> freemint: no, not at all like Proxmox
alexshendi has joined #picolisp
<freemint> well my goal was to make Karteikarten for picolisp so i can learn about all the functions
<Regenaxer> Understand
alexshendi has quit [Read error: Connection reset by peer]
orivej has joined #picolisp
nou has joined #picolisp
nou has quit [Remote host closed the connection]
mdk11 has joined #picolisp
mdk11 has quit [Remote host closed the connection]
pierpal has quit [Quit: Poof]
pierpal has joined #picolisp
VampiricPadraig has joined #picolisp
VampiricPadraig has quit [Ping timeout: 276 seconds]
<freemint> Where would be the obvious place to put self written documentation for existing libs?
pierpal has quit [Quit: Poof]
pierpal has joined #picolisp
beneroth has joined #picolisp
<beneroth> hi all
<Regenaxer> freemint: Into Wiki?
<Regenaxer> Hi beneroth!
werkin has quit [Quit: Leaving]
<mtsd> Hi beneroth
bladernr13 has joined #picolisp
<freemint> Hi beneroth Hi mtsd
<freemint> That works too ...
<mtsd> Hi freemint
bladernr13 has quit [Remote host closed the connection]
<Regenaxer> brb
Regenaxer has left #picolisp [#picolisp]
Regenaxer has joined #picolisp
Regenaxer has left #picolisp [#picolisp]
Regenaxer has joined #picolisp
mtsd has quit [Quit: Leaving]
Regenaxer has left #picolisp [#picolisp]
alexshendi has joined #picolisp
Regenaxer has joined #picolisp
Regenaxer has left #picolisp [#picolisp]
Regenaxer has joined #picolisp
Strog20 has joined #picolisp
Regenaxer has left #picolisp [#picolisp]
Regenaxer has joined #picolisp
Strog20 has quit [Remote host closed the connection]
Regenaxer has left #picolisp [#picolisp]
Regenaxer has joined #picolisp
Regenaxer has left #picolisp [#picolisp]
Regenaxer has joined #picolisp
Regenaxer has left #picolisp [#picolisp]
Regenaxer has joined #picolisp
Regenaxer has left #picolisp [#picolisp]
Regenaxer has joined #picolisp
pierpal has quit [Read error: Connection reset by peer]
pierpal has joined #picolisp
Regenaxer has left #picolisp [#picolisp]
Regenaxer has joined #picolisp
Regenaxer has quit [Client Quit]
Regenaxer has joined #picolisp
Regenaxer has left #picolisp [#picolisp]
pierpal has quit [Ping timeout: 248 seconds]
Regenaxer has joined #picolisp
majestic28 has joined #picolisp
<razzy> hi, how is this happening? (let (setq Not "Evaluating" ) prg ) https://ptpb.pw/hhtF
<Regenaxer> You use 'let' in the wrong way
<Regenaxer> You bind 'setq'
<Regenaxer> (let (Var1 Val1 Var2 Val2)
<Regenaxer> or (let Var Val ...
<Regenaxer> See what I mean?
<Regenaxer> 'setq' is bound to the value of 'Not'
<Regenaxer> and the symbol "Evaluating" is bound to NIL
majestic28 has quit [Remote host closed the connection]
<Regenaxer> So perfect syntax, but most probably not what you intended
<razzy> aaaaah, i see,...
<Regenaxer> btw (> '100
<Regenaxer> numbers don't need to be quoted
<razzy> not working?
<Regenaxer> works though
<Regenaxer> but a function call overhead for nothing
<Regenaxer> (quote . 100) is a function call
crayon19 has joined #picolisp
<razzy> Regenaxer: i feel like basic picolisp should be more pure. expressed in lenght
<Regenaxer> Taking length of a buffer and appending is also expensive
<Regenaxer> Better 'make'
crayon19 has quit [K-Lined]
<Regenaxer> or in your case perhaps 'fifo'
<razzy> hmm hmm thx.
<Regenaxer> In reality 'length' is very seldom needed
freemint has quit [Ping timeout: 240 seconds]
<razzy> how do you keep list or buffer from overflowing?
<Regenaxer> Usually there is no overflow
<Regenaxer> no limit
<razzy> yeah, if you process small daa :]
<razzy> data
<Regenaxer> for small data it does not matter
<Regenaxer> for long lists length is very expensive
<Regenaxer> and append copies the whole first list
<razzy> how do you keep it from overflowing?
<Regenaxer> If I limit a list to a length, I do:
freemint has joined #picolisp
<razzy> woa,.. append not do
<Regenaxer> (and (nth Lst 99) (con @))
<Regenaxer> Cuts off cells after the 99th
<razzy> ok, if you want asynchonous process 80-99cells?
<razzy> do not loose ending cells?
<Regenaxer> Instead of
<Regenaxer> (while (> '100 (length Buffer))
<Regenaxer> (append Buffer (in In_open (char))) )
<razzy> yes
<Regenaxer> you do (make (do 100 (link (char))))
<Regenaxer> no copying or counting
<Regenaxer> and 'link' is very efficient
<Regenaxer> does not traverse the list
<Regenaxer> 'make' keeps a pointer to the last cell
<razzy> aaah :]
<razzy> is it normal to break and restart pil 10times in 30 minutes?
<Regenaxer> depends
<Regenaxer> Sometimes more often
pierpal has joined #picolisp
<Regenaxer> sometimes not for hours
<razzy> when trying new code
<Regenaxer> yes
<Regenaxer> You can just reload and debug
<Regenaxer> But sometimes a new start is easier
<razzy> i need to terminate it from htop
<razzy> easier way? how to automate it?
<Regenaxer> What is htop?
<Regenaxer> Also, don't make an 'in' environment per char
<Regenaxer> (in In_open (char))
<razzy> i need to kill it from command line
<Regenaxer> better (in File (make ....
<Regenaxer> Terminate with ^D
<Regenaxer> is the easiest
<Regenaxer> or : (bye)
<razzy> i do not think so, i need open stream
<Regenaxer> Then better not terminate
<Regenaxer> (load "source.l")
<razzy> i think (in File (make is not better, i need open stream
<Regenaxer> Globally opened?
<razzy> i need to read as needen
<razzy> needed
<Regenaxer> ok
<Regenaxer> moment
<razzy> could be opened locally, but idk how to do that
<Regenaxer> Your fragment would be:
<Regenaxer> (de Compress (In_file Out_file Comp_table)
<Regenaxer> (let (In_open (open In_file) Out_open (open Out_file))
<Regenaxer> (make (do 100 (link (char))) ) ) )
<Regenaxer> Note that (append Buffer (in In_open (char)) does nothing
<Regenaxer> append needs two lists
<Regenaxer> or, to be exact, puts the second arg into the CDR of a copy of the first
<razzy> where i have my buffer to work with?
<Regenaxer> so you get (1 2 3 . c)
<razzy> how do i call to replenish my buffer?
<Regenaxer> How about:
<Regenaxer> (de Compress (In_file Out_file Comp_table)
<Regenaxer> (In_open (open In_file)
<Regenaxer> (let
<Regenaxer> Out_open (open Out_file)
<Regenaxer> Buffer (make (do 100 (link (char))) ) )
<Regenaxer> ... ) )
<Regenaxer> ok, 'in' is missing
Keygen has joined #picolisp
<Regenaxer> (de Compress (In_file Out_file Comp_table)
<Regenaxer> (In_open (open In_file)
<Regenaxer> (let
<Regenaxer> Out_open (open Out_file)
<Regenaxer> Buffer (in In_open (make (do 100 (link (char))))) )
<Regenaxer> ... ) )
<Regenaxer> So 'Buffer' has the first 100 bytes
<Regenaxer> or NILs if the input is shorter
<razzy> and when i call make... again, it take second 100bytes?
<Regenaxer> yes
<Regenaxer> I still believe you don't need 'open' here
<Regenaxer> (in .. (out ... (char) ... (print) ...
<Regenaxer> I think I have no case here where I use 'open' in this way
Keygen has quit [Remote host closed the connection]
<razzy> you may be underused open :]
<razzy> i like it very much. so far
<razzy> everything should be streamed
<Regenaxer> yes, you have streams
<Regenaxer> I think you can go,
<Regenaxer> (de Compress (In_file Out_file Comp_table)
<Regenaxer> (out Out_file
<Regenaxer> (in In_file
<Regenaxer> (let Buffer (make (do 100 (link (char))))
<Regenaxer> ... ) ) ) )
<razzy> i would like to have local streams
<Regenaxer> in "..." you have both streams open
<Regenaxer> yes, local
<Regenaxer> sorry, must go
<Regenaxer> back later
<razzy> bl
<razzy> thx
<razzy> i do not understand your last code
mindjuju7 has joined #picolisp
mindjuju7 has quit [Remote host closed the connection]
alexshendi has quit [Read error: Connection reset by peer]
<Regenaxer> ret
<Regenaxer> The work body is the (let Buffer
<Regenaxer> there you can operate on your 100 characters
<Regenaxer> (I have no concrete idea what you plan and if this buffer approach is good)
pierpal has quit [Quit: Poof]
pierpal has joined #picolisp
<Regenaxer> afp
<razzy> what is considered S-expression
<razzy> () ?
<razzy> no other chars?
<freemint> an s-expr is an atom or a list
<freemint> atoms are numbers or symbols
<freemint> list are collections of s-expr
<razzy> i mean when i (read) string of bytes, how it will recognise?
<freemint> read takes lisp code as input
<freemint> (in general)
<razzy> yop, but if you put random string as input
<razzy> how will it recognise lisp code
<freemint> well in this case type (read) in the repl and look like how it behaves
<razzy> i do not want to dissassemble every scenario
<freemint> it will look for read-macros, "", and () and behave as expected
<freemint> non "quoted" things will be seen as internal symbols
<freemint> does that help?
<freemint> read macros are ` and ~ and .
<freemint> if you put a random string("quoted symbol") in the input it will be processed as transient symbol (symbol in "quotes" )
<freemint> razzy what do you want to do?
<freemint> if you want to parse a custom format use a custom reader is the general rule
freeemint has joined #picolisp
freemint has quit [Ping timeout: 268 seconds]
pierpal has quit [Quit: Poof]
pierpal has joined #picolisp
<Regenaxer> ret
pierpal has quit [Quit: Poof]
pierpal has joined #picolisp
erkin has joined #picolisp
freeemint has quit [Quit: Yaaic - Yet another Android IRC client - http://www.yaaic.org]
freemint has joined #picolisp
<freemint> wb
<Regenaxer> Good answers freemint
<freemint> thanks ... me asking similar questions in the past paid off
<Regenaxer> :)
<freemint> anyways i was think that *if* i make Karteikarten for normal picolisp i might as well make some for the more popular libraries
rob_w_ has joined #picolisp
alexshendi has joined #picolisp
<freemint> and *if* this done (beginning next month) i could share the results
rob_w has quit [Ping timeout: 260 seconds]
<Regenaxer> Great!
timfi has joined #picolisp
timfi has quit [Remote host closed the connection]
<freemint> i might want to say *potentially* Great!
<razzy> Karteikarten?
<razzy> thx
<razzy> freemint: thx
<razzy> somebody working with emacs? have problems with picolisp-mode
n0nada24 has joined #picolisp
<freemint> Karteikarten might be translated as flash cards, a tool for learning facts where you have questions and solutions on different sides of the card.
<razzy> lol, might be fun
<razzy> algorithm game :D
n0nada24 has quit [Remote host closed the connection]
beneroth has quit [Ping timeout: 272 seconds]
pierpal has quit [Quit: Poof]
pierpal has joined #picolisp
beneroth has joined #picolisp
<beneroth> re
<beneroth> razzy, I'm working with emacs. I use the picolisp-mode from the picolisp distro (in @lib/el)
<beneroth> I use it with paredit, love it. but I usually don't use picolisp repl inside emacs, I work with tilling window manager (i3wm.org) and start picolisp repl in a terminal.
<razzy> beneroth: i try to use MELPA-unstable picolisp-mode and it is buggy
<razzy> beneroth: i also miss reval-region
<razzy> *ecal-region
<razzy> *eval-region
<beneroth> no idea, sorry
<razzy> uff, too late, too soggy
<beneroth> np
<razzy> beneroth: did you ever used eval-region in elisp?
<razzy> you hilight region and execute command and it will evaluate
<beneroth> yes. works in my emacs.
<razzy> i want it for picolisp
<beneroth> are you using the picolisp-mode coming with picolisp? and did you follow the @lib/el/README ?
<beneroth> works in my emacs in picolisp-mode (first starting a picolisp repl inside emacs with "Run inferior picolisp", then marking an picolisp expression in another buffer and run evaluate region)
<razzy> not yet
<beneroth> I rarely use it
pierpal has quit [Quit: Poof]
pierpal has joined #picolisp
erkin has quit [Remote host closed the connection]
JesseOor has joined #picolisp
JesseOor has quit [Remote host closed the connection]
rob_w_ has quit [Quit: Leaving]
pierpal has quit [Ping timeout: 240 seconds]
ptx07 has joined #picolisp
tallguy21 has joined #picolisp
ptx07 has quit [Remote host closed the connection]
tallguy21 has quit [Ping timeout: 256 seconds]
iamtakingiteasy has joined #picolisp
iamtakingiteasy has quit [Remote host closed the connection]
NB0X-Matt-CA has quit [Remote host closed the connection]
NB0X-Matt-CA has joined #picolisp
Fieldy11 has joined #picolisp
Fieldy11 has quit [Remote host closed the connection]