rob_w has quit [Remote host closed the connection]
<beneroth>
abu[7], I looked at the implementation of (cache) in lib.l - why does it convert the hash of the memomization key into a character? why (char (hash "X")) instead of using the hash directly ?
<abu[7]>
The char is a symbol, so that its value field is used to store the payload
<abu[7]>
(set (car "X") ...
<beneroth>
aaah
<beneroth>
I see
<beneroth>
in such cases I always put the payload also into the idx and then used (lup) to find it again
<abu[7]>
Yes, this is also a good way
<beneroth>
hmm.. whats the difference?
<beneroth>
if idx would be balanced, then it would make a difference, but that is not the case afaik
<abu[7]>
You need to cons it
<beneroth>
T
<abu[7]>
Same space
<abu[7]>
1 cell
<beneroth>
yeah consed cell or value of hash symbol
<beneroth>
no difference in cell space
<abu[7]>
The cons cell is part of the key then
<beneroth>
T, but it doesn't matter for lup, and I think it also shouldn't matter for idx insert as the "no-duplicate-check" will already differ on the prefix and never look into the payload
<beneroth>
only for deletion in idx it might matter I think
<beneroth>
I think it boils down to if (set) and (char) is cheaper than (cons), no?
<beneroth>
hmmm
<beneroth>
just wondering
<abu[7]>
I think no difference
<beneroth>
the approach is elegant
<abu[7]>
in speed or space
<beneroth>
ok
<beneroth>
so code readability and taste?
<abu[7]>
T
<beneroth>
thx
<abu[7]>
The value is out of the way
<beneroth>
T
<abu[7]>
btw
<beneroth>
might be nicer when printing the idx tree
<abu[7]>
have you heard of SimpleX Chat messenger ?
<beneroth>
no?
<abu[7]>
Got a mail today
<abu[7]>
whether to use pil in the UI
<abu[7]>
I take a look
<beneroth>
?
<beneroth>
the SimpleX author consider using pil in the UI?
<beneroth>
though I guess no support for multiple devices (for the same identity).. better privacy, but quite a UX limitation
<abu[7]>
UI inside messages it seems
<abu[7]>
yes
<abu[7]>
extremely private
<beneroth>
maybe that's even a case for MiniPico?
<abu[7]>
possibuy
<abu[7]>
ly
<abu[7]>
just C
<beneroth>
one could pre-define a DSL for widgets/widget functionalities, not turing-complete, so limitations and scripts can be validated before execution
<beneroth>
like what JavaScript should have been if one would have cared about security and safety
<abu[7]>
T
bjorkint0sh has quit [Quit: "Every day, computers are making people easier to use." David Temkin]