freenode/lisp - IRC Chatlog
Search
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)))
21:04:03
Oberon
Are there any cloud-type platforms for Lisp? It occurs to me that the language may be uniquely suited to the model.
21:04:40
Oberon
It also occurs to me that I could google "lisp cloud" and get my answer there. Excuse me while I clean this egg off of my face.
21:20:33
phoe
if you mean something like AWS Lambda, then I guess the runtime advantages provided by Lisp's image-based programming are mostly lost, since you cannot easily debug or inspect recompile your code anymore because it runs Somewhereâ„¢ and usually bills you per hour
21:20:53
phoe
also each request might happen to execute in a different Lisp image, which also means that you don't have the program state in a single place
21:42:13
Oberon
The program state would be a problem, but the model where you have bits of code that you can run on demand, and that can scale up quickly without provisioning a new machine
21:55:22
White_Flame
well, one of the advantages that amazon benefits from with lambda is that they keep your python/node/whatever instance running between executions, if you use them frequently, to save on startup times
23:11:50
aeth
I wonder if you can get a Lisp image running 'in the cloud' in the sense that it runs on mulitple machines simultaneously, sharing the heap. I mean, probably yes, but it's probably also way too hard over just running a dozen Lisp images simultaneously.
1:02:15
remexre
hm, if I wanna rigorously measure the performance of my code (for preventing performance regressions in a certain function), is there standard tooling for doing so?
1:07:37
remexre
oof, though when I quickload it, I get an error about it violating the sb-impl package lock
1:13:05
mfiano
remexre: ensure SBCL and the Quicklisp dist are up to date. It works here using latest for both