freenode/#lisp - IRC Chatlog
Search
14:42:53
franogrex
hi I have something like (loop for line = (read) while line do ... finally (return line))
14:43:23
franogrex
basically i want to only retain the last reading and the intermediate results i don't case about
14:53:02
phoe
Lisp test framework question. Is there anything in Lisp that allows me to do stuff like http://paste.lisp.org/display/351234 ?
14:53:41
phoe
Basically - declare what a test case should do in terms of test steps, then define its implementation while marking the individual test steps, then use that information when displaying error information?
14:57:36
phoe
dlowe: I know that there are test frameworks that will signal errors, but I want specifically something that also stores human-readable test step descriptions.
15:04:37
rpg
Does paredit have any command that will "snug up" a bunch of dangling parens that have ended up stranded on a line by themselves?
15:11:41
rpg
schweers: that only works if there is no whitespace at the end of the current line, and if the close parens appear on the very next line.
15:13:11
rpg
I find I often end up with parens off on lines by themselves while I'm filling in a structure like a set of class slot definitions, a set of let bindings, etc.
15:14:59
rpg
common use case where nothing is wrong: comment out a final let binding. Drop the closing paren to the next (empty) line so it doesn't get eaten by the comment. Test. Remove the commented-out block. Paren left stranded. No paredit bug AFAICT, no programmer error.
15:16:47
schweers
I can’t really comment on paredit, as haven’t used it for a while, but lispy does this, and I’m pretty sure the two are somewhat identical feature-wise
15:17:45
schweers
i.e. when point is at "|" in this expr: (let ((var1 ...)|(var2 ...))...) using paredit-comment or whatever should do The Right Thing
15:19:09
schweers
does this help you? https://stackoverflow.com/questions/4288339/how-do-you-comment-out-all-or-part-of-a-lisp-s-exp-using-paredit
15:47:29
rpg
I like paredit, but there are definitely cases where it feels too rigid (like where I want to copy a set of let bindings, but not the body that comes with it. I would like it more if it were easier to say "yes, I know that the parens are messed up, and now I'm fixing them."
15:59:36
SAL9000
np! smartparens by default is 'non-strict' in that it doesn't prevent you making (or fixing) messed up parens
19:13:14
clintm
How would I get the actual error from a error with asdf running a grovel operation? A header is probably missing, but there's no helpful message at the top of the slime buffer to guide me.
19:17:08
phoe
...so if my question about testing frameworks was not answered, I think it's time to write some Lisp.
19:29:14
clintm
oooooh, the errors went to the terminal the image is running on and not over swank. Good to know.
19:31:14
phoe
this sounds like a bug. if they're Lisp errors, then these errors should definitely go to the swank output.
19:32:50
clintm
yea, they are. Missing headers... which are in /usr/local/lib, but are special *invisible* headers :P
19:33:14
phoe
clintm: my suggestion is basically running the SBCL image in some sort of tmux, so you can ssh into the server, tmux attach, and read what's going on.
19:33:54
clintm
As a matter of fact, that's exactly what I do :) I just hadn't looked at that term window in a while.
20:14:57
aeth
phoe: there probably is a test framework that does what you want, if only because there are probably 30 test frameworks
23:26:19
rpg
ralt: you never call PERFORM directly.... (asdf:oos 'asdf:program-op :mypackage) might have worked (operate-on-system, not PERFORM).