beneroth changed the topic of #picolisp to: PicoLisp language | The scalpel of software development | Channel Log: https://libera.irclog.whitequark.org/picolisp | Check www.picolisp.com for more information
beneroth has quit [Quit: Leaving]
corecheckno has joined #picolisp
iogrt has joined #picolisp
<iogrt> Hello, first of all. thanks for being a part of picolisp, it combines a bunch of ideas I love. I'm playing a lot with external symbols and with pilog
<iogrt> that said. I'm finding this very odd:
<iogrt> ? {20}
<iogrt> -> NIL
<iogrt> ? (show '{20})
<iogrt> {20} ((name) (put *DB name ..))
<iogrt> -> {20}
<iogrt> ? {20}
<iogrt> -> ((name) (put *DB name (new T)))
<iogrt> how come {20} is only defined after I show it?
<abu[7]> This is because just 'eval'ling a symbol does not fetch it. Only access functions do that
<abu[7]> Reason is efficiency
<abu[7]> eval should be very fast
<iogrt> Hi abu, so how could I fetch the symbol, eval it?
<abu[7]> (val '{sym})
<abu[7]> Usually this is never necessary
<abu[7]> because external syms are never accessed by name
<iogrt> hmm, then when is it necessary?
<iogrt> I see. Well that's how I was intending on using them
<abu[7]> Yeah
<abu[7]> Usually we don't know the sym by namem
<abu[7]> name
<iogrt> I was planning on storing functions in a database and just have function calls be done by reference
<iogrt> reference being the external sym
<abu[7]> ok, good
<iogrt> but that doesn't seem possible right? having (de myfun () ({20} ...)) would be unreliable. I'd need always to val it
<abu[7]> (de myfun () A(... get symbol) ...
<abu[7]> (de myfun () ((... get symbol) ...
<iogrt> yeah. At that point might aswell load the functions from the database and assign them to actual symbols
<abu[7]> eg. (with (db 'key '+Cls Key) ((: fun) Args]
<iogrt> I see, "key" should be my reference, not the external symbol id
<abu[7]> yeah
<iogrt> I'm not even playing with classes yet. I'm sure I'll need them
<abu[7]> If you like, we can talk about that tomorrow at Fridays for Functions
<abu[7]> I'm a bit in a hurry atm
<iogrt> what's that?
<iogrt> thanks
<abu[7]> :)
<abu[7]> It is over 9 hours
<abu[7]> so perhaps it overlaps with your time zone
<iogrt> I'm in gmt+1 so it overlaps with my work hours
<abu[7]> 👍
<iogrt> but I'll find some time to join, see you tomorrow
iogrt has quit [Quit: Client closed]
iogrt has joined #picolisp
iogrt has quit [Client Quit]
<aw-> abu[7]: it's actually 18:00 - 2:00 in Tokyo, but thanks for thinking about me ;) ;) ;)
<aw-> i don't know how/why I've been missing these all this time
<aw-> perhaps i'll drop-in tonight if I remember