freenode/#sbcl - IRC Chatlog
Search
16:54:02
stassats
i'm able to turn (lambda (&rest args) (apply #'bar args)) into a single instruction, JMP #x22892A20 ; #<FUNCTION BAR>
16:58:37
stassats
would have been nice to optimize something like (lambda (&rest args) (apply #'bar 1 2 args)) instead
17:01:51
stassats
(lambda (&rest args) (apply #'bar (print 1) (* 2 x) args)) now is even more useful, but more difficult still, and may be not really possible
17:05:17
stassats
playing with entry points, (lambda (&key a b c) ....) could be turned into (lambda (&key a b c) ((lambda (a b c)) a b c)) and the inner lambda exposed externally
17:11:12
pfdietz
A common case is using &rest and &key (and maybe &allow-other-keys), to pass the key args down to another function.
17:14:45
stassats
but right now it moves twice, on entry and on or call, it's theoretically possible to perform just one
17:16:39
stassats
but for &key, the real win would be to expose the non-parsing internal function, callable with a declaration
21:27:35
scymtym
running with an old libc failed because of fcntl64@@GLIBC_2.28 can this be handled like memcpy?
21:33:02
stassats
looks like you have to spell it out https://github.com/wheybags/glibc_version_header
21:38:12
Shinmera
ouh, this is very interesting for Portacle actually, since it goes through a lot of pain to make glibc work