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
orivej has quit [Ping timeout: 244 seconds]
shah3 has joined #picolisp
shah3 has quit [Remote host closed the connection]
depleted has joined #picolisp
Regenaxer has quit [Ping timeout: 255 seconds]
depleted has quit [Ping timeout: 240 seconds]
ktechmidas has joined #picolisp
ktechmidas has quit [Remote host closed the connection]
FiendKing04 has joined #picolisp
Guest49844 has joined #picolisp
FiendKing04 has quit [Ping timeout: 240 seconds]
Guest49844 has quit [Ping timeout: 244 seconds]
Edane28 has joined #picolisp
Edane28 has quit [K-Lined]
karswell_ has quit [Ping timeout: 240 seconds]
nonlinear is now known as NB0X-Matt-CA
thunderrd28 has joined #picolisp
thunderrd28 has quit [Killed (Sigyn (Spam is off topic on freenode.))]
alexshendi has quit [Ping timeout: 240 seconds]
mozzarella26 has joined #picolisp
mozzarella26 has quit [Remote host closed the connection]
Regenaxer has joined #picolisp
quicksilver13 has joined #picolisp
quicksilver13 has quit [Remote host closed the connection]
werkin has joined #picolisp
sud029 has joined #picolisp
sud029 has quit [Remote host closed the connection]
bumbar3 has joined #picolisp
bumbar3 has quit [K-Lined]
opung27 has joined #picolisp
opung27 has quit [Killed (Sigyn (Spam is off topic on freenode.))]
CGML2 has joined #picolisp
CGML2 has quit [Killed (Sigyn (Spam is off topic on freenode.))]
<Nistur> mornin' all
<Regenaxer> Hi Nistur
<Nistur> o7
iczero10 has joined #picolisp
iczero10 has quit [Remote host closed the connection]
orivej has joined #picolisp
xeroks28 has joined #picolisp
xeroks28 has quit [Killed (Sigyn (Spam is off topic on freenode.))]
justanotheruser2 has joined #picolisp
justanotheruser2 has quit [Remote host closed the connection]
razzy has joined #picolisp
<razzy> hi picolisp is awesome
<Regenaxer> Hi razzy, glad to hear that
<razzy> finally language, that can be understood in reasonable time :]
<Regenaxer> yeah
<razzy> is it easy to change names of functions?
<Regenaxer> yes, just use another symbol, eg. (def 'first car)
<razzy> any good software in picolisp?
<Regenaxer> sure :)
<razzy> somethig like emacs on pilOS?
<Regenaxer> not in PilOS, but there is Vip, a Vim style editor. I use it 100% for all editing
<razzy> :D nooooo
<Regenaxer> I would recommend to look around picolisp.com
<razzy> looking
<Regenaxer> I don't know Emacs well, so I can't help here ;)
<razzy> i mean, whole PilOS is editable,.. so no big deal :]
<razzy> i guess
<Regenaxer> PilOS is still very limited, no editor yet
<Regenaxer> Vip could be ported though
<Regenaxer> replacing ncurses with direct video buffer manipulations
<razzy> Regenaxer: how PilOS distribute loads?
xificurC has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]
<Regenaxer> Currently not at all. Uses only a single core
<razzy> nice :]
<razzy> room for improvements :]
<Regenaxer> indeed! :)
^MillerBoss has joined #picolisp
<razzy> Regenaxer: how hard is to write drivers?
^MillerBoss has quit [Remote host closed the connection]
<Regenaxer> I think it is not easy, but perhaps easier than for Linux as you can concentrate on a simpler system
<Regenaxer> Still, a network driver with TCP stack is very complicated I think
<razzy> Regenaxer: i have seen one
<razzy> in 200 lines
<razzy> what is messy is the optimization layer
<Regenaxer> really? cool
<Regenaxer> optimization can be done later ;)
<razzy> i studied TCP/IP and com protocol is not hard
<Regenaxer> Wow, it is even in a Lisp
<Regenaxer> If you start it for PilOS, I can support you on the PilOS side
<Regenaxer> ie Asm and Lisp
<Regenaxer> (low-level in Asm)
orivej has quit [Ping timeout: 256 seconds]
<razzy> if you have whole operating system in one language, you could imho simplify whole optimization thing very much
<razzy> just redistribute priority through whole AST tree from the top(what user want) to the bottom, what needs to be done
<Regenaxer> well, Unix and related *are* all in 1 lang, in C
<razzy> Regenaxer: you know what i mean, it is not 'one' program. as lisp could be
<Regenaxer> right
subo has joined #picolisp
subo has quit [Remote host closed the connection]
<razzy> Regenaxer: are you ok with purely functional pilOS?
<Regenaxer> How do you mean "functional" in the context of an OS?
<razzy> Regenaxer: minimum sideefect in functions, and if so, clearly marked.
<razzy> everything is object
<razzy> inside the OS
<Regenaxer> ok, but in an OS almost everything is there *for* side effects
<Regenaxer> PilOS is just the pil VM built stand-alone, so no objects on this level
<razzy> or shall i say symbol :]
<Regenaxer> yeah, well, still not much symbol processing in PilOS itself :)
<Regenaxer> well, the file system are persistent symbols, yes
<razzy> keyboard is also a symbol?
<razzy> any IO device?
<Regenaxer> no
<Regenaxer> just the normal pil database is used as a "file" system
<Regenaxer> PilOS doesn't even really operate on cell
<Regenaxer> cells
<razzy> how is so
<Regenaxer> Like the normal pil VM
<Regenaxer> it *has* the functions to operate on them
<Regenaxer> eg. 'cons' or 'append'
<Regenaxer> but it does not use them internally
<Regenaxer> this is done on the Lisp level on top of PilOS
<Regenaxer> PilOS provides the heap, stack, garbage collection etc
<razzy> oh, i see
<razzy> so it is written in ASM?
<Regenaxer> yes
alexshendi has joined #picolisp
<razzy> i would think, that you write only absolute minimum in ASM, and than everything in picolisp
<Regenaxer> right, this is how it is
<Regenaxer> lib.l is loaded first, both in PilOS and normal Pil
<razzy> Regenaxer: how much work is to rewrite it?
<razzy> just asking
<razzy> in theory
<Regenaxer> rewrite from normal pil?
<Regenaxer> It was not so hard, most parts are re-used
<Regenaxer> identical
<Regenaxer> only I/O and such were implemented
<Regenaxer> simply calling old BIOS functionality
<Regenaxer> And BIOS is the current problem of PilOS, because most modern machines don't support the full BIOS any more
<razzy> lol
<razzy> funny
<razzy> i think i try picolisp for now
<Regenaxer> good idea! :)
<razzy> so picolisp does not have compilation? that is why macro did not work?
<Regenaxer> yes, or, they work but are not such useful
<Regenaxer> So there is no "define macro"
<razzy> urg, i hate auto quoting
NyanCat12 has joined #picolisp
NyanCat12 has quit [Read error: Connection reset by peer]
<Regenaxer> Why?
<razzy> Regenaxer: because it makes confusion. and i maybe want to have function 123456789
<Regenaxer> A number *is* a function
<Regenaxer> in pil
<Regenaxer> but you can *define* only a symbol to have a function
<razzy> i might want to define 123456789 as function :]
<razzy> it seems to me the same problem as having array and lists
<Regenaxer> Then you need a symbol, eg.:
<Regenaxer> : (def (intern "123456") '(() (prinl "Hello world")))
<Regenaxer> -> 123456
<Regenaxer> : (@)
<Regenaxer> Hello world
<Regenaxer> -> "Hello world"
<razzy> burden on programmer
<razzy> ok ok :] not sure now :]
Guest86551 has joined #picolisp
Guest86551 has quit [Remote host closed the connection]
alexshendi has quit [Read error: Connection reset by peer]
bairdmich has joined #picolisp
bairdmich has quit [Remote host closed the connection]
<razzy> compiler and operating system should be one
<razzy> too much car and cadr imho :D
<Regenaxer> I see no need for that. Compiler (or assembler plus reader) can be different and independent
<razzy> there is more room for optimization, if compiler very closely cooperate with operating system
<Regenaxer> How?
<razzy> OS knows what cores will be available and what they are. compiler should react to that
<Regenaxer> ok
Erenzie1 has joined #picolisp
Erenzie1 has quit [Remote host closed the connection]
<Regenaxer> But the compiler does not assign cores to processes. It may be concurrent libs that do that, but still I expect such decisions be done at runtime, not by the compiler
<Regenaxer> Anyway, no problem for PicoLisp, as there is no compiler :)
<razzy> Regenaxer: i would say than in picolisp it runs in runtime
<razzy> *that
<razzy> can i print AST tree of picolisp code?
TheSilentLink25 has joined #picolisp
TheSilentLink25 has quit [Killed (Sigyn (Spam is off topic on freenode.))]
orivej has joined #picolisp
werkin has quit [Quit: Leaving]
<Regenaxer> Pretty-printing with 'pretty' or 'pp', or look at 'view'
pierpal has quit [Quit: Poof]
pierpal has joined #picolisp
NB0X-Matt-CA has quit [Excess Flood]
NB0X-Matt-CA has joined #picolisp
pierpal has quit [Quit: Poof]
pierpal has joined #picolisp
<razzy> what about heap and stack and segmentation fault?
<aw-> we could have a chat bot to answers these questions, they seem to pop up once a month.
<razzy> i read FAQ but it was unclear
<Regenaxer> yeah :)
<Regenaxer> Heap and stack are not visible on the Lisp level
<Regenaxer> And segmentation faults can be easily produced
<Regenaxer> Just like in C
<Regenaxer> No problem
<razzy> Regenaxer: the FAQ sugest, that when i run out of memory, segmentation fault will occure
<Regenaxer> Not when out of memory, but for stack overflow
<Regenaxer> You can set ulimit -s unlimited for that
<Regenaxer> Running out of memory is difficult, it gets slower and slower before that
<Regenaxer> because of paging in and out (aka swapping)
<Regenaxer> The easiest way for a segfault is an invalid function pointer (number)
<Regenaxer> (setq foo 1) (foo)
<razzy> i read that, i am ok with that :]
<razzy> when i make invalid call,.. than it is up to me :]
<Regenaxer> T :)
<Regenaxer> Such mistakes happen very seldom in fact
<Regenaxer> There are naming conventions which avoid them easily
<razzy> naming conventions?
<Regenaxer> Locally bound symbols start with an uppercase char
<Regenaxer> instead of (let car 1 ... (car ...))
<Regenaxer> you do (let Car 1 ... (car ...
<razzy> i absolutely love 'data is code' and creating functions from lists :]
<Regenaxer> yep, me too
<razzy> can it be done in common lisp? i never done it,.. because i did not chew through libraries
<Regenaxer> Creating functions from lists is essential in all Lisps
<Regenaxer> Just that CL normally compiles the lists, so they are gone at runtime
<razzy> not very lispy is it
<Regenaxer> true
<Regenaxer> It is only Lisp when you look at it, not when you run it ;)
<razzy> i am sad that people crippled the original lisp ideas
puff24 has joined #picolisp
<Regenaxer> Must go
<Regenaxer> afp
puff24 has quit [Killed (Sigyn (Spam is off topic on freenode.))]
<razzy> and you do not need macro, because you could do it at runtime :D
pierpal has quit [Quit: Poof]
pierpal has joined #picolisp
erkin has joined #picolisp
LewsThanThree13 has joined #picolisp
LewsThanThree13 has quit [Killed (Sigyn (Spam is off topic on freenode.))]
<razzy> Regenaxer: i hope you are here often
Goldman609 has joined #picolisp
Goldman609 has quit [Remote host closed the connection]
strugee16 has joined #picolisp
strugee16 has quit [Remote host closed the connection]
lutki_ has joined #picolisp
lutki_ has quit [K-Lined]
orivej has quit [Ping timeout: 240 seconds]
erkin has quit [Quit: Ouch! Got SIGIRL, dying...]
erkin has joined #picolisp
roger_rabbit5 has joined #picolisp
roger_rabbit5 has quit [Remote host closed the connection]
msm9 has joined #picolisp
msm9 has quit [Killed (Sigyn (Spam is off topic on freenode.))]
pierpal has quit [Quit: Poof]
pierpal has joined #picolisp
freemint has joined #picolisp
pierpal has quit [Quit: Poof]
pierpal has joined #picolisp
pierpal has quit [Quit: Poof]
pierpal has joined #picolisp
diz9 has joined #picolisp
mtsd has joined #picolisp
diz9 has quit [Remote host closed the connection]
k6ka22 has joined #picolisp
k6ka22 has quit [Remote host closed the connection]
orivej has joined #picolisp
SolarAquarion25 has joined #picolisp
SolarAquarion25 has quit [Remote host closed the connection]
depleted has joined #picolisp
depleted has quit [Ping timeout: 256 seconds]
mtsd has quit [Quit: Leaving]
Shrooms18 has joined #picolisp
Shrooms18 has quit [Remote host closed the connection]
k6ka25 has joined #picolisp
k6ka25 has quit [Remote host closed the connection]
erkin has quit [Quit: Ouch! Got SIGIRL, dying...]
<freemint> hi
<freemint> @all can you read this?
viaken has quit [*.net *.split]
freemint has quit [Quit: Yaaic - Yet another Android IRC client - http://www.yaaic.org]
freemint has joined #picolisp
viaken has joined #picolisp
OvidiuS4 has joined #picolisp
OvidiuS4 has quit [Remote host closed the connection]