freenode/#lisp - IRC Chatlog
Search
9:29:42
pyc
I am on macOS. SBCL is consuming 500% CPU and I hear greatly increased fan noise. I am not running any code on it. How can I troubleshoot what SBCL is doing?
13:24:27
lukego
Hey the other day I was wondering if there was an UPDATEF macro for updating a place with an arbitrary function and it turns out that there is one, in Serapeum, called OPF.
13:29:13
lukego
I never really connected with On Lisp. Maybe it's time for me to give it another go.
13:29:33
lukego
Indeed. I don't recall what the example was that I had last week but the specific macro didn't exist
13:30:02
lukego
and it feels a bit wonky having incf, maxf, appendf, nconcf, ..., but always more missing than defined
13:31:06
lukego
I've never actually dabbled in extending SETF and I usually associate that with defining places rather than updating methods. I should look properly into that too :)
13:31:14
_death
well, they may be missing, but once added the forms that use them are clear and simple.. (maxf x 3) instead of (_f max x 3) or whatever
13:31:48
edgar-rft
let's UPDATEF Common Lisp by replacing everything with arbitrary random functions
14:59:00
lukego
aside - I really appreciate Serapeum. I like all these funky convenience macros but not if they make my code completely "lukego idiosyncratic." I can more easily accept being "serapeum idiomatic." Maybe there has always been subcommunities like this e.g. people who read On Lisp and adopted its various macros and can easily read each others' code.
15:06:05
splittist
lukego: I use it, too. Although I also use alexandria (as alexandria) and split-sequence (as split-sequence). Which may be missing some of the point.
17:14:49
KYCb
Sorry, who can help me with quick lisp, how to install packages, how to import package in my own project and use functions from it?
17:17:22
beach
Xach: Yes, it's easy to think that every Lisper knows what is going on if it is announced here. I have made that incorrect assumption several times.
17:45:16
jasom
KYCb: so for just "I want to play around with this in the REPL" Josh_2's advice of: (ql:quickload "some-project") is sufficient. If you want to use projects from quicklisp in your own projects, then you should learn ASDF at some point. It lets you define your own systems, and tell it which other systems are dependencies. Quicklisp is "just" a way to automatically donwload any missing dependencies
17:46:02
jasom
jmercouris: the class specifically, or the class and any subtype, or the class and any supertype?
17:50:40
jasom
KYCb: the very shortest introduction to ASDF that I know of is https://lispcookbook.github.io/cl-cookbook/systems.html#asdf it includes links to the ASDF manual for reference, but I don't know of a middle ground between "Here's the basics" and "Here's all the documentation" perhaps someone else in this channel can recommend something.
17:51:29
jasom
https://gitlab.common-lisp.net/asdf/asdf/blob/master/doc/best_practices.md which is linked from the cookbook has a lot of examples too
17:52:11
jasom
I learned the basics of ASDF almost 20 years ago, so I lack insight anymore into how to go about learning it
17:53:07
jmercouris
I know it is in the name, but it really doesn't mean anything to someone who doesn't know Lisp
17:53:40
jasom
I could not define for you what a system is other than "A bunch of probably related files"
17:55:09
jasom
and 99% of the time it's "A bunch of lisp files that should all be loaded together as a unit, possibly in a specific order"
17:56:59
jasom
ACTION kind of wishes poiu had caught on more so that there was a good reason to not just use :serial t
18:04:22
Bike
repeated save-lisp-and-die and startups seems like it might reduce any efficiency gain a fair bit
18:32:46
rpg
jmercouris: A *very* important counter-intuitive thing about ASDF is that it's build plans ARE NOT HIERARCHICAL. You don't load the components of the system in a context of loading the system itself.
18:52:26
thatpythonboy
what else lib does it use for compiling a simple program composing of loops and functions
18:53:45
Xach
thatpythonboy: the runtime program is around 300KB, but it "loads" a much larger memory image when it starts up.
18:59:03
beach
thatpythonboy: The size of the compiler is not typically the main objective of the compiler writer. The performance of the generated code is usually more important.
19:01:42
heisig
Legend has it CCL used to run using only 2MB of RAM. Its images have a size of 18Mb though. Still less than many fancy web pages.
19:06:35
heisig
jasom: Was there ever a PDP-11 running a full CL (all 978 external symbols, including the MOP and the condition system)?
19:10:01
jasom
heisig: definitely not a CLtL2 CL; I don't think MACLISP even ever got all the features in CLtL1, early CLtL1 lisps at MIT might have been on CADR?
19:14:29
jasom
heisig: the CADR had 24 bit virtual addresses and 22 bit physical addresses for 16/4MB limits on virtual and physical
19:16:48
heisig
And here I sit thinking about buying a machine with 256GB of RAM and 256MB of L3 cache. What a time to be alive :)
19:17:16
jasom
heisig: though Gold Hill Common lisp ran on PCs in the mid 80's that was probably more constrained than a CADR in the mid 70s
19:22:30
thatpythonboy
is it needed to store in storage the buffer to execute it, i prefer not to in emacs
20:19:57
jmercouris
Firstly, that question makes no sense, second ask on the emacs channel instead please
20:20:38
jmercouris
Maybe because the question is so poorly formulated nobody can discern your meaning
20:21:45
jmercouris
I’m glad to hear it, I would be surprised if your own stream of consciousness is unclear to you
20:22:00
thatpythonboy
so i want to press C-enter and make emacs display the output within emacs so sthat i don't have to go to gnome-terminal to see it... simple
20:22:16
jmercouris
However, when communicating with other individuals who are NOT inside your head, you must make effort to be clear
20:23:11
thatpythonboy
i am made to switch windows to terminal to see the ouptut but prefer not to go out
20:58:57
alanz
dbotton, your current clog master gives a backtrace for tutorial 24. https://gist.github.com/alanz/979b1cb4f9c45fbf8708bd771295d471