freenode/#lisp - IRC Chatlog
Search
21:24:36
sukaeto
yeah, I was a vim user for about a dozen years before finally making the switch to Emacs+evil
21:25:33
sukaeto
Emacs is strictly better - better buffer management, integration with things like gdb and whatnot, of course SLIME, and the fact that you can easily extend it yourself with elisp
21:26:12
sukaeto
but I don't want to start an editor war, here. I know plenty of people who use vim and are totally happy with it.
21:26:39
sukaeto
Cthulhux: but why would I do that? vi is clearly the best text editing language in existence. ;-)
21:28:11
ptdel
I feel more productive knowing the children in Uganda are getting daily contributions from vim users
21:38:03
Cthulhux
<ptdel> Cthulhux: what if I want to save children in Uganda << that's funny because you can do this in emacs's web browser while you run ed(1) in an emacs shell
1:17:35
stylewarning
What method do I specialize if I want to do some actions after an ASDF system is loaded?
3:21:04
PuercoPop
stylewarning: (defmethod perform :after ((op asdf:load-op)) ((system (eql (find-system <foo>)))))
3:33:43
PuercoPop
stylewarning: place I put that is in the ASDF file of the config and place that in (in-package #:asdf-user)
4:16:50
jack_rabbit
No, like a let, but for the function namespace rather than the variable namespace.
4:18:57
jack_rabbit
Guess I can traverse the body and replace instances of the symbols for the functions I want to shadow.
4:20:54
beach
jack_rabbit: That is generally very hard to do. It requires a thing known as a code walker, and such a thing can not be implementation independent.
4:21:44
jack_rabbit
Why is it not as simple as recurring through the lists and identifying the relevant symbols?
4:22:10
beach
Because there may be macro calls that, when expanded, introduce some of the symbols you don't want.
4:22:47
beach
Perhaps you want to replace a symbol when it is in a function-call position, but not when it is data.
4:27:32
beach
They may work for most simple cases, but may not work for complex things involving macrolet and such.
4:28:51
jack_rabbit
So, in that case, I wanted to do the following: create a macro such that arithmetic operations within the body printed what they were doing to *standard-output*
4:29:14
jack_rabbit
Just a simple excercise to see how easy it was. I don't have a practical application for it.
4:38:42
beach
I seem to always be unable to find the Common Lisp HyperSpec page that explains how a conforming program is allowed to use symbols in the CL package.
4:40:11
beach
I always look in the first few chapters. Never think to look in the chapter on packages.
7:22:50
phoe
I have a LPARALLEL question. Is there a way to submit tasks to a channel that does not cause results to be generated?
7:34:20
phoe
Because the results, when unhandled, will cause a memory leak, and when handled, will require a separate result-receiving thread or another thread to try popping the results until none are left.
7:44:44
_death
phoe: results must always be received.. for example you can look at how lp:pmapc is implemented
7:45:56
phoe
_death: okay - I will work around this by beginning each worker function with a call that pops and discards all accumulated results.
8:00:26
_death
phoe: that seems more expensive than another thread that spends almost all its time waiting
8:04:55
_death
phoe: yeah.. I mean it doesn't work if you want to prove the invariant that all results are received
8:07:33
_death
but why not just have another thread to do that instead of increasing the cost for each worker
8:25:38
_death
phoe: yes, but the cost of one thread waiting is less than the cost of each worker polling