orivej has quit [Ping timeout: 240 seconds]
pointfree has quit [Read error: Connection reset by peer]
pointfree has joined #picolisp
dexen has quit [Ping timeout: 256 seconds]
aw- has quit [Ping timeout: 260 seconds]
_whitelogger has joined #picolisp
Blukunfando has joined #picolisp
anddam has joined #picolisp
viaken has joined #picolisp
Regenaxer has joined #picolisp
patrixl has joined #picolisp
mario-goulart has joined #picolisp
tankf33der has joined #picolisp
Nistur has joined #picolisp
emacsomancer has joined #picolisp
casaca has joined #picolisp
michelp has joined #picolisp
Blue_flame has joined #picolisp
jibanes has joined #picolisp
shoshin has joined #picolisp
pointfree has joined #picolisp
DKordic has joined #picolisp
Guest84035 has joined #picolisp
inara has joined #picolisp
rick42 has joined #picolisp
ChanServ has joined #picolisp
lodsw has joined #picolisp
joebo has joined #picolisp
DerGuteMoritz has joined #picolisp
masak has joined #picolisp
_whitelogger has joined #picolisp
aw- has joined #picolisp
_whitelogger has joined #picolisp
orivej has joined #picolisp
rob_w has joined #picolisp
orivej has quit [Ping timeout: 256 seconds]
orivej has joined #picolisp
aw- has quit [Quit: Leaving.]
dexen has joined #picolisp
<
Regenaxer>
Hi dexen! Your code is not bad, but you are right in that polling is ugly (and very ineficient)
<
Regenaxer>
Instead of polling we use 'task's in PicoLisp
<
Regenaxer>
they sleep until data are available
<
dexen>
alright, in that case the 'task' docs could use an update, to indicate it uses / is similar to select(3)
<
Regenaxer>
I think it mentiones select() / poll()
<
Regenaxer>
btw, I whink my post is wrong
<
Regenaxer>
(unless *ContinueSock must be reversed
<
Regenaxer>
I find the whole thing strange, because we write
*after* the other end closed
<
dexen>
ah right, the *Run docs mention select(2)
<
Regenaxer>
I would still recommend not to use eof as a signal
<
Regenaxer>
yeah, task is a front end to *Run
<
Regenaxer>
the docs are very minimal :)
<
dexen>
about that, managed to fix that. it required
*a little* fix to the worker program, as you suggested yesterday
<
dexen>
thank you for all the help, it lets me move forward
<
Regenaxer>
welcome! :)
<
Regenaxer>
I like to fiddle with such stuff
<
dexen>
it's a toy project with toy problems -- which makes it a perfect fit for first steps
<
dexen>
like yesterday i've found i
*really* don't understand the '<tag>' function's argument handling
<
Regenaxer>
a mixture of EXPR and FEXPR
<
dexen>
this works:(<tag> 'div NIL "aaa" "bbb")
<
dexen>
this doesn't:(<tag> 'div NIL (text "@1 @2" "ccc" "ddd"))
<
Regenaxer>
yes, because it uses htPrin internally
<
Regenaxer>
a bit strange but convenient
<
Regenaxer>
Atomic args are printed
<
Regenaxer>
Lists are evaluated
<
Regenaxer>
so you need (ht:Prin (text ...
<
dexen>
oh right now it makes sense. i examined the definition of '<tag>' but not of 'ht:Prin', presuming the later to be "merely a html encoder"
<
Regenaxer>
Convenient because for simple (constant) args you don't need explicitly to print
<
Regenaxer>
ht:Prin is just an encoder
<
Regenaxer>
but there is also htPrin
<
Regenaxer>
analog to what 'tag' does explicitly
<
Regenaxer>
looping the args
<
Regenaxer>
I'm just in the process of rewriting @lib/xhtml.l a little for pil21
<
Regenaxer>
Some changes due to the slightl changed 'eval' and 'run' behavior of pil21
aw- has joined #picolisp
orivej has quit [Ping timeout: 265 seconds]
<
dexen>
presently i'm using a mix of the @lib/xhtml.l, @lib/http.l and some custom functions
<
dexen>
coming from php background, i preferred to use pages-style project layoutdidn't want to
*also* dive into application-style
<
Regenaxer>
yeah, that's fine. xhtml.l works stand-alone
<
Regenaxer>
(i.e. without @lib/form.l)
<
dexen>
the LLVM support for pil21 means runtime compilation instead of being interpreted? or something else perhaps?
<
Regenaxer>
no, it all stays the same
<
dexen>
great, great.
<
Regenaxer>
Just the implementation language changes from Asm to LLVM-IR
<
Regenaxer>
It is for better portability
<
Regenaxer>
and also more readable
<
Regenaxer>
Also, I wanted to clean up some quirks or features of the language which accumulated over the decades but turned out to be sub-optimal
orivej has joined #picolisp
<
Regenaxer>
(mapcar 'msg> does not work
<
Regenaxer>
Getting close. Already fixed several bugs in DB (ext?, wipe, mark) and in message passing
<
Regenaxer>
*All* apply functions don't work with messages
<
Regenaxer>
hmm, no
orivej has quit [Ping timeout: 272 seconds]
<
aw->
tankf33der: Hi. Do you have a picolisp implementation of ECDSA (P-256) ?
<
aw->
ok then i'll use your ed25519.l .. where can i find the tests for it?
<
aw->
oh nevermind i found
<
aw->
test-ed25519.l thanks
<
Regenaxer>
Hmm, for correct method calls I needed to pass one more argument internally to
*every* built-in call
<
Regenaxer>
Theoretically this slows down pil21 a little more
<
Regenaxer>
But I seems only a tiny difference
<
Regenaxer>
In pil64 this came at no extra cost, as the value was already in a register
<
Regenaxer>
And I just saw that in pil32 such calls were not even supported!
<
Regenaxer>
I'm talking of computed calls
<
Regenaxer>
eg. if you have (val> Obj)
<
Regenaxer>
then in pil64 also this works: ((intern "val>") Obj)
<
Regenaxer>
or ((get 'A 'foo 'bar) Obj) if (get 'A 'foo 'bar) results in 'val>'
<
Regenaxer>
Anyway, released
<
tankf33der>
aw-: if non lisp is ok then you should consider to use monocypher library.
<
dexen>
(half joking) probably the best target would be the WLIV Transmeta Cruse platform. too bad it's not being developed anymore.
orivej has joined #picolisp
rob_w has quit [Quit: Leaving]
michelp has quit [Ping timeout: 240 seconds]
michelp has joined #picolisp
aw- has quit [Quit: Leaving.]
tankf33der has quit [Ping timeout: 240 seconds]
michelp has quit [Read error: Connection reset by peer]
tankf33der has joined #picolisp
michelp has joined #picolisp
orivej has quit [Ping timeout: 240 seconds]