<Xach>
This is a pain when trying to print code. By default things print with the subpackage and not the main package.
<Xach>
Especially if the idea is "the specific subpackage is an implementation detail"
cosimone has quit [Quit: Quit.]
<phoe>
I don't know a way around this, other than defining the API package first and having implementation packages define stuff on the API's symbols.
cosimone has joined #lisp
<phoe>
Instead of having the API package just reexport stuff from other packages.
<oni-on-ion>
jasom, alright thank you. i will take a look at that ,but it does seem a bit overexhaustive atm.
vivit has joined #lisp
vivit has joined #lisp
vivit has quit [Changing host]
<jasom>
oni-on-ion: obviously if I were happy with things as they are now, I wouldn't have made that prototype that _death linked earlier :)
<oni-on-ion>
jasom, oh! i dodged it because of acronym, generally projects with acros are beyond my level of academic qualifications i find =) did not realise it was yours.
<oni-on-ion>
in the description, exactly describes what i was looking for. i wonder also if it could help with lisp sandboxing
<jasom>
oni-on-ion: it doesn't help with sandboxing because it still uses lisp packages under-the-hood
<jasom>
so you could still do (find-package "some-long-name")
turona has quit [Ping timeout: 246 seconds]
<jasom>
oni-on-ion: and if you do decide to use it, then perhaps limit the characters it installs reader-macros for to ascii (though that does mean that tokens starting with non-ascii characters would be read as normal).
turona has joined #lisp
makomo has quit [Ping timeout: 268 seconds]
oni-on-ion has quit [Ping timeout: 248 seconds]
oni-on-ion has joined #lisp
efm has quit [Ping timeout: 258 seconds]
xvx has quit [Quit: xvx]
brown121407 has quit [Ping timeout: 260 seconds]
smazga has quit [Quit: leaving]
efm has joined #lisp
karlosz has joined #lisp
cosimone has quit [Quit: Quit.]
cosimone has joined #lisp
z147d has quit [Ping timeout: 240 seconds]
brown121407 has joined #lisp
varjag has joined #lisp
CrazyEddy has quit [Remote host closed the connection]
efm has quit [Ping timeout: 258 seconds]
jebes has joined #lisp
varjag has quit [Ping timeout: 258 seconds]
efm has joined #lisp
karlosz has quit [Quit: karlosz]
karlosz has joined #lisp
akoana has left #lisp ["Leaving"]
pjb has quit [Remote host closed the connection]
pjb has joined #lisp
gxt has quit [Ping timeout: 240 seconds]
learning has quit [Remote host closed the connection]
Kaisyu7 has quit [Quit: ERC (IRC client for Emacs 26.3)]
davepdotorg has quit [Ping timeout: 240 seconds]
zulu-inuoe has joined #lisp
Josh_2 has quit [Ping timeout: 265 seconds]
<zulu-inuoe>
Hello, world! Anyone here running SLIME on MacOS Catalina? I'm trying to help somebody right now who's getting errors loading cl+ssl, but only when running through SLIME. Even (ql:quickload :swank) at the terminal works fine and they can start a swank server manually
<zulu-inuoe>
(ql:quickload :cl+ssl) works fine too, for reference. They'd previously had issues which they solved via a brew install openssh
rwrsdjlhvwi has quit [Ping timeout: 260 seconds]
<Xach>
zulu-inuoe: what errors?
<Xach>
zulu-inuoe: i had some recent errors too but they were fixed by cleared fasls.
Kaisyu7 has joined #lisp
papachan has quit [Quit: Leaving]
<zulu-inuoe>
Xach: Unfortunately not. It looks like it's hanging completely, no messages in *Messages*, and they didn't see any relevant output in the inferior-lisp buffer they're giving it another shot now
<zulu-inuoe>
Before, it was hitting the LDB (before installing openssh)
<Xach>
yikes
<Xach>
I guess I'm still on mojave
<Xach>
I thought I had already upgraded
<zulu-inuoe>
Look forward to pain then :D
<zulu-inuoe>
actually, it looks like this might be user error. I just looked at their log and they have ;; Swank started at port: 50078. and no relevant errors afterwards. Might be SLIME's not configured right to bring up the fancy repl
<zulu-inuoe>
.. Huh. Why it it starting on port 50078, actually, rather than the 4005 default? That might be part of this too.
<_death>
4005 is only the default if you call swank:create-server
<zulu-inuoe>
Oh I see. So that should be fine then
count3rmeasure has joined #lisp
patlv has joined #lisp
bitmapper has quit [Ping timeout: 260 seconds]
learning has joined #lisp
ebzzry has quit [Ping timeout: 265 seconds]
learning has quit [Client Quit]
cosimone has quit [Quit: Quit.]
<zulu-inuoe>
Okay. Update. I was misunderstanding exactly what was happening. SLIME is in fact connecting successfully, and they get the repl and can eval happily all day. But then if they (ql:quickload :cl+ssl), it hands in trying to load it
<zulu-inuoe>
.
dddddd has quit [Remote host closed the connection]
<zulu-inuoe>
hangs*. However, this does not happen if they just (ql:quickload :cl+ssl) at a bare SBCL REPL
<zulu-inuoe>
(no output in the SBCL terminal, BTW, beyond the client having connected)
<zulu-inuoe>
What jolly fun. I do hope it turns out to be something stupid simple
antepod has quit [Ping timeout: 268 seconds]
rdh has joined #lisp
rdh has quit [Quit: Leaving]
count3rmeasure has quit [Quit: Leaving]
stepnem has quit [Ping timeout: 265 seconds]
g0d_shatter has joined #lisp
patlv has quit [Ping timeout: 268 seconds]
Kundry_Wag has quit [Read error: No route to host]
Kundry_Wag has joined #lisp
slyrus has joined #lisp
ahungry has joined #lisp
slyrus__ has quit [Ping timeout: 260 seconds]
<_death>
did you try with :verbose t? or loading the foreign library manually?
Lord_of_Life_ has joined #lisp
<_death>
could also try to save an image with it loaded in the terminal..
Lord_of_Life has quit [Ping timeout: 268 seconds]
Lord_of_Life_ is now known as Lord_of_Life
smokeink has joined #lisp
brown121407 has quit [Ping timeout: 258 seconds]
X-Scale` has joined #lisp
X-Scale has quit [Ping timeout: 240 seconds]
X-Scale` is now known as X-Scale
brown121407 has joined #lisp
karswell has quit [Remote host closed the connection]
karswell has joined #lisp
Kundry_Wag has quit [Read error: Connection reset by peer]
davepdotorg has joined #lisp
Kundry_Wag has joined #lisp
X-Scale has quit [Ping timeout: 260 seconds]
X-Scale` has joined #lisp
X-Scale` is now known as X-Scale
davepdotorg has quit [Ping timeout: 240 seconds]
g0d_shatter has quit [Quit: Leaving]
anewuser has joined #lisp
Kundry_Wag has quit [Read error: No route to host]
stepnem has joined #lisp
Kundry_Wag has joined #lisp
vivit has quit [Ping timeout: 260 seconds]
jgodbout has joined #lisp
madage has quit [Remote host closed the connection]
madage has joined #lisp
kscarlet has joined #lisp
brettgilio has quit [Ping timeout: 268 seconds]
brettgilio has joined #lisp
g0d_shatter has joined #lisp
kscarlet has quit [Ping timeout: 258 seconds]
anewuser has quit [Ping timeout: 265 seconds]
shifty has quit [Ping timeout: 260 seconds]
khisanth_ has quit [Ping timeout: 258 seconds]
khisanth_ has joined #lisp
stepnem has quit [Ping timeout: 240 seconds]
Necktwi has quit [Ping timeout: 240 seconds]
FreeBirdLjj has joined #lisp
stepnem has joined #lisp
Bike has quit [Quit: Lost terminal]
FreeBirdLjj has quit [Ping timeout: 260 seconds]
narimiran has joined #lisp
ggole has joined #lisp
oxum has quit [Remote host closed the connection]
harovali has joined #lisp
<harovali>
hi! I started emacs as user not as root, as usual. Then ran slime. I can edit /usr/share/emacs/site-lisp/slime/ using tramp with sudo. Is it possible to run (compile ...) on that root-owned file and directory? If yes, how? thanks !
<harovali>
I mean (compile "/usr/share/emacs/site-lisp/slime/swank.lisp")
reg32 has joined #lisp
patlv_ has quit [Quit: Leaving]
reg32 has quit [Remote host closed the connection]
<harovali>
never mind, changed owner of /usr/share/emacs/site-lisp/slime/ and compiled fine
oxum has joined #lisp
oxum has quit [Remote host closed the connection]
oxum has joined #lisp
gravicappa has joined #lisp
brown121407 has quit [Ping timeout: 260 seconds]
oxum has quit [Remote host closed the connection]
oxum has joined #lisp
oxum has quit [Remote host closed the connection]
brown121407 has joined #lisp
ahungry has quit [Remote host closed the connection]
_whitelogger has joined #lisp
shifty has joined #lisp
ArthurStrong has joined #lisp
karlosz has quit [Quit: karlosz]
oxum has quit [Remote host closed the connection]
oxum has joined #lisp
karlosz has joined #lisp
harovali has quit [Remote host closed the connection]
william1_ has joined #lisp
makomo has joined #lisp
<beach>
Good morning everyone!
<ArthurStrong>
beach: good morning indeed
william1_ has quit [Ping timeout: 268 seconds]
dale has quit [Quit: My computer has gone to sleep]
g0d_shatter has quit [Remote host closed the connection]
ArthurStrong has quit [Quit: leaving]
ArthurStrong has joined #lisp
JohnMS_WORK has joined #lisp
doublex_ has joined #lisp
zooey has quit [Ping timeout: 240 seconds]
vlatkoB has joined #lisp
zooey has joined #lisp
doublex__ has quit [Ping timeout: 260 seconds]
nowhere_man has joined #lisp
makomo has quit [Ping timeout: 268 seconds]
scymtym has quit [Ping timeout: 258 seconds]
varjag has joined #lisp
flamebeard has joined #lisp
karlosz has quit [Quit: karlosz]
karlosz has joined #lisp
karlosz has quit [Client Quit]
frgo_ has quit [Ping timeout: 268 seconds]
karlosz has joined #lisp
jprajzne has joined #lisp
nowhere_man has quit [Ping timeout: 268 seconds]
scymtym has joined #lisp
shangul has joined #lisp
reg32 has joined #lisp
davepdotorg has joined #lisp
karlosz has quit [Quit: karlosz]
davepdotorg has quit [Ping timeout: 258 seconds]
<reg32>
Does anybody know why Roswell has a C part and hasn't been fully written in CL?
Kundry_Wag has quit [Read error: No route to host]
Kundry_W_ has joined #lisp
reg32 has quit [Quit: Ping timeout (120 seconds)]
<easye>
reg32: Roswell depends on fairly portable C to do things one uses Bourne or Bash scripting for.
<easye>
Whoops. Talking to myself apparently. Again.
anewuser has quit [Read error: Connection reset by peer]
z147d has joined #lisp
brown121407 has quit [Ping timeout: 258 seconds]
brown121408 has joined #lisp
whartung has quit [Read error: Connection reset by peer]
zmt01 has joined #lisp
<flip214>
easye: no, we're all listening eagerly!
whartung has joined #lisp
zmt00 has quit [Ping timeout: 260 seconds]
enrio has joined #lisp
<Shinmera>
It's in C so it can be bootstrapped easily.
<Shinmera>
Or in the very least that was the initial idea.
ArthurStrong has quit [Quit: leaving]
<pjb>
easye: I use CL to write my scripts. Why should one choose to use C for that? Beyond comprehension…
<Shinmera>
Personally I would have written everything in CL and then dumped binaries for the various platforms.
<pjb>
Shinmera: we're really past the bootstrapping phase. Well, ok, I will agree that we could have a few more CL compilers, including cross compilers. I guess this will be easy to implement with sicl.
Tevin has joined #lisp
<Shinmera>
pjb: The point of Roswell is to be able to get CL when you don't have CL already.
<Shinmera>
The solution they perceived was to write a C program that could fetch a CL for you.
* beach
was about to ask what problem Roswell solves.
<Shinmera>
You don't need to tell me what the right way to do it is, it wasn't my idea.
<pjb>
Shinmera: well, that purpose is also incomprehensible. I have lisp installed on my systems even before the kernel or the system is completely installed, since the first thing I put on a new system is emacs and ccl...
<Shinmera>
Good for you.
dddddd has joined #lisp
Tevin is now known as rwcom
<easye>
pjb: if one really wanted to work across classical Windows/Unix, writing a small piece of portable C might be the way to go.
flamebeard has quit [Remote host closed the connection]
hhdave has joined #lisp
z147d has joined #lisp
davepdotorg has joined #lisp
orivej has joined #lisp
hhdave has quit [Ping timeout: 268 seconds]
davepdotorg has quit [Ping timeout: 268 seconds]
<galdor>
to be honest, to download build and install CL implementations, neither C nor CL are the simplest choice
<galdor>
shell scripts exist for this kind of task
<galdor>
of course one could use CL and UIOP:RUN-PROGRAM but it's just painful
davepdotorg has joined #lisp
<aeth>
The easiest way to bootstrap CL is CL imo
<aeth>
Good for Linux, where you'll probably have a(n outdated) CL in your distro
<aeth>
On Windows, you'll just download a random .EXE unless the typical Windows workflow has changed significantly. In this case, SBCL has EXEs
_paul0 has joined #lisp
<aeth>
So at least two OSes have easy access to a CL for bootstrapping
paul0 has quit [Ping timeout: 252 seconds]
william1_ has joined #lisp
pok has quit [Ping timeout: 245 seconds]
kscarlet has joined #lisp
brown121408 has quit [Read error: Connection reset by peer]
william1_ has quit [Ping timeout: 258 seconds]
brown121408 has joined #lisp
william1_ has joined #lisp
trafaret1 has joined #lisp
kscarlet has quit [Ping timeout: 260 seconds]
pok has joined #lisp
aindilis has quit [Ping timeout: 258 seconds]
enrio has quit [Ping timeout: 258 seconds]
thealemazing has joined #lisp
flamebeard has joined #lisp
ebzzry has joined #lisp
flamebeard has quit [Ping timeout: 268 seconds]
random-nick has joined #lisp
<p_l>
aeth: I mostly use roswell on macos
pok has quit [Ping timeout: 268 seconds]
pok has joined #lisp
heisig has joined #lisp
Lord_of_Life has quit [Read error: Connection reset by peer]
Lord_of_Life has joined #lisp
jonatack has quit [Ping timeout: 248 seconds]
oxum_ has joined #lisp
oxum__ has joined #lisp
oxum__ has quit [Read error: Connection reset by peer]
oxum has quit [Ping timeout: 260 seconds]
oxum has joined #lisp
oxum_ has quit [Remote host closed the connection]
narimiran has quit [Read error: Connection reset by peer]
narimiran has joined #lisp
CrazyEddy has quit [Ping timeout: 260 seconds]
oxum has quit [Remote host closed the connection]
cosimone has joined #lisp
CrazyEddy has joined #lisp
rippa has joined #lisp
m00natic has joined #lisp
cosimone has quit [Remote host closed the connection]
cosimone has joined #lisp
oxum has joined #lisp
Lycurgus has joined #lisp
oxum has quit [Remote host closed the connection]
oxum_ has joined #lisp
oxum_ has quit [Remote host closed the connection]
admich has joined #lisp
oxum_ has joined #lisp
oxum_ is now known as oxum
flamebeard has joined #lisp
brown121408 has quit [Ping timeout: 268 seconds]
oxum has quit [Remote host closed the connection]
brown121408 has joined #lisp
fookara has joined #lisp
Lycurgus has quit [Remote host closed the connection]
thealemazing has quit [Ping timeout: 260 seconds]
cosimone has quit [Quit: Terminated!]
cosimone has joined #lisp
<johnjay>
p_l: ah, maybe you can explain what that does exactly
<johnjay>
i was confused as hell by this thing I downloaded that said to use ros or something in the make file
<johnjay>
i think somehow I managed to trick quicklisp into getting everything built though
<p_l>
johnjay: it provides a somewhat easy way to bootstrap a bunch of implementations and also supports triggering building complete applications with apropriate wrappers in automated way
<p_l>
as in, QL by itself doesn't provide a way to one-command build a program that will be registered so you can just run it from OS
oxum has joined #lisp
<johnjay>
ah ok
<johnjay>
see I specifically wanted to run it from inside sbcl so i could debug stuff
<johnjay>
so... yeah that was weird
<johnjay>
the small glimpse i had into building with lisp terrified and confused me
<phoe>
johnjay: (asdf:make :system-name) tends to be good enough, usually
<johnjay>
>Specifically it is geared towards applications with foreign library dependencies that run some kind of GUI.
<phoe>
if you have no foreign libraries and/or GUI then no one prevents you from using this library either
<johnjay>
ok. it sounded a bit like saying the new Toyota is geared toward bipedal organisms with binocular vision.
<phoe>
you can deploy pure-Lisp server applications with it as well, you just don't use the parts responsible for handling foreign libraries
<Shinmera>
johnjay: far from everything has foreign library dependencies, and far from everything presents a GUI
cosimone has quit [Quit: Terminated!]
<johnjay>
Shinmera: that's... not very reassuring. but yes that is correct.
<Shinmera>
? It's not meant to be reassuring, it's refuting your weird comparison.
admich has quit [Read error: No route to host]
harovali has joined #lisp
william1 has joined #lisp
<harovali>
hi!, I'm debbugging with slime. Is it possible after a function call, see the return value of a function after 's' or 'x' keystroke in the code block buffer?
swflint has quit [Ping timeout: 252 seconds]
<phoe>
if anything, lack of GUI and lack of foreign code are two very reassuring things about a program
<phoe>
*especially* from a Lisp programmer's perspective
swflint has joined #lisp
<phoe>
since it means that we don't need to care about two things that tend to screw up often in various twisted and difficult ways
smokeink has quit [Ping timeout: 240 seconds]
<Xach>
harovali: no
<Xach>
harovali: i use trace for that
Guest30616 is now known as neuro_sys
<harovali>
Xach thanks
harovali has quit [Remote host closed the connection]
frgo has joined #lisp
oni-on-ion has quit [Remote host closed the connection]
oni-on-ion has joined #lisp
shangul has quit [Ping timeout: 268 seconds]
harovali has joined #lisp
rwcom has quit [Read error: Connection reset by peer]
rwcom has joined #lisp
jonatack has joined #lisp
cmatei has quit [Read error: Connection reset by peer]
lucasb has joined #lisp
cmatei has joined #lisp
<harovali>
In the stepper in slime bound but not used variables are not shown in the frame's variables ? Why ?
oxum has joined #lisp
jmercouris has joined #lisp
<Xach>
I don't know, sorry, I haven't used the stepper
<Xach>
I more often use (break) and high debug (C-u C-c C-c) to look at local variables.
<jackdaniel>
harovali: you may try to set high debugging settings
<jackdaniel>
it might be that compiler optimized away things which are not used
oxum has quit [Ping timeout: 268 seconds]
shangul has joined #lisp
oxum has joined #lisp
<harovali>
jackdaniel: 3 is highest?
<jackdaniel>
yes
<harovali>
jackdaniel: can I *check* by querying a variable (sbcl) which level it is ?
<jackdaniel>
I don't think you can using ansi cl functions
<harovali>
Xach, What is high debug different than pressing x for the next ?
<harovali>
jackdaniel: it's implementation defined for sure
<Shinmera>
I see no messages in my chat that aren't in the log
<pfdietz>
Ah, Xach was so light in color I missed him. nvm
wxie has quit [Ping timeout: 260 seconds]
shifty has quit [Ping timeout: 265 seconds]
FreeBirdLjj has joined #lisp
<Xach>
pale as a ghost
atgreen has joined #lisp
jonatack has quit [Read error: Connection reset by peer]
patlv has quit [Ping timeout: 268 seconds]
<pfdietz>
Xach: do you have download stats for ql projects? This was posted on the blog in Feb 2018, but not more recently.
jonatack has joined #lisp
khisanth_ is now known as Khisanth
wyan has quit []
paul0 has quit [Ping timeout: 246 seconds]
oxum has quit [Remote host closed the connection]
oxum has joined #lisp
nullniverse has joined #lisp
<phoe>
I kinda wish it was generated and posted somewhere automatically with each QL release
<edgar-rft>
In Common Lisp chronology, Februar 2018 was yesterday morning
patlv has joined #lisp
jayspeer has joined #lisp
jayspeer has quit [Client Quit]
jayspeer has joined #lisp
igemnace has joined #lisp
patlv_ has joined #lisp
patlv_ has quit [Ping timeout: 260 seconds]
JohnMS has quit [Read error: Connection reset by peer]
<Xach>
pfdietz: i don't have them handy any more.
EvW has joined #lisp
TanKian has joined #lisp
reg32 has joined #lisp
igemnace has quit [Quit: WeeChat 2.7]
Lord_of_Life_ has joined #lisp
Lord_of_Life has quit [Ping timeout: 258 seconds]
Lord_of_Life_ is now known as Lord_of_Life
<eeeeeta>
SYMBOL-MACROLET is the best thing ever
* eeeeeta
<3
aindilis has joined #lisp
<pfdietz>
macrolet and symbol-macrolet, while cool and useful, don't work well with code walkers. :/
<Odin->
Aren't there a ton of things in CL that can mess with those?
cosimone has quit [Quit: Terminated!]
<Bike>
if you have parse-macro and enclose, macrolet's fine with code walking, isn't it?
anunnaki has quit [Ping timeout: 260 seconds]
jonatack has quit [Ping timeout: 265 seconds]
<Bike>
oh, and augment-environment i guess.
<Bike>
i suppose usually you don't have that stuff
grewal has quit [Ping timeout: 268 seconds]
oxum has quit [Ping timeout: 260 seconds]
<phoe>
not unless you use some sort of cltl2 package
grewal has joined #lisp
<pjb>
pfdietz: bad code walkers. Any code walker worth its bits will deal with macrolets and symbol-macrolets perfectly well.
jprajzne has quit [Quit: Leaving.]
<pjb>
pfdietz: the only thing that is bad for code walkers, is implementation-specific special forms. (Unless the implementation provides an equivalent macro).
<pfdietz>
Specifically, the code walker in ITERATE
<pfdietz>
ITERATE gives up walking if it finds macrolet or symbol-macrolet. Which means if you wrap a form in one of those, or have a macro expansion that introduces them, an iterate form can break.
heisig has quit [Quit: Leaving]
<Bike>
wow, really? that's pretty unfortunate.
davr0s has joined #lisp
davr0s_ has joined #lisp
edgar-rft has quit [Quit: Leaving]
<eeeeeta>
huh
<eeeeeta>
I mainly find SYMBOL-MACROLET useful for when you have a CLOS object inside another CLOS object
<Shinmera>
I'm reminded that I should switch out FOR's home-brewed, shitty iteration protocol for the extensible sequences one.
<eeeeeta>
and you don't want to write (accessor-2 (accessor-1 thing))
<eeeeeta>
(that is, multiple times)
Josh_2 has joined #lisp
<Bike>
i don't really see how you could handle, like, a macrolet macro body referring to an outer macro definition without implementation support, tho.
<Bike>
symbol macrolet by itself could probably be managed
<Bike>
well, no, but then a macro function could call macroexpand, huh
Kundry_W_ has quit [Read error: Connection reset by peer]
Kundry_Wag has joined #lisp
gareppa has joined #lisp
gareppa has quit [Remote host closed the connection]
dale_ has joined #lisp
dale_ is now known as dale
Kundry_Wag has quit [Remote host closed the connection]
Kundry_Wag has joined #lisp
EvW has quit [Ping timeout: 260 seconds]
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #lisp
antepod has quit [Ping timeout: 240 seconds]
ebrasca has joined #lisp
FreeBirdLjj has quit [Ping timeout: 260 seconds]
trittweiler has joined #lisp
vivit has joined #lisp
vivit has quit [Changing host]
vivit has joined #lisp
reg32 has quit [Remote host closed the connection]
Bike has quit [Ping timeout: 260 seconds]
efm has quit [Ping timeout: 268 seconds]
shifty has joined #lisp
Bike has joined #lisp
flamebeard has quit []
Necktwi has joined #lisp
jayspeer has quit [Quit: going to sleep... Zzzz...]
TanKian has quit [Quit: TanKian]
shifty has quit [Ping timeout: 260 seconds]
nullniverse has quit [Quit: Leaving]
Kundry_Wag has quit [Read error: No route to host]
<Odin->
Given the details being talked about, I would be remiss not to point out that #| is also a default readtable thing which makes for a balanced comment.
<Odin->
... which, if we're assuming #() is not a given, might just as well have been changed around. :)
<beach>
katco: Why do you have mysterious blank lines within your functions?
<harovali>
Odin-: now to see if slime can close that balanced brackets
<beach>
katco: And I recommend using WITH-ACCESSORS rather than WITH-SLOTS. Slots are implementation details that should be used as little as possible. Accessors on the other hand are part of the protocol specification. Or they should be.
<katco>
beach: readability. i do compress usually, but i found newlines between `let` blocks and the like helped me scan. i didn't think complete compressions was idiomatic; is it?
<beach>
katco: If you have problems like that, it is better to divide the function into smaller independent functions without any blank lines in them.
<pjb>
katco: it's not exactly idiomatic, but the presence of empty lines in a function is a smell: perhaps your function is too big!
<katco>
beach: ah, i didn't realize that about slots/accessors. i thought slots were supposed to be used intra-class, and accessors inter-class
<beach>
katco: There is no particular reason to have a newline after (COND.
<beach>
You are wasting valuable vertical space.
<beach>
The person reading your code can see fewer lines at once.
<katco>
ok, duly noted re. newlines :) it sounds like the community dislikes them in all cases
gareppa has quit [Quit: Leaving]
<beach>
katco: I recommend you look at some code written by experienced people, like Norvig for instance.
<pjb>
katco: you're correct about intra-class, but since methods are not attached to classes, but to generic functions, this is less meaningful than in other OO languages. Often, it will be easier to maintain the code if you always go thru accessors. Only in very special cases accessing the slots directly is indicated.
<katco>
beach: i have. this is the first set of libs i've experimented with introducing newlines
<katco>
pjb: that clarifies things a lot for me, thanks
<beach>
katco: So in one case, you have a comment followed by a blank line. That's very strange.
<beach>
katco: All that makes it look like your blank lines are completely arbitrary.
<katco>
beach: can you provide a link?
<beach>
To Norvig's code? I recommend you read PAIP.
<beach>
minion: Please tell katco about PAIP.
<minion>
katco: PAIP: Paradigms of Artificial Intelligence Programming. More about Common Lisp than Artificial Intelligence. Now freely available at https://github.com/norvig/paip-lisp
<katco>
beach: no to this comment
<beach>
It is in your code line 265.
<katco>
beach: i have read some of that book
<katco>
beach: can you specify project? file?
grabarz_ is now known as grabarz
<beach>
gir2cl main.lisp
<katco>
ty!
<beach>
katco: If you read Norvig's book, you will have noticed very few blank lines within functions.
<katco>
ah yes, that does look a little out of place
<beach>
You have a comment at the top level with only two semicolons.
<katco>
i do like the newlines between the `cond` blocks because it helps me visually parse when a new block begins, but as you and pjb have said, maybe that's a nudge for functions for each of the blocks
<pjb>
katco: on the other hand, to each programmer his own style and readability tricks. The problem is with the Internet, when we exchange and communicate code. For this reason, I would advocate using emacs to present lisp sources to your own specifications. You could program emacs, so that it displays an interline (or perhaps even 1/2 interline) between each cond/case etc clauses, or between subsequent let forms, etc.
karlosz has quit [Remote host closed the connection]
<pjb>
katco: so the source file wouldn't contain those interlines, but emacs would display them to you.
<katco>
pjb: i hadn't considered that. not a bad idea. i feel it's a rehash of the whole tabs vs. spaces argument :)
<beach>
katco: In cl-apache-arrow, arrow-low-level.lisp, you indentation of line 8 is wrong.
<beach>
katco: Also, don't use nil for an empty list of parameters or superclasses. Use ().
<katco>
i'm afraid that's from the autogeneration of code. i'd have to find a fix in `gir2cl`
<beach>
So you asked us to review generated code?
<pjb>
() = code empty list; '() = data empty list (in code); nil = false ; 'nil = symbol NIL (in code).
<pjb>
:-)
<beach>
pjb: Can you remember the Common Lisp HyperSpec entry that mentions that?
<katco>
beach: those 2 files are the only generated code, and they are generated from the other project you've just reviewed.
<pjb>
I used my M-x grep-hyperspec emacs command :-)
<beach>
What did you grep for? NIL?
<pjb>
'()
<beach>
Ah, good catch.
<pjb>
of the four, it was the most specific I thought.
<beach>
I agree.
<beach>
OK, I need to go fix dinner for my (admittedly small) family.
<pjb>
Bon appetit!
<katco>
beach: tyvm for the review
<katco>
i really appreciate it
<katco>
and to you, pjb, for your comments
brown121407 has joined #lisp
brown121408 has quit [Ping timeout: 265 seconds]
harovali` has joined #lisp
davepdotorg has quit [Remote host closed the connection]
smazga has joined #lisp
LiamH has quit [Quit: Leaving.]
slyrus_ has joined #lisp
smokeink has quit [Ping timeout: 240 seconds]
harovali has quit [Ping timeout: 240 seconds]
gabiruh_ has quit [Ping timeout: 260 seconds]
slyrus has quit [Ping timeout: 265 seconds]
cosimone has joined #lisp
scymtym has quit [Ping timeout: 248 seconds]
karlosz has joined #lisp
karlosz has quit [Remote host closed the connection]
<pfdietz>
Xach: I'm interested in general popularity. I've been doing some testing improvement on various projects, and want to focus on the most used ones.
cosimone has quit [Excess Flood]
varjag has joined #lisp
slyrus__ has joined #lisp
cosimone has joined #lisp
slyrus_ has quit [Ping timeout: 258 seconds]
vivit has joined #lisp
slyrus_ has joined #lisp
EvW has joined #lisp
Oladon has quit [Quit: Leaving.]
m00natic has quit [Remote host closed the connection]
slyrus__ has quit [Ping timeout: 258 seconds]
TMA has quit [Ping timeout: 260 seconds]
TMA has joined #lisp
<Xach>
pfdietz: ok.
<Xach>
pfdietz: i have restarted my log analyzer thingy so i'll get you that info sometime soon.
william1 has quit [Ping timeout: 258 seconds]
slyrus__ has joined #lisp
grabarz has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
grabarz has joined #lisp
slyrus_ has quit [Ping timeout: 240 seconds]
vivit has quit [Ping timeout: 258 seconds]
oni-on-ion has quit [Quit: Quit]
<fe[nl]ix>
pfdietz: what do you want to do ?
z147d has quit [Ping timeout: 240 seconds]
vivit has joined #lisp
grabarz has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
orivej has quit [Ping timeout: 260 seconds]
orivej has joined #lisp
<Josh_2>
pjb: in this code you wrote the other day as an example https://termbin.com/x9ft why do you use (apply (function format).. ) instead of just (format ..)?
slyrus_ has joined #lisp
makomo has joined #lisp
slyrus__ has quit [Ping timeout: 265 seconds]
jeosol has quit [Ping timeout: 260 seconds]
karlosz has joined #lisp
brown121407 has quit [Read error: Connection reset by peer]
brown121407 has joined #lisp
cosimone_ has joined #lisp
cosimone has quit [Ping timeout: 248 seconds]
slyrus has joined #lisp
TMA has quit [Ping timeout: 240 seconds]
william1_ has quit [Ping timeout: 260 seconds]
zclark has joined #lisp
gabiruh has joined #lisp
slyrus_ has quit [Ping timeout: 260 seconds]
TMA has joined #lisp
karlosz has quit [Quit: karlosz]
gabiruh has quit [Ping timeout: 260 seconds]
jonatack has joined #lisp
william1_ has joined #lisp
<pjb>
Josh_2: because we have a variable number of arguments, known only at run-time.
<pjb>
Josh_2: coming from &rest format-arguments in f-format.
<pjb>
Josh_2: the alternative would be to use ~?: (format *log-output* "~?" control-string format-arguments)
<pjb>
Josh_2: perhaps it would be better to use ~?, but it's specific to format. In general, you would use apply in this situation.
Kundry_Wag has quit [Remote host closed the connection]
william1 has joined #lisp
<jurov>
pjb: and why not just (apply 'format ...) ?
<jurov>
with format it is unlikely to happen, but I found out when function foo is recompiled, (function foo) sometimes uses old version
<jurov>
so now i pass only symbol to apply
<pjb>
In the case of functions from CL, it doesn't make a difference. Possibly, 'format would be slower at run-time, than #'format, but a good compiler could generate the same code for both, for functions from CL.
Kundry_Wag has joined #lisp
<pjb>
For functions NOT in CL, it can give different results.
<jackdaniel>
jurov: #'foo refers to the symbol's function
<jackdaniel>
which may change
<phoe>
in case of CL functions it is always* safe to use #' since the functions in the CL package will never change
<jackdaniel>
while 'foo refers to a symbol, which is later resolved to a function
<phoe>
*unless you're tweaking the implementation itself, but you usually don't need to worry about that
<jackdaniel>
you usually don't know whether it is a cl function though
<jackdaniel>
people usually write (defpackage …) (in-package …), not (cl:defpackage …) (cl:in-package …)
<jurov>
i meant (defun foo () 1) then (apply 'foo ) and (apply #'foo) diverge after foo is redefined
<jurov>
say, (defun foo () 2)
<pjb>
Note that in some case, I explicitely use 'foo instead of #'foo: for reader macros! (set-macro-character char 'my-reader-macro …) because if there's a problem with the reader macro, it will be easier to correct it (just by redefining the function) with the symbol.
<pjb>
jurov: notably the divergence is hidden by the non-recompilation of the code where (function foo) appears.
<nirved>
#'foo tends to be more optimized by compilers
<pjb>
jurov: but if there's an update to foo, there may also be an update of the code depending on it, so this recompilation may be essential, and it may be more consistent to still call the old function while the old code is still being used!
<pjb>
jurov: so I think that in general, #'foo is better than 'foo. You'd use 'foo only on specific special cases.
<pjb>
(like my reader macro example).
<jurov>
pjb, okay, only IMHO when you always use symbol the behavior is more tractable
<pjb>
it's more "dynamic", since the symbol implies an indirection.
<jurov>
but isn't it premature optimization? xD
<pfdietz>
Xach: tyvm!
<pfdietz>
(funcall (intern "FOO" "FOO-PACKAGE")) for those who want real forward references.
<jurov>
O.o
<pfdietz>
fe[nl]ix: I have a long term goal of firming up various public lisp packages, increasing their level of correctness by improving their testing.
<pfdietz>
jurov: you see that idiom in (for example) asdf test ops, where you can't refer to a symbol in a test package before that package is loaded.
vivit has quit [Ping timeout: 258 seconds]
grabarz_ has joined #lisp
eschulte has quit [Remote host closed the connection]
davepdotorg has joined #lisp
<Odin->
CL doesn't give you enough rope to hang yourself.
<Odin->
It also builds the gallows.
<Odin->
Whether or not that's a bad thing is very much dependent on your perspective...
<jackdaniel>
Odin-: I love that one /me steals the joke
grabarz_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
Ven`` has joined #lisp
davepdotorg has quit [Ping timeout: 268 seconds]
cosimone_ has quit [Remote host closed the connection]
cosimone_ has joined #lisp
zmv has quit [Remote host closed the connection]
scymtym has joined #lisp
zaquest has quit [Quit: Leaving]
Bike has quit [Remote host closed the connection]
vlatkoB_ has quit [Remote host closed the connection]
Bike has joined #lisp
william1_ has quit [Ping timeout: 258 seconds]
rumbler3130 has quit [Ping timeout: 260 seconds]
pfdietz has quit [Remote host closed the connection]
edgar-rft has joined #lisp
gabiruh has joined #lisp
gabiruh has quit [Client Quit]
FreeBirdLjj has joined #lisp
FreeBirdLjj has quit [Ping timeout: 260 seconds]
<p_l>
personally, I think it includes a set of contractors ready to build you large automated execution apparatus or "throw-into-sun" device
makomo has quit [Quit: WeeChat 2.4]
<gendl>
Hi, with a Slime session attached to a remote Lisp through `M-x slime-connect`, is there a way to get hold of the stream which is reading from and printing to the *slime-repl ...* buffer (e.g. to `format` stuff to it)?
grabarz_ has joined #lisp
william1_ has joined #lisp
william1_ has quit [Ping timeout: 260 seconds]
oni-on-ion has joined #lisp
narimiran has quit [Ping timeout: 258 seconds]
rippa has quit [Quit: {#`%${%&`+'${`%&NO CARRIER]
<Xach>
gendl: (defvar *my-stream* *standard-output*) and write to *my-stream*?
<zulu-inuoe>
.. So, update on the hang on Catalina under slime. They built SBCL 2.0.0 and everything works great.
<zulu-inuoe>
"Sometimes you gotta let a little magic into your life"
<Xach>
good that it works
william1_ has joined #lisp
karlosz has joined #lisp
william1_ has quit [Ping timeout: 240 seconds]
zclark has left #lisp ["ERC (IRC client for Emacs 26.3)"]
<gendl>
Xach: Duh. Why didn't I think of that...
grabarz_ is now known as grabarz
zclark has joined #lisp
lavaflow has quit [Ping timeout: 260 seconds]
gravicappa has quit [Ping timeout: 265 seconds]
william1_ has joined #lisp
william1_ has quit [Ping timeout: 258 seconds]
neuro_sys is now known as Guest69106
davepdotorg has joined #lisp
xuxuru has joined #lisp
davepdotorg has quit [Ping timeout: 260 seconds]
atgreen has quit [Remote host closed the connection]
<karlosz>
anyone have slime-presentation-streams working?
xuxuru has quit [Quit: xuxuru]
jmercouris has joined #lisp
karlosz has quit [Quit: karlosz]
karlosz has joined #lisp
madmonkey has quit [Remote host closed the connection]
william1_ has joined #lisp
william1 has quit [Quit: WeeChat 1.9.1]
klltkr has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
william1_ has quit [Ping timeout: 260 seconds]
sauvin has quit [Ping timeout: 265 seconds]
sauvin has joined #lisp
random-nick has quit [Ping timeout: 268 seconds]
cosimone_ has quit [Quit: Quit.]
holycow has joined #lisp
<holycow>
.
<jmercouris>
cd ../
<holycow>
jmercouris: there you are!
<holycow>
i just dropped by to congratulate you on the latest next release
<holycow>
just installed the db and using it. everything is really looking amazing.
<holycow>
great job. i really appreciate your and your teams work
<jmercouris>
holycow: thank you :-) that is very nice of you to say!
<holycow>
i will be signing up to your patreon soonish. this seriously makes my life better.
<jmercouris>
I'm glad to hear it, there is a lot more to come :-)
<holycow>
awesome. i have started re-learing lisp once again, i will try to help as well.
<holycow>
okay gotta go, just dropped by to say thanks. everyone here should check it out, its really improved.
holycow has quit [Quit: leaving]
akoana has joined #lisp
rwcom9 has joined #lisp
lavaflow has joined #lisp
rwcom has quit [Ping timeout: 268 seconds]
rwcom9 is now known as rwcom
slyrus_ has joined #lisp
slyrus has quit [Ping timeout: 258 seconds]
vivit has joined #lisp
varjag has quit [Quit: ERC (IRC client for Emacs 26.1)]
vivit has quit [Client Quit]
Bike has quit [Quit: Bike]
jmercouris has quit [Remote host closed the connection]
Kundry_Wag has quit [Remote host closed the connection]
Kundry_Wag has joined #lisp
hiroaki has quit [Ping timeout: 260 seconds]
sjl has joined #lisp
wxie has joined #lisp
Kundry_Wag has quit [Ping timeout: 258 seconds]
shifty has joined #lisp
grabarz has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
william1_ has joined #lisp
Kundry_Wag has joined #lisp
william1_ has quit [Ping timeout: 268 seconds]
ebrasca has quit [Remote host closed the connection]