<npfaro>
I have a list with this in it: '(13 "ERROR 13, 5621064")
<npfaro>
When I write it to a file with `with-standard-io-syntax` and `prin1`, it comes out like this: (13 #A((17) BASE-CHAR . "ERROR 13, 5621064"))
<npfaro>
why would this be
<npfaro>
Here's the expression which evaluates to create the '(13 "ERROR 13, xxxx) list: (list (format nil "ERROR ~a, ~a" (car x) (cdr x)))
<npfaro>
x is pair of numbers
<pfdietz>
This is in SBCL?
<npfaro>
yeah
<pfdietz>
SBCL's read table has an option for converting strings (on reading) to base strings, if all the characters are base chars. I am wondering if the standard io syntax has that bit set. If not, then to print readably it has to use that weird syntax.
<npfaro>
strange, all those characters should be readable as is
<pfdietz>
But if you read them and the bit is not set, you should get a string (with element-type CHARACTER) not a base-string (with element-type BASE-CHAR).
gaqwas has quit [Ping timeout: 264 seconds]
<pfdietz>
Check if the string is of type (array base-char (*)), or of type (array character (*)).
<Bike>
prin1 prints readably, so it goes through extra effort to prefer stuff like element type that a human reader wouldn't so much care about
<pfdietz>
You could bind *print-readably* to nil inside the with-standard-io-syntax. Failing that, you could play with pprint dispatch tables to make it do something differently on strings.
<Bike>
it should work as input for cl:read still (in sbcl)
<Bike>
s/prefer/preserve/
<pfdietz>
Oh right, prin1 binds that.
<Bike>
i mean, conceptually if you're using standard io syntax and prin1, you presumably are printing something with the aim of reading it back later
<Bike>
so what it actually looks like to a human reader isn't too important
rtypo has quit [Remote host closed the connection]
<npfaro>
that's fair enough, although I intended to dump a form out to a file so that I (and potentially others) could edit it as they please, and then load it back in again
<npfaro>
Same sort of idea as a CSV file
<npfaro>
so having reader gunk in there is not ideal
SAL9000 has joined #lisp
<Alfr_>
npfaro, you could resort to coercing format's result to a (simple-array character (*)) .
random-nick has quit [Ping timeout: 272 seconds]
<npfaro>
hmm, alright. i wonder why my format is doing that though in the first place
<npfaro>
seems kinda like a hack to have to coerce it
<Alfr_>
npfaro, mine does that too for sbcl-2.0.11.
<npfaro>
Just tried it, coercing works. but i wish there was a better way
<Alfr_>
npfaro, prin1 may output anything it likes, as long as it can be read back to recreate something similar to what was printed.
<Alfr_>
npfaro, there's no guarantee that it's human read/editable, I think.
<npfaro>
Is there a different function that would be better suited
<Alfr_>
I don't know.
mrios22 has quit [Ping timeout: 264 seconds]
aindilis has joined #lisp
ikrabbe has joined #lisp
ikrabbe|2 has quit [Ping timeout: 240 seconds]
Inline has quit [Ping timeout: 272 seconds]
Nilby has joined #lisp
<npfaro>
I have something like (loop for x in ls when (not (member x other-ls)) for y = (car x) do ...) but I'm getting an error
<npfaro>
FOR does not introduce a LOOP clause that can follow WHEN.
<npfaro>
any ideas on the correct way to do this
Nilby has quit [Ping timeout: 240 seconds]
<charles`>
do (when (not (member x other-ls))
<charles`>
?
<charles`>
oh you want the for to be conditional
<npfaro>
Actually my example was a little incorrect, that should be `collect` instead of do
<npfaro>
so I don't wanna collect nils
<charles`>
remove-if #'null?
<npfaro>
meh
<npfaro>
thanks for the ideas though
luckless has joined #lisp
npfaro has quit [Ping timeout: 265 seconds]
orivej has quit [Ping timeout: 265 seconds]
charles` has quit [Ping timeout: 264 seconds]
dbotton has joined #lisp
<aeth>
use three variables, where one says whether y is active or not
ikrabbe has quit [Ping timeout: 246 seconds]
aeth_ has joined #lisp
pfdietz has quit [Quit: Ping timeout (120 seconds)]
aeth has quit [Ping timeout: 265 seconds]
aeth_ is now known as aeth
pfdietz has joined #lisp
charles` has joined #lisp
notzmv has quit [Ping timeout: 246 seconds]
npfaro has joined #lisp
logand`` has joined #lisp
dbotton has quit [Quit: This computer has gone to sleep]
logand` has quit [Ping timeout: 240 seconds]
charles` has quit [Ping timeout: 264 seconds]
akoana has left #lisp ["Leaving"]
dbotton has joined #lisp
dbotton has quit [Client Quit]
Codaraxis__ has joined #lisp
[d] has quit [Remote host closed the connection]
Codaraxis_ has quit [Ping timeout: 240 seconds]
gjulio has joined #lisp
<npfaro>
Once the slime debugger has opened up with the restarts, how do i evaluate forms
<npfaro>
Ah it's e
<npfaro>
wow
<npfaro>
very nice
Lycurgus has quit [Quit: Exeunt]
<White_Flame>
npfaro: to avoid collecting NILs, (loop for ... when (car x) collect (car x))
<npfaro>
Yeah, the issue is that I have another `for` clause in the loop that uses one of the previous values, and that value cannot be nil
<White_Flame>
yeah, as said above, you cannot conditionally FOR; that's a separate issue
<White_Flame>
maybe you should post your full example, or something pared down
<npfaro>
I actually got to the root of the issue by using conditions and restarts
<npfaro>
so it's no biggie now
<White_Flame>
uh... that's probably not the right way
<White_Flame>
and again, if you don't like the boilerplate, macro it down :)
<npfaro>
nah, that's fine, thanks for the tip
judson_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<White_Flame>
at least in SBCL, self-recursive functions compile down to the proper set as needed & jump code
perrier-jouet has quit [Quit: WeeChat 3.0]
<White_Flame>
*set-as-needed & jump
gjulio has quit [Ping timeout: 272 seconds]
<npfaro>
i'm a schemer at heart so i do like recursive functions
<npfaro>
more like a racketer really
<beach>
I am sorry to hear that.
<npfaro>
thanks
<beach>
I have seen so many programs become incomprehensible by someone insisting on using tail recursion rather than iteration.
<npfaro>
it's just so powerful
<beach>
Also, it is usually a bad idea to use idioms from a different language. That goes for programming languages and natural languages alike.
<npfaro>
yeah that's why i asked here
<beach>
I say, use recursion when recursion is pretty much the only solution, like on trees and graphs. For linear structures like sequences, iteration is usually preferable.
<beach>
There are some exceptions to that "rule", but not many.
asarch has quit [Quit: Leaving]
karlosz has joined #lisp
<White_Flame>
npfaro: I use tail calls a lot, and tend to use self-recursion whenever it goes beyond simple LOOP usage
<White_Flame>
but usually because I'm chasing optimization unnecessarily ;)
Nilby has joined #lisp
lowryder has quit [Ping timeout: 265 seconds]
lowryder has joined #lisp
Bike has quit [Quit: Lost terminal]
torbo has quit [Remote host closed the connection]
azrazalea has quit [Quit: ZNC 1.6.2+deb2~bpo8+1 - http://znc.in]
andreyorst has joined #lisp
orivej has joined #lisp
Lord_Nightmare has quit [Ping timeout: 265 seconds]
bitmapper has quit [Quit: Connection closed for inactivity]
mindCrime has quit [Ping timeout: 260 seconds]
aeth_ has joined #lisp
aeth has quit [Disconnected by services]
aeth_ is now known as aeth
azrazalea has joined #lisp
quazimodo has quit [Ping timeout: 246 seconds]
azrazalea has quit [Quit: ZNC 1.6.2+deb2~bpo8+1 - http://znc.in]
azrazalea has joined #lisp
abhixec has quit [Ping timeout: 246 seconds]
mindCrime_ has joined #lisp
Codaraxis_ has joined #lisp
waleee-cl has quit [Quit: Connection closed for inactivity]
Codaraxis__ has quit [Ping timeout: 240 seconds]
Nikotiini has quit [Ping timeout: 256 seconds]
Lord_Nightmare has joined #lisp
jeosol has joined #lisp
Nikotiini has joined #lisp
rumbler31 has joined #lisp
maier has joined #lisp
rumbler31 has quit [Ping timeout: 256 seconds]
ikrabbe has joined #lisp
blackadder has quit [Ping timeout: 260 seconds]
easye has quit [Remote host closed the connection]
vegansbane6 has joined #lisp
imode has joined #lisp
phadthai has quit [Ping timeout: 258 seconds]
cods has quit [Ping timeout: 240 seconds]
cods has joined #lisp
zaquest has quit [Remote host closed the connection]
zaquest has joined #lisp
mindCrime has joined #lisp
mindCrime_ has quit [Read error: Connection reset by peer]
<fiddlerwoaroof>
tail-recursion, to me, is a bit like REDUCE: it's great when needed, but it's usually better to use it to make intermediate-level abstractions
<fiddlerwoaroof>
And then use those abstractions
<fiddlerwoaroof>
e.g. I could use REDUCE to do what MAPCAR does, but MAPCAR is less noisy and expresses my intent more clearly
totoro2022 has joined #lisp
anticrisis has quit [Read error: Connection reset by peer]
<npfaro>
tail recursion and a pattern matcher are a "match" made in heaven when it comes to parsing lists
anticrisis has joined #lisp
totoro2021 has quit [Ping timeout: 256 seconds]
<fiddlerwoaroof>
I'd rather use parser-combinators or similar
shka_ has joined #lisp
<npfaro>
prolog and DCGs are the king
andreyorst_ has joined #lisp
rgherdt has joined #lisp
gaqwas has joined #lisp
gaqwas has quit [Changing host]
gaqwas has joined #lisp
maier has quit [Ping timeout: 260 seconds]
maier has joined #lisp
karlosz has quit [Quit: karlosz]
infra_red[m] has quit [Quit: Idle for 30+ days]
anticrisis has quit [Read error: Connection reset by peer]
anticrisis has joined #lisp
hendursa1 has joined #lisp
hendursaga has quit [Ping timeout: 268 seconds]
cage_ has joined #lisp
gaqwas has quit [Remote host closed the connection]
ex_nihilo has joined #lisp
ralt has joined #lisp
beach` has joined #lisp
beach has quit [Disconnected by services]
beach` is now known as beach
mindCrime has quit [Ping timeout: 256 seconds]
Inline has joined #lisp
heisig has joined #lisp
skapata has quit [Ping timeout: 265 seconds]
<npfaro>
is there any way to do a nested loop in a single `loop` form or do you have to do (loop for x do (loop for y do))
Nilby has quit [Read error: Connection reset by peer]
random-nick has joined #lisp
frgo has quit [Read error: Connection reset by peer]
frgo has joined #lisp
rumbler31 has joined #lisp
gutter has joined #lisp
vegansbane6 has joined #lisp
daphnis has joined #lisp
rumbler31 has quit [Ping timeout: 272 seconds]
mrios22 has joined #lisp
<daphnis>
did something change about the way one should load the code from Practical CL? i tried putting the practicals-... directory into asdf:*central-registry* and doing (asdf:oos 'asdf:load-op :practicals)
<daphnis>
but get :binary-data not found
attila_lendvai has joined #lisp
attila_lendvai has joined #lisp
galex-713 has quit [Ping timeout: 265 seconds]
maier has quit [Ping timeout: 256 seconds]
galex-713 has joined #lisp
maier has joined #lisp
maier has quit [Client Quit]
paulj has joined #lisp
luis has quit [Ping timeout: 240 seconds]
npfaro has quit [Ping timeout: 264 seconds]
JuanDaugherty has joined #lisp
ralt has quit [Quit: Connection closed for inactivity]
JuanDaugherty has quit [Client Quit]
JuanDaugherty has joined #lisp
JuanDaugherty has quit [Remote host closed the connection]
luis has joined #lisp
paulj has quit [Remote host closed the connection]
amb007 has quit [Read error: Connection reset by peer]
<phoe>
the system certainly exists there
liberliver has joined #lisp
amb007 has joined #lisp
Lycurgus has quit [Quit: Exeunt]
aartaka_d has quit [Read error: Connection reset by peer]
aartaka has joined #lisp
ljavorsk has joined #lisp
<daphnis>
phoe: yeah, it's just that the method suggested in the readme doesn't seem to work very well. but someone on so suggested putting it into quicklisp/local-projects/. that still doesn't work with everything at once, but at least i was able to load the package i needed.
ljavorsk has quit [Ping timeout: 260 seconds]
ralt has joined #lisp
notzmv has joined #lisp
Bike has joined #lisp
pve has quit [Ping timeout: 260 seconds]
pve has joined #lisp
tassleoff has joined #lisp
orivej has quit [Ping timeout: 265 seconds]
iskander has joined #lisp
iskander- has quit [Ping timeout: 264 seconds]
logand`` has quit [Ping timeout: 264 seconds]
logand` has joined #lisp
<beach>
daphnis: For the local-projects directory, you need to execute (ql:register-local-projects) once for it to be found.
mmmattyx has joined #lisp
logand` has quit [Ping timeout: 272 seconds]
liberliver has quit [Quit: liberliver]
logand``` has joined #lisp
gutter has quit [Remote host closed the connection]
logand``` has quit [Ping timeout: 265 seconds]
jonatack has quit [Ping timeout: 246 seconds]
<Xach>
beach: not necessarily.
<Xach>
that is, you do not necessarily need to run it manually; it runs automatically in some circumstances.
Inline has quit [Read error: Connection reset by peer]
jonatack has quit [Ping timeout: 246 seconds]
jonatack has joined #lisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #lisp
chkhd has joined #lisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #lisp
chkhd has quit [Client Quit]
<heisig>
Unfortunately, the automatic updating of local projects fails when the contents of ~/quicklisp/local-projects/ are symlinks.
gutter has joined #lisp
<heisig>
Or is there a trick to make that work?
gjulio has joined #lisp
<beach>
That must be why I always have to do it manually then.
<mfiano>
heisig: It's not that it's a symlink, there's a max depth for discovering systems automatically without ql:register-local-projects.
cage_ has joined #lisp
<Xach>
here is how it works. if the timestamp on the directory is newer than the timestamp of system-index.txt, it is scanned automatically and system-index.txt updated.
<Xach>
that's it.
<Xach>
so anything that updates the timestamp of the directory will trigger an automatic registry. that includes symlinking or making directories or touching it via touch.
<mfiano>
Right
<mfiano>
As per the comments:
notzmv has quit [Ping timeout: 240 seconds]
<mfiano>
> It will NOT pick up a system file that is added sometime later in a subdirectory
<mfiano>
Not without a full tree treaversal by modification of the timestamp
orivej has joined #lisp
Inline has joined #lisp
dra has joined #lisp
andreyorst has quit [Remote host closed the connection]
andreyorst_ is now known as andreyorst
iskander has quit [Ping timeout: 264 seconds]
<heisig>
I see, thanks. Maybe I should add (ql:register-local-projects) to some git hook instead.
rpg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<_death>
could touch a directory in a git hook
<mfiano>
I do just that, as it has bitten me enough times.
<mfiano>
I also constantly touch the asd file I'm working with along with setting ql:*quickload-verbose* in my init file, as only the remainder of the modules that were modified will be recompiled by ASDF
iskander has joined #lisp
dra has quit [Quit: Leaving]
ralt has quit [Quit: Connection closed for inactivity]
Nilby has quit [Ping timeout: 240 seconds]
iskander- has joined #lisp
iskander has quit [Ping timeout: 240 seconds]
iskander- has quit [Ping timeout: 265 seconds]
iskander has joined #lisp
gjulio has quit [Ping timeout: 240 seconds]
iskander has quit [Ping timeout: 264 seconds]
iskander has joined #lisp
Nilby has joined #lisp
Aurora_v_kosmose has quit [Remote host closed the connection]
Aurora_v_kosmose has joined #lisp
attila_lendvai has quit [Ping timeout: 272 seconds]
<ogamita>
There are a few time zone that are not aligned on hours…
iskander has joined #lisp
liberliver has quit [Quit: liberliver]
<nij>
Hmm lemme try to understand it.
<ogamita>
nij: the first problem is that when you use ~w@d the sign is placed on the right of the filler character. It wors nicely when it's space, but if you use ~3,'0@d, you get 0-1 instead of -01. So you need to process the sign separately first.
judson_ has joined #lisp
<nij>
What is the truncate doing in the second multiple-value-bind?
flatheap has quit [Read error: Connection reset by peer]
<ogamita>
The second part is that the tz can be a fraction such as -9/2 for Afganistant (-04:30).
flatheap has joined #lisp
<ogamita>
So this truncate separates the hours from the minutes in the time zone.
<nij>
OH!!! I see.
<nij>
I didn't see a problem cuz by time zone is aligned.
<ogamita>
Then the minutes can be a fraction such as 1/2.
<ogamita>
You need to read the clhs to take care of all the cases.
Lord_of_Life has quit [Read error: Connection reset by peer]
karlosz has quit [Quit: karlosz]
rogersm has joined #lisp
<nij>
and the ~:[-~;+~] formatter.. nice!
<nij>
Thanks :D
Lord_of_Life has joined #lisp
rogersm has quit [Remote host closed the connection]
<ogamita>
it's for booleans and small ints:(format nil "~{~[zero~;one~;two~;fizz~:;what?~]~^ ~}" '(0 1 2 3 4)) #| --> "zero one two fizz what?" |#
<nij>
Right :) very neat.
bilegeek has joined #lisp
hiroaki has quit [Ping timeout: 272 seconds]
judson_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
flatheap has quit [Ping timeout: 264 seconds]
rogersm has joined #lisp
rogersm has quit [Remote host closed the connection]
daphnis has quit [Ping timeout: 272 seconds]
iskander- has joined #lisp
iskander has quit [Ping timeout: 265 seconds]
ogamita has quit [Quit: later]
judson_ has joined #lisp
shka_ has quit [Quit: Konversation terminated!]
judson_ has quit [Client Quit]
attila_lendvai has joined #lisp
shka_ has joined #lisp
aeth has quit [Ping timeout: 256 seconds]
karlosz has joined #lisp
aeth has joined #lisp
judson_ has joined #lisp
flatheap has joined #lisp
cyraxjoe has joined #lisp
<nij>
--------
aartaka has quit [Read error: Connection reset by peer]
<nij>
Hmm.. somehow #\Newline doesn't work for me.
<nij>
Now I have a very bad solution.. which is
iskander- has quit [Ping timeout: 240 seconds]
<nij>
to define constant variable that contains the newline character:
<nij>
(defconstant adhoc/newline
<nij>
"
<nij>
")
<nij>
But, as you can see, it is very ugly..
<Alfr>
nij, what do you want to do? Also remember #\newline gives you exactly one char, which may not be what you want on some OS.
<mfiano>
Why would you want a 1-length string over a character?
<mfiano>
In any case, (make-string 1 :initial-element #\newline)
<ck_>
maybe some carriages need to be returned as well
<nij>
Oh I see..
mindCrime has joined #lisp
<nij>
This is what I want to do: https://bpa.st/WUEDU . Hopefully it's self-explanatory.
<nij>
mfiano: your tip does solve my problem :)
abhixec has joined #lisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #lisp
<mfiano>
My tip is to not use a string if you don't need one
amb007 has quit [Read error: Connection reset by peer]
<mfiano>
In this case, just use #'format. That code is overly complex
judson_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<nij>
I see.
iskander has joined #lisp
rogersm has joined #lisp
amb007 has joined #lisp
andreyor1 has joined #lisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #lisp
aorst has quit [Ping timeout: 265 seconds]
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #lisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #lisp
mindCrime has quit [Ping timeout: 260 seconds]
iskander has quit [Ping timeout: 240 seconds]
daphnis has joined #lisp
judson_ has joined #lisp
attila_lendvai has quit [Ping timeout: 265 seconds]
iskander has joined #lisp
iskander has quit [Ping timeout: 240 seconds]
phadthai has joined #lisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #lisp
rogersm has quit [Quit: Leaving...]
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #lisp
iskander has joined #lisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #lisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #lisp
theothornhill has joined #lisp
mindCrime has joined #lisp
iskander has quit [Ping timeout: 246 seconds]
nij has quit [Ping timeout: 260 seconds]
judson_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
anticrisis has joined #lisp
ebrasca has quit [Remote host closed the connection]
amb007 has quit [Read error: Connection reset by peer]
judson_ has joined #lisp
amb007 has joined #lisp
theothornhill has quit [Ping timeout: 246 seconds]
judson_ has quit [Client Quit]
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #lisp
judson_ has joined #lisp
aorst has joined #lisp
renzhi has joined #lisp
andreyor1 has quit [Ping timeout: 256 seconds]
judson_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
iskander has joined #lisp
mindCrime has quit [Excess Flood]
mindCrime has joined #lisp
theothornhill has joined #lisp
iskander has quit [Ping timeout: 256 seconds]
<_death>
huh.. apparently slime-cl-indent is not perfect :d
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #lisp
theothornhill has quit [Remote host closed the connection]
theothornhill has joined #lisp
<_death>
I defined an event-case macro with arglist of (&body clauses) in a simple-graphics package, which also has a nickname sg.. but (sg:event-case ...) indentation was off.. it turns out that clx also defines an event-case operator, and the indentation comes from that one.. slime-cl-indent stores the correct indentation rule for my event-case, except it only has simple-graphics as package and not its nickname.. I guess it's time to patch it
theothornhill has quit [Remote host closed the connection]
phireh has joined #lisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #lisp
hjudt has quit [Ping timeout: 260 seconds]
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #lisp
theothornhill has joined #lisp
judson_ has joined #lisp
<ealfonso>
is lisp dying?
iskander has quit [Quit: bye]
andreyorst has quit [Ping timeout: 256 seconds]
iskander has joined #lisp
judson_ has quit [Client Quit]
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #lisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #lisp
judson_ has joined #lisp
<phoe>
ealfonso: huh?
<phoe>
hm, it hangs for me too
<phoe>
likely because connection-timeout is only effective before the connection is established
amb007 has quit [Read error: Connection reset by peer]
<phoe>
the backtrace shows me that it is trying to read a byte, which means that the connection was already established...
<phoe>
hmmm
amb007 has joined #lisp
rogersm has joined #lisp
iskander- has joined #lisp
judson_ has quit [Client Quit]
iskander has quit [Ping timeout: 240 seconds]
mrcom has quit [Ping timeout: 265 seconds]
<phoe>
I see you've already made a github issue
attila_lendvai has joined #lisp
attila_lendvai has quit [Changing host]
attila_lendvai has joined #lisp
bitmapper has quit [Quit: Connection closed for inactivity]
aorst is now known as andfeyorst[m]
judson_ has joined #lisp
kenu has quit [Remote host closed the connection]
andfeyorst[m] is now known as andreyorst[m]
hiroaki has joined #lisp
<theothornhill>
I'm having some trouble with quicklisp on M1 Mac. Is it known that some libraries don't seem to download on it?
<theothornhill>
(ql:quickload :drakma) hangs for me in sly and slime repl
rogersm has quit [Quit: Leaving...]
cage_ has quit [Quit: Leaving]
<theothornhill>
Same with (ql:quickload :hunchentoot)
theothornhill has left #lisp ["ERC (IRC client for Emacs 28.0.50)"]
<phoe>
annnnd he's gone
<phoe>
wish you'd stayed around for the answer, theothornhill
bitmapper has joined #lisp
asarch has joined #lisp
Inline has quit [Ping timeout: 272 seconds]
theothornhill has joined #lisp
dra has quit [Ping timeout: 240 seconds]
<asarch>
In Emacs, how do you insert all the necessary )'s to close the expression? E.g. (foo (bar (smap (baz (if (when (cond ... <- Is there a key shortcut for this?
McParen has joined #lisp
<_death>
C-c C-]
<theothornhill>
phoe: dc'd, sorry :P
<asarch>
Thank you _death!
<asarch>
Thank you very much! :-)
<phoe>
theothornhill: could you C-c C-c and provide a backtrace?
<_death>
asarch: if in the REPL, you can C-RET
<theothornhill>
I don't get a backtrace with C-c C-c unfortunately
<asarch>
Thank you guys
<phoe>
oh, it's completely hung? huh
<asarch>
:-)
<theothornhill>
Yep
<phoe>
what if you try to do the same from the terminal and then try C-c?
<theothornhill>
However, (ql:quickload :spinneret) worked fine
<phoe>
does *inferior-lisp* tell you anything?
<theothornhill>
I'll try
<theothornhill>
* (ql:quickload :drakma)
<theothornhill>
To load "drakma":
<theothornhill>
drakma
<theothornhill>
Load 1 ASDF system:
<theothornhill>
; Loading "drakma"
<theothornhill>
....WARNING: /usr/local/Cellar/sbcl/2.0.11/libexec/bin/sbcl is loading libcrypto in an unsafe way
<theothornhill>
fatal error encountered in SBCL pid 52693 pthread 0x10465de00:
<theothornhill>
SIGABRT received.
<theothornhill>
<phoe>
theothornhill: oh noooo please use pastebins
<theothornhill>
Welcome to LDB, a low-level debugger for the Lisp runtime environment.
<theothornhill>
something about libcrypto
<theothornhill>
hehe sry
<phoe>
yes, I know this error
<theothornhill>
sec
<phoe>
one second...
<theothornhill>
I guess it hangs in emacs because of that, but fails to show it to me there
<White_Flame>
since there's no in-package in that file, it's probably running within cl-user
<White_Flame>
it's an illegal function call in terms of trying to evaluate the last parameter in (foo :blah :components ((:file "main"))) before trying to call foo
abhixec has quit [Remote host closed the connection]
dbotton has quit [Quit: This computer has gone to sleep]
<pve>
I think asdf switches to its own package when loading asd files..
<White_Flame>
huh, well I suspect the error is that it doesn't know that the "defsystem" is a macro, hence it's trying to evaluate the parameters
<nij>
Is there a way to post an adhoc git repo?
<White_Flame>
which points to package issues
<phoe>
nij: gist, in a way
<phoe>
but it's kind of a hassle, it doesn't support subdirectories either
<ealfonso>
is there a way to generate a nice graphical report with sb-sprof?
iskander has quit [Ping timeout: 260 seconds]
iskander- has joined #lisp
<phoe>
nij: yes
<phoe>
ealfonso: there is a flamegraph package somewhere
daphnis has quit [Ping timeout: 240 seconds]
<ealfonso>
phoe thanks, looks cool. quickload tells me <System "flamegraph" not found>, will try installing manually
<White_Flame>
nij: and the :serial t means the files will be read in order that you list them. If it's not serial, then each file should list what peers it's dependent on, for more complex stuff
iskander- has quit [Ping timeout: 264 seconds]
<nij>
White_Flame: You mean when the dependent tree is not "linear", right?
<White_Flame>
right
<nij>
In each file, how to I claim its dependencies?
<White_Flame>
I believe that :serial t means that each file gets a dependency list of all files before it, and then it does the full dependency resolving stuff
<White_Flame>
(:file "blah" :depends-on ...) I think
<White_Flame>
check the manual
iskander has joined #lisp
<phoe>
ealfonso: it's not a system per se, one second
<pve>
Is there a good workflow that lets me start slime, and once connected, automatically load a "session" lisp file that sets up my session by loading some systems, maybe running some tests and entering some package? It would also be important for me to be able to restart the session easily, like pressing a single button.
<phoe>
pve: restarting it for me is ,ril<RET>
<phoe>
also, you can define a helper function in your RC file that does what you want
<phoe>
(defun s () (ql:quickload ...) (in-package ...))
Iolo has joined #lisp
<pve>
I've written a 20% solution that does the bare minimum i need, but I was wondering if there's maybe a contrib or something
<phoe>
and then, when your slime is loaded, (s) and you're ready to go
<pve>
phoe: is that how you do it?
<pfdietz>
Hypothesis is a random input generation library, originally in Python. The interesting twist it has is minimizing interesting inputs by mutating the recorded random bits used by the generator.
<phoe>
pve: nope, I manually do ql:quickload and cl:in-package
<phoe>
but I restart my Lisp rarely enough for me to not need a custom startup function
<phoe>
a few times a day is nothing
<phoe>
pfdietz: I see
<pfdietz>
That way, if your generator enforces some condition on the generated objects, that is maintained even as you simplify it.
<pve>
phoe: I've a couple of elisp functions that let me start slime "with the current buffer" and then by pressing a single button (I use F7) it will restart slime and load that same "session" file.
iskander has joined #lisp
<pve>
scymtym: aha, that looks interesting
<nij>
Oh it's lovely. Finally made asdf work the first time <3
<nij>
Thanks for all your help!
<nij>
How do I export all symbols in a file. E.g.. here is my config.lisp: https://bpa.st/UNMAK
<pve>
phoe: and I've found it so exceedingly useful that I'd like to see if there's something a bit more polished around
judson_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<nij>
The user can add more questionnaires in side. The idea is to make all questionnaires here public, automatically.
iskander has quit [Ping timeout: 256 seconds]
shka_ has quit [Ping timeout: 240 seconds]
iskander has joined #lisp
dra has quit [Remote host closed the connection]
iskander has quit [Ping timeout: 264 seconds]
<pve>
scymtym: slime-eval-async seems really useful, I wasn't aware that existed
<scymtym>
pve: yeah, i didn't use or need any of this before i started working on the McCLIM windows backend under wine