freenode/lisp - IRC Chatlog
Search
14:01:34
ralt
Things like (counted-string 4) that reads/writes a 4-byte length + the following string is just neat
14:11:26
ralt
asdf_asdf_asdf: ok. I would like to prove that P=NP, could you provide the solution please?
14:15:49
asdf_asdf_asdf
ralt, OK this is problem math, so put pattern, something and I write a code.
14:19:00
beach
ralt: I suggest you use the Tymoon search facility for this channel to understand my reaction.
14:25:29
ralt
The start/end don't let you select seconds, so the <input type="time" step=...> cannot satisfy its step
16:06:59
asarch
I have 1, 3, 5, 6, 9 in the first vector and 3, 9 in the second. Is there an easy way to get 1, 5, 6 (those elements available only in the first vector but not in the second one)?
16:17:13
Demosthenex
so, my fav password manager is a console utility in C++. i'm considering reimplementing in in CL (ECL for tiny binary). one of the interesting things it does is uses "secured" memory allocation while it is working. i think it may just pin it's memory so it can't be swapped to disk unencrypted. is there a way to pin memory in CL? if you were going to load sensitive data, any recommendations on how to
16:17:41
Demosthenex
https://github.com/nsd20463/pwsafe/blob/master/pwsafe.cpp <-- discusses his memory allocations
16:20:26
remexre
it's definitely well-defined to sort a vector for the side effects, right? CCL's giving me a warning about it, but sbcl's fine, and the code seems to work...
16:22:01
phoe
remexre: the notes say, " If sequence is a vector, the result might or might not be simple, and might or might not be identical to sequence. "
16:22:36
phoe
in general this means that the proper means of using SORT is to utilize its return value
16:25:45
asdf_asdf_asdf
beach, You check, because I play on chess and I don't know, whether You too.
16:27:29
phoe
remexre: there's several destructive functions like that whose results must not be discarded, *even* if are passed vectors and not lists
16:32:20
phoe
in particular - even though no one really does that - DELETE is allowed to just call REMOVE
16:52:25
Demosthenex
phoe: well, i'm rusty on C, and dont know c level memory security, that's also why i linked the code. i think it was just memory pinning to prevent it being written out to swap.
16:52:54
phoe
C has no concept of memory security itself, that's why I suspect it's basically just invoking some OS-level functionality via syscalls
19:04:24
sveit
is there a reason SBCL does not elide constructors? I mean that one might hope that (defun f (x) (car (cons x 3))) avoids allocating the cons.
19:25:24
White_Flame
SBCL doesn't have a lot of specifically applicable optimizations. But it does focus on the biggies
19:25:36
White_Flame
it doesn't have a peephole optimizer either, which really bugs me when reading disassemblies
19:36:04
sveit
what do you mean by "specifically applicable"? i guess this would be a general thing. maybe you mean it could have been implemented by compiler macros?
19:36:46
sveit
but i think eliding constructors (say for structs) is a generally useful optimization, not just for built-in datatypes
19:39:37
aeth
White_Flame: just reading https://en.wikipedia.org/wiki/Peephole_optimization#Replacement_rules
19:42:18
aeth
sveit: I'm more surprised it can't handle the equivalent (defun f (x) (car `(,x . 3))) since I know SBCL does optimize e.g. (defun f () (car '(42 . 3)))