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
aw- has quit [Quit: Leaving.]
orivej has joined #picolisp
aw- has joined #picolisp
mmmattyx has quit [Quit: Connection closed for inactivity]
mtsd has joined #picolisp
mtsd has quit [Client Quit]
mtsd has joined #picolisp
aw- has quit [Quit: Leaving.]
rob_w has joined #picolisp
rob_w has quit [Remote host closed the connection]
aw- has joined #picolisp
rob_w has joined #picolisp
olaf_h has joined #picolisp
<olaf_h> greetings from cold munich :-)
<Regenaxer> Hi olaf_h!
<Regenaxer> Greetings from cild Augsburg!
<Regenaxer> cold
<olaf_h> :-)
<olaf_h> so far it worked well yesterday, Regenaxer, thanks for your support!
<Regenaxer> :)
<olaf_h> in the end I used 1 symbol only and transferred the svg element id as payload of serverSend
<Regenaxer> ok
<olaf_h> browsers limitate the number of possible connections of this kind to '6' or so
<Regenaxer> Yeah, I read that too
<Regenaxer> I think I use always only one
<Regenaxer> in the few cases I used serverSentEvents
<Regenaxer> 'ssEvt' closes automatically
<olaf_h> i am still dreaming of an picolisp 'svg typewriter' where i enter short commands an picture will change immediately without reloading or so
<Regenaxer> Nice, yes. Should be doable
<olaf_h> that's the reason why was so excited about the ssE
<Regenaxer> Something how vip handles ASCII drawings
<Regenaxer> BTW, I think I explain Vip REPL next PilCon
<olaf_h> fine, i plan to take part, so that would be great ..... and perhaps drives me to install pil21 in at least one instance ....
<Regenaxer> yes :)
<Regenaxer> Why do you still use pil64?
<Regenaxer> I mean, just use testing in Debian
<olaf_h> lazyness I think, pil64 was easy to install per sudo apt install and did not require any clang dependencies or so
<Regenaxer> Ubuntu?
<olaf_h> i am working on linuxmint in most virtual machines, yes ubuntu derivate
<Regenaxer> OK, so Debian below it
<Regenaxer> Not sure if Mint can access "testing" packages
<Regenaxer> cause then also just "sudo apt install"
<Regenaxer> apt -t sid picolisp or so
<Regenaxer> $ apt list -a picolisp
<Regenaxer> Listing... Done
<Regenaxer> picolisp/unstable,now 21.1.8-1 amd64 [installed]
<Regenaxer> picolisp/stable 18.12-1 amd64
<Regenaxer> This is Debian buster though
<olaf_h> on each way i would have to investigate, so it's much more easy for me to run pil64
<Regenaxer> true
<olaf_h> i think i compiled pil21 successfully on some machine ..... perhaps i try again ..... vip repl sounds very interesting to me
<Regenaxer> Yes. Lots of things changed meanwhile, since 2018
<Regenaxer> also vip
<olaf_h> great.
aw- has quit [Quit: Leaving.]
<olaf_h> on LinuxMint20 derived from ubuntu 20.04 focal fossa pil21 compiled successfully by following the steps in the INSTALL.txt.
<olaf_h> ./pil lib/test.l -bye + produced OK.
<olaf_h> so no trouble at all
<beneroth> hi olaf_h
<beneroth> nice to see you here :D
<olaf_h> hi beneroth, thank you :-)
<olaf_h> nice to see you :)
<beneroth> :)
<beneroth> I'm nearly always online here
<olaf_h> yes, it's me who is rare here, i know
<olaf_h> i try to learn that asking will save time
<beneroth> yeah well, better this way than other way around. some people get also into the habit of asking without ever trying themselves or even looking up the doc.
<olaf_h> but it's hard to learn
<beneroth> everything worth doing is hard in a way :)
<beneroth> just come here and ask :D
<beneroth> gibt ja ein paar Eigenheiten ;-)
<olaf_h> yes, sometimes i admire those guys who ask without thinking a minute by their own ... :-)
<beneroth> so you are using pil for web applications? public ones or business internal ones?
<olaf_h> die Eigenheiten machen es ja auch interessanter ;-)
<beneroth> I've found such guys deeply disrespectful
<beneroth> I've got socialised to hacker/programming communities in IRC in my teenage years, and a core value I relate with that is respect for the lifetime of others
<olaf_h> ... good old times ... :-) .....
<olaf_h> i would like to build web apps with picolisp, because each time i code with it feels very good
<beneroth> asking is welcome that is so wonderful about IRC, you can talk directly to the original creators, doesn't matter if its some hobbyist or someone with a turing award...
<beneroth> yeah
<beneroth> much less code to write than with other stacks
<olaf_h> but i never studied informatics or so, i'm just interested in those things
<beneroth> and much more flexible, more control
<beneroth> but sometimes you need to find something out yourselves where in other stacks you can use something ready-made
<olaf_h> and so i'm missing some of the concepts, that other guys could easily rely on (correct word? sich drauf beziehen)
<beneroth> korrekt
<beneroth> or maybe: relate to
<beneroth> rely is mehr: sich verlassen können / verlassen auf
<beneroth> relate = beziehen, wie in relation
<beneroth> Ich hab eine Informatik/Programmierlehre gemacht, und sonst nix weiter, kein Studium. Aber mehr im Selbststudium gelernt als sonst, hab mehr in meiner Freizeit programmiert als in der Arbeitszeit xD
<olaf_h> and one thing I always stumble upon: forget that the code after 'button click' in the pil gui will run on the server, not in the client
<beneroth> yeah form.l webframework is conceptually very different to current mainstream webstacks
<olaf_h> ja, ich bin auch eher autodidaktisch gebildet
<olaf_h> at the moment i play with the serverSiteEvent to change svg elements
<beneroth> Regenaxer ist ja eigentlich als Wetterfrosch ausgebildet, wenn man das so formulieren darf xD
<beneroth> Du hast einen IT-Hintegrund?
<beneroth> what is the final output of your app - picture/pdf?
<beneroth> or the SVG is to render/display some information in itself?
<beneroth> I've used lib/svg.l to produce PDF (reports, invoices) but not much yet for SVG pictures
<olaf_h> IT-Hintergrund ist selbst angeeignet, habe aber seit 25 Jahren damit mein Geld verdient und muss es immer noch
<beneroth> I'd like to do a kind of interactive ERD diagram editor with SVG at some point
<olaf_h> what does ERD mean?
<beneroth> Entity Relation Diagram
<beneroth> so a picture of entites (or tables) of a database with lines between them to show their database relations
<olaf_h> sure i know, didn't recognize the abbreviation
<beneroth> visualization of (parts) of a database schema
<beneroth> yeah
<beneroth> I've got the same feeling, I often know concepts but not the name for it
<olaf_h> i totally agree
<beneroth> and often concepts are named differently in every programming language and another name again in academia
<beneroth> or worse: same name but meaning totally different things
<olaf_h> yeah, but it's so helpful if one knows them .....
<beneroth> T
<beneroth> terminology allows communication
<olaf_h> at the moment my 'svg typewriter' would only change the seen svg image in the browser.
<beneroth> the input/UI is completely separate from the image? or do you add meaningful hyperlinks into the SVG (<a> tags) ?
<olaf_h> but in emacs i would like to use svg instead of ditaa/plantuml or so
<olaf_h> did not think so far - i would suggest, that i would create a svg file
<olaf_h> cause files don't worry if browser exits
<olaf_h> so the 'typewriter' would change a picolisp object data model and the view of that via ssE -- but thats future, at the moment
<beneroth> oh nice plan
<olaf_h> at the moment i only want to have a small gui where i can try expression
<beneroth> good approach
<olaf_h> oh really? thanks.
<olaf_h> in svg i like, that 'the object' are nearly there .....
<olaf_h> my first programming experiences all were object oriented
<olaf_h> xlisp smalltalk ....
<olaf_h> so i always 1st think of objects
<olaf_h> friends of mine (who are thinking 1st in data, then in functions to handle that) are saying 'olaf is rebuilding the world to solve that little problem' :-)
<olaf_h> so for me svg seems ideal: thinking of 'well i would like to have a green rectangle with rounded corners and a line of text above' requires just that: write xml elements for a rect and for a text afterwards .... and svg can include svg elements, so a little post-it-like svg-image is can stand for it's own in a viewer and it can be included in a bigger svg wallpaper to show up there
<Regenaxer> ret
<olaf_h> i used the xfce desktop wallpaper as a notepaper, placing text on it by shellscripting imagemagick calls
<clacke> greetings from a cold (20 deg C) HK
<clacke> vip repl, is that similar to emacs with inferior-lisp?
<Regenaxer> olaf_h, svg typewriter: Perhaps you can look at "blitzmenue.7fach.de"
<olaf_h> hi clacke - :-)
<Regenaxer> it does on-the-fly svg -> pdf
<Regenaxer> via canvas
<clacke> you have a file and also a repl, so you can execute forms from the file in the repl?
<Regenaxer> hi clacke!
<Regenaxer> clacke, I don't knmw emacs well enough
<clacke> oh wow, svg->pdf interactive? I just listened to a podcast episode from 6 years ago that suggested someone solve html->pdf
<Regenaxer> I is basically that the command window is normally editable
<Regenaxer> In vim it is a single line
<Regenaxer> but in Vip you can resize it
<Regenaxer> then execute any Lisp expression in it
<clacke> oh cool
<olaf_h> but vip knows the running pil environment, right?
<Regenaxer> yes
<clacke> makes me think of C64 BASIC
<Regenaxer> it runs *in* the env
<Regenaxer> You can of course interact with vip itself too
<Regenaxer> it is just a namespace in the interpreter
<Regenaxer> Unfortunately vip is not documented
<olaf_h> so the vip repl can get infos that in other editors only the debugging module can?
<Regenaxer> almost not at all
<Regenaxer> you mean debugging module of the editor?
<Regenaxer> So yes
<Regenaxer> vip is just a lib in pil
<Regenaxer> If I do in bash $ vi file
<Regenaxer> then pil is started
<Regenaxer> if in the pil repl : (vi "file")
<olaf_h> ..... someone could dream of very sophisticated IDEs for pil using this ......
<Regenaxer> then in the current repl
<Regenaxer> So lets dig into it in 2 days
<olaf_h> i'm looking forward!
<Regenaxer> I must sort my thoughts too
<Regenaxer> I never documented it in an organized way
<olaf_h> (pil21 installed finished without any trouble)
<Regenaxer> Great==
<Regenaxer> Great!!
<olaf_h> for me, start with the easy things
<Regenaxer> yes, good
<olaf_h> how to inspect symbols
<olaf_h> sth like that basics
<Regenaxer> right
<olaf_h> when i come into the !-prefixed line of the repl, i always don't know what to do,
<olaf_h> but that's another topic, i think
<Regenaxer> you can inspect the env
<Regenaxer> variables etc
<Regenaxer> Then just <enter> to exit
<Regenaxer> empty line exits *any* repl
<olaf_h> ok
<Regenaxer> and a break- or error starts a sub-repl
<Regenaxer> We can also show this in PilCon
<Regenaxer> might be good
<olaf_h> yes
<Regenaxer> I took a note
<Regenaxer> Will think of some typical examwles
<Regenaxer> examples
<olaf_h> concerning the question from @clacke above: you have a file and also a repl, so you can execute forms from the file in the repl?
<Regenaxer> ah, no, not really
<olaf_h> because in vip i'm in the repl, that would simply work by '(load'ing that file, right?
<Regenaxer> only in the bottom window
<Regenaxer> yes
<Regenaxer> :l
<Regenaxer> this loads the current file (executes it)
<Regenaxer> But it cannot execute a single exwression in it
<Regenaxer> in the file
<olaf_h> so,if i would have some 'debuggin-helper-functions.l' i could load them at that moment into the currently used env?
<Regenaxer> In the command window it executes it
<Regenaxer> yes
<olaf_h> oh okay,so we have 'command window' and 'bottom window'?
<Regenaxer> no
<Regenaxer> they are the same
<Regenaxer> as in vi / vim
<Regenaxer> the bottom line is the command line
<Regenaxer> It has its separate editing style in vim
<Regenaxer> In Vip it is a normal edit window
<Regenaxer> edited with vi-style commands
<Regenaxer> and <enter> on a line evaluates it
<Regenaxer> There is a little trick
<Regenaxer> the space
<olaf_h> and in emacs i could choose between eval-sexp , eval-region and eval-buffer
<Regenaxer> I think I explained shortly last PilCon
<Regenaxer> ok
<Regenaxer> this is not in vip
<Regenaxer> but one could define it e.g. as a function key
<olaf_h> ah okay, you will show us
<Regenaxer> yes
<Regenaxer> I never needed that feature, loading a single expression
<olaf_h> PilCons are so full of info that I can't remember all
<Regenaxer> loading the whole file is easier
<Regenaxer> I always follow the rule that a file should be reloadable any time
<Regenaxer> (except er.l files though)
<Regenaxer> And a full reload is so fast it does not matter
<Regenaxer> Besides editing files, Vip also allows to edit symbols directly in memory
<Regenaxer> i.e. value and properties
<olaf_h> which may be overwritten after reload?
<Regenaxer> also database symbols
<Regenaxer> yes, if you then load the original source
<Regenaxer> In pil64 this was a separate 'edit' function
<Regenaxer> it is no longer in pil21
<olaf_h> ah okay
<Regenaxer> Indeed a bit confusing. So many ways to start vip
<Regenaxer> Either from bash or the pil repl, and editing files, sources, or direct symbols
<Regenaxer> also options for search pattern and line number
<Regenaxer> I must clean this up first in my mind
<Regenaxer> I use it all day without thinking
<olaf_h> i think i would use the vip more as a debugger than as an editor, i think i would write code in emacs and if i come in trouble, than open the file in vip to profit of the inspection possibilities. Or is that totally wrong?
<Regenaxer> As a debugger it is not better than the nermal repl
<Regenaxer> normal repl
<Regenaxer> I think the normal repl is even more convenient
<olaf_h> yes, but vip offers both - and otherwise i check in pil repl and then change my file in emacs
<Regenaxer> yes
<olaf_h> other guys might be intested in differences of using vip vs vim, which they are used to
<Regenaxer> I normally do that too. Edit in a separate terminal
<Regenaxer> Vim is much more powerful, but not so consistent
<olaf_h> perhaps in the Pilcon a few words concerning the features, a vim-user will miss in vip? I do not know so much, but I would think of 'works copy-paste the same?' are there registers or what vim offers for storing values
<olaf_h> i remember that vertically split windows were not possible
<Regenaxer> yes, copy ("y") and paste with "P" and "p"
<Regenaxer> "x for registers
<Regenaxer> 'x for marks etc.
<olaf_h> is that same as in vim or different?
<Regenaxer> yes, only horizontal split
<Regenaxer> I think the same
<Regenaxer> Vim support other character codes
<Regenaxer> Vip is only utf8
<Regenaxer> And very large files get slow in Vip
<Regenaxer> not so efficient, as it uses a list of lists of characters
<olaf_h> very large means what? 1 MB or 100K
<Regenaxer> 100 MiB perhaps
<Regenaxer> I MiB is no problem
<olaf_h> okay, a single 100_MiB.l code file could contain the programmed answer to all questions :-)
<Regenaxer> Could be fixed by using an index, but I prefer to keep it simple
<Regenaxer> well, I edit everything with Vip
<Regenaxer> also mbox files, so I notice sometimes
<olaf_h> ah,okay, i see
<Regenaxer> if mails contain pdfs and images
<Regenaxer> and mails are often not utf8
<Regenaxer> but it works as long as I read only
<olaf_h> for programmers it might be interesting too, if there are any possibilities to 'insert one own's functionality in vip'
<Regenaxer> sure
<olaf_h> in emacs are hooks a common place to add own functions
<Regenaxer> you can put anything into ~/.viprc
<Regenaxer> I have my own stuff there
<olaf_h> so in PilCon (perhaps not at the beginning) you could say sth to that, too.
<Regenaxer> ik
<Regenaxer> ok
<olaf_h> one of the last times, you commented some file with words 'this is a template i often use'
<Regenaxer> in editing?
rob_w has quit [Remote host closed the connection]
<Regenaxer> I have files "template" in many directories
<Regenaxer> eg for letters in TeX
<Regenaxer> or for doc/
<Regenaxer> and also gui
<olaf_h> for attracting new user to picolisp I think they could profit from templates a bit like pattern or so ....
<Regenaxer> right
<olaf_h> e.g. a standard gui_app_file.l which offers the skeleton of :8080-ready app
<Regenaxer> not sure, the needs are very special in each case
<Regenaxer> ah
<Regenaxer> not for the app, but for a single entity
<olaf_h> I think we have some examples in the wiki - your phonegui example zum Beispiel
<Regenaxer> yes, but a bit old
<olaf_h> could be updated, does not matter, what i mean is thinking more of the point of view of an impatient user with scripting knowledge in another language (like me, of course ..., though I try hard to become more patient :-) ) being able to use picolisp in a more create-something-out-of-the-box way
<olaf_h> but it might be, that it's too easy to fall into traps with picolisp so that using a e.g. phone-gui-template does not help because chaning it without picolisp knowlede will always break the app
<olaf_h> i will think further on this .... imagine an user opening pilBox for the first time after installing it.
<Regenaxer> I see, yes
<olaf_h> if there would be a 'template sandbox' app or so besides the useful stuff (calculator, radio ....)
<Regenaxer> I think app/* is good for that
<Regenaxer> it has most basic stuff for a DB app
aw- has joined #picolisp
<Regenaxer> And the sample apps in PilBox
<olaf_h> what do you mean bei app/* ?
<Regenaxer> these are also up-to-date
<Regenaxer> the demo app directory
<olaf_h> ah,okay, i looked in pil21 ..... my fault
<Regenaxer> also at https://picolisp.com/app
<Regenaxer> app/* is separate now
aw- has quit [Quit: Leaving.]
<olaf_h> the demoApp is superb for interested users and a wonderful showcase, but for 'just-play-abit-around-because-im-courious'-users it's too much, i think.
<Regenaxer> T
<Regenaxer> The simplest GUI/DB example is in the wiki iirc
<Regenaxer> a single form address database
<olaf_h> yes, i think more of these
<olaf_h> i will look into those when thinking more about this topic
<olaf_h> yes, I took it myself as a basis for a bank accounting app
<Regenaxer> cool
<olaf_h> ... and there arised questions when I remember right ... and i wondered whether these questions arise because i had to switch to the demoApp examples to make it right.....
<olaf_h> ... but i worked around the questions und still use it from time to time .... i have to look into it
<olaf_h> have you ever seen a puzzle-tile based programming language/ide like scratch ?
<olaf_h> ich kann das auf englisch nicht gut ausdrücken, aber irgendwie habe ich das Gefühl, dass man lisp-Code - aufgrund seiner Listenstruktur - relativ einfach in solche 'Bausteine' oder 'pattern' oder 'templates' aufteilen können müsste .... natürlich ohne die puzzle-gui .... nur als code-snippets .... hmmm, ich werde weiter drüber sinnieren, und ggf. wieder mal versuchen, das verständlicher rüberzubringen
<Regenaxer> Sorry, we have Handwerker here all day, so some interruptions
<olaf_h> by 'bank accounting app' i solely mean a list of done money transfers which I imported as pdf, no hbci app :-)
<olaf_h> no problem at all
<Regenaxer> yes, hbci is heavy stuff
<olaf_h> i do not know, what 'bank accounting app' stands for, so I wanted to clearify
<Regenaxer> T
<beneroth> ret
<Regenaxer> cheers!
<beneroth> sorry olaf_h I was gone then busy without saying
<beneroth> cheers Regenaxer !
<beneroth> clacke, yeah vip is kinda like emacs inferior/superior/replthingynameforgotten
<beneroth> olaf_h, in terms of IDE, I believe something like jupyter notebook (webapp IDE for python machine learning programming) might be excellent for picolisp
<olaf_h> hi beneroth, no problem at all, regenaxer took over, so I could talk further on without interruption :-)
<olaf_h> I use the org-mode with it's org-babel parts, which enable nice intermingling (?) of text and source code and eval regions - thanks to Thorsten Jolitz there is a picolisp-mode wich supports the sourcecode evaluation inside the emacs buffer. Jupyter looks too big for my purpose - but indeed looks very interesting.
<olaf_h> have a nice evening, see you next time
<Regenaxer> You too olaf_h!
<beneroth> you too olaf_h :)
<beneroth> [OT] fun video about how specific programmers have to talk to machines https://9gag.com/funny/aAbgWv0
olaf_h has quit [Quit: Leaving]
mmmattyx has joined #picolisp
mtsd has quit [Ping timeout: 265 seconds]
aw- has joined #picolisp