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
alexshendi has quit [Remote host closed the connection]
chexum has quit [Remote host closed the connection]
chexum has joined #picolisp
clacke has joined #picolisp
rob_w has joined #picolisp
clacke has quit [Read error: Connection reset by peer]
pfd has joined #picolisp
pfd has quit [Quit: Client closed]
genpaku has quit [Remote host closed the connection]
genpaku has joined #picolisp
aw- has quit [Ping timeout: 260 seconds]
aw- has joined #picolisp
razzy has joined #picolisp
<razzy> hello everyone :]
<abu[m]> Hi razzy! ☺
<Hunar> Hello :)
<Hunar> I have a general lisp question. can I loop through two lists at the same time using only recursion? not using any other index based loop or built in function. So passing this
<Hunar> '((1 2 3) (4 5 6)) and it would result in something like '((1 4) (2 5) (3 6))
<abu[m]> Normal mapping functions should work: (mapcar list (car L) (cadr L))
<abu[m]> Or do you mean not even mapcar, because it is built-in?
<Hunar> yes, but that would be in the (built in functions) catagory, I recently found out about SectorLisp which is the closest thing to the original Lisp, it doesnt even have numbers. it has lambda and simple stuff like Eq cons NIL (I'll post the complete list of functions later) so you only have recursion, can I implement it in that case?
<abu[m]> yes
<Hunar> I scratched my head for a few hours and couldn't get any idea that worked
<abu[m]> I post something
<Hunar> :)
<abu[m]> Must be translated to other Lisps
<Hunar> Aha :D now I understand
<Hunar> Thank you ! :)
<abu[m]> ☺
rob_w has quit [Remote host closed the connection]
<Hunar> I think this is all of the functions that SectorLisp has (NIL CONS QUOTE ATOM EQ LAMBDA COND CAR CDR )
<abu[m]> You need also 'de' or 'defun' or so
<abu[m]> And no 'set'?
<Hunar> It uses (I forgot the name) to avoid defun .. like this ( '((Add) (Add 2 3)) '((A B) (+ 1 2)) )
<Hunar> same trick for setting variables
<abu[m]> Looks like some association list
<Hunar> Finally found it, the trick is called Y-Combinator. here instead I define PI as 3 and use add function twice while only defining it once... (full message at <https://libera.ems.host/_matrix/media/v3/download/libera.chat/28d6603250fe9826374dcbb053b4c56f54c7b451>)
<Hunar> without de defun or setq
<Hunar> But i think everything is immtutable since there is no set
<abu[m]> Ah, yes, Y-Combinator. There is even a PicoLisp version in RosettaCode.
<abu[m]> and, yes, it does not "set" anything. Builds a function and calls it
<Hunar> :)
razzy has quit [Ping timeout: 256 seconds]
v_m_v has joined #picolisp
<abu[m]> This is well along the PicoLisp line: https://whitep4nth3r.com/blog/html-is-all-you-need-to-make-a-website/
v_m_v has quit [Ping timeout: 268 seconds]
v_m_v has joined #picolisp
v_m_v has quit [Remote host closed the connection]
Iacob has quit [Ping timeout: 256 seconds]
v_m_v has joined #picolisp
Iacob has joined #picolisp
v_m_v has quit [Remote host closed the connection]
v_m_v has joined #picolisp
v_m_v has quit [Remote host closed the connection]
v_m_v has joined #picolisp
v_m_v has quit [Remote host closed the connection]