jackdaniel changed the topic of #lisp to: Common Lisp, the #1=(programmable . #1#) programming language | <https://irclog.tymoon.eu/freenode/%23lisp> <https://irclog.whitequark.org/lisp> <http://ccl.clozure.com/irc-logs/lisp/> | offtopic --> #lispcafe
lavaflow has joined #lisp
mindCrime has quit [Ping timeout: 240 seconds]
Inline has joined #lisp
mindCrime has joined #lisp
parjanya has quit [Remote host closed the connection]
parjanya has joined #lisp
yitzi has joined #lisp
Misha_B has joined #lisp
Oladon has quit [Quit: Leaving.]
aindilis has quit [Remote host closed the connection]
AdmiralBumbleBee has quit [Quit: If I just put this here then...]
aindilis has joined #lisp
kreyren has joined #lisp
<kreyren> Is `)) )` acceptable code style instead of using `)))` for code review?
<kreyren> makes the code much more readable imho >.>
<no-defun-allowed> Usually no; the computer reads the )) and you read the layout.
<aeth> Old Lisps had a lot of different styles, but these days )))))))))))) has won out because people usually have their tools manage their parentheses for them.
<kreyren> O.o
<kreyren> What tools? afaik there is only a tool to make the parentecies a different color and to jump to the closing
<no-defun-allowed> paredit adds a ) for every ( you type, and has more convenient expression jumping from what I've heard.
<kreyren> I see O.o
<no-defun-allowed> parinfer as well, I think, but that does some more work guessing where the parens go from indentation? I somehow lived without using them.
<jcowan> Interlisp had ], which terminated as many )s as necessary
<aeth> there should probably be an official channel FAQ for questions like this
<kreyren> also can i ask for elisp review here?
<aeth> that's more of a topic for #emacs or ##lisp
<kreyren> (#emacs doesn't like me for asking too much questions)
_whitelogger has joined #lisp
aeth_ has joined #lisp
aeth has quit [Disconnected by services]
aeth_ is now known as aeth
ogawachan has quit [Quit: WeeChat 2.3]
<jcowan> ##lisp-ers will not complain
EvW has quit [Ping timeout: 240 seconds]
mrcom has quit [Ping timeout: 265 seconds]
john_ has joined #lisp
toorevitimirp has joined #lisp
secretmyth has joined #lisp
gaqwas has quit [Ping timeout: 260 seconds]
contrapunctus has left #lisp ["Disconnected: closed"]
contrapunctus has joined #lisp
secretmyth has quit [Quit: Leaving]
skapata has joined #lisp
skapata has left #lisp [#lisp]
Inline has quit [Ping timeout: 240 seconds]
jesse1010 has quit [Ping timeout: 265 seconds]
mrcom has joined #lisp
akoana has left #lisp ["Leaving"]
whiteline has joined #lisp
space_otter has joined #lisp
<beach> Good morning everyone!
Alfr_ has joined #lisp
<beach> phoe: Wow, that's way more than I thought. Good!
<beach> minion: memo for ebrasca: Did you have any particular contribution in mind for Second Climacs, or did you want me to suggest something for you?
<minion> Remembered. I'll tell ebrasca when he/she/it next speaks.
Alfr has quit [Ping timeout: 240 seconds]
orivej has joined #lisp
contrapunctus has left #lisp ["Disconnected: Replaced by new connection"]
contrapunctus has joined #lisp
Archenoth has joined #lisp
Kaisyu has joined #lisp
sjl has joined #lisp
iAmDecim_ has joined #lisp
toorevitimirp has quit [Ping timeout: 240 seconds]
mindCrime has quit [Ping timeout: 244 seconds]
toorevitimirp has joined #lisp
gravicappa has joined #lisp
iAmDecim_ has quit [Ping timeout: 240 seconds]
toorevitimirp has quit [Ping timeout: 244 seconds]
Lycurgus has joined #lisp
_whitelogger has joined #lisp
paul0 has joined #lisp
_paul0 has quit [Ping timeout: 240 seconds]
pfdietz has quit [Remote host closed the connection]
Lycurgus has quit [Quit: Exeunt]
Jeanne-Kamikaze has joined #lisp
Jeanne-Kamikaze has quit [Ping timeout: 256 seconds]
iamFIREcracker has joined #lisp
iamFIREcracker has quit [Ping timeout: 256 seconds]
Nilby has joined #lisp
ibinderwolf has joined #lisp
Lord_of_Life_ has joined #lisp
Lord_of_Life has quit [Ping timeout: 260 seconds]
Lord_of_Life_ is now known as Lord_of_Life
Alfr_ has quit [Ping timeout: 240 seconds]
borei has quit [Ping timeout: 244 seconds]
ogawachan has joined #lisp
quazimod1 has joined #lisp
quazimodo has quit [Ping timeout: 244 seconds]
Volt_ has quit [Quit: ]
iamFIREcracker has joined #lisp
iamFIREcracker has quit [Ping timeout: 240 seconds]
narimiran has joined #lisp
ogawachan has quit [Quit: WeeChat 2.3]
Alfr has joined #lisp
galex-713 has quit [Ping timeout: 244 seconds]
iamFIREcracker has joined #lisp
toorevitimirp has joined #lisp
galex-713 has joined #lisp
aartaka has quit [Read error: Connection reset by peer]
aartaka has joined #lisp
aartaka has quit [Read error: Connection reset by peer]
gravicappa has quit [Ping timeout: 240 seconds]
Cymew has joined #lisp
kaftejiman has quit [Ping timeout: 265 seconds]
space_otter has quit [Remote host closed the connection]
aartaka has joined #lisp
jonatack has quit [Ping timeout: 240 seconds]
schweers has joined #lisp
MightyJoe is now known as cyraxjoe
toorevitimirp has quit [Read error: Connection reset by peer]
toorevitimirp has joined #lisp
heisig has joined #lisp
jonatack has joined #lisp
jonatack has quit [Client Quit]
ljavorsk has joined #lisp
jonatack has joined #lisp
<phoe> beach: also way more than I thought
<beach> I will definitely order it when it comes out.
scymtym has quit [Ping timeout: 244 seconds]
<Nilby> Can I handle reading another long book on Lisp? For TCLCS I'll make an exception.
<no-defun-allowed> I'll definitely order it, but I'll only read it if I can handle it.
shka_ has joined #lisp
random-nick has joined #lisp
<phoe> I mean, a half of the book is just one guy playing with his phone and another two people trying to hide their relationship from sorta dangerous parents
<phoe> seriously
<Nilby> spoiler alert
<beach> phoe: Er, what?
<Nilby> But I actually was entertained by it, but it reminded me of my life as teenager.
<no-defun-allowed> Those are very relatable examples.
<phoe> beach: yes
<phoe> basically, I use two simple stories as plot devices that exemplify how to handle special situations in code
ebrasca has joined #lisp
<beach> Ah, OK.
<phoe> one of them for handlers, another - for restarts
<beach> Got it.
ebrasca has quit [Remote host closed the connection]
<phoe> and by "handle" I mean "construct these handling facilities from scratch and then use them"
Guest75385 has quit [Remote host closed the connection]
ebrasca has joined #lisp
ebrasca has quit [Remote host closed the connection]
ebrasca has joined #lisp
<beach> ebrasca: I think minion has a message for you.
<ebrasca> minion help
<minion> ebrasca, memo from beach: Did you have any particular contribution in mind for Second Climacs, or did you want me to suggest something for you?
bilegeek has quit [Quit: Leaving]
Josh_2 has quit [Ping timeout: 240 seconds]
<ebrasca> beach: I like to have some good text editor in Mezzano , I like to see if I can help in this area.
aartaka has quit [Ping timeout: 264 seconds]
<beach> I see. I am not sure what to suggest for you at this point.
aartaka has joined #lisp
aartaka_d has joined #lisp
<beach> ebrasca: I need to come up with a way to describe rules for indentation in a way that avoids too much code duplication. And I need to handle all possible errors that Eclector might signal and turn them into ways of displaying the code.
scymtym has joined #lisp
<beach> ebrasca: I can't really ask you to do any of that.
aartaka has quit [Ping timeout: 246 seconds]
pve has joined #lisp
<ebrasca> beach: ok
jprajzne has joined #lisp
<moon-child> out of curiosity, has there been any effort put into porting mcclin to mezzano?
<no-defun-allowed> I think McCLIM runs on Mezzano, so yes.
<moon-child> oh, really? I thought it was still x-only
<phoe> if Clouseau runs on Mezzano then so must McCLIM
<moon-child> neat!
notzmv` has joined #lisp
<beach> Does it use the McCLIM framebuffer backend for that?
aartaka_d has quit [Ping timeout: 246 seconds]
<phoe> I do not know such details
<no-defun-allowed> From memory, yes.
<beach> Great!
<scymtym> McCLIM on Mezzano uses the "render" extension for rasterizing while the Mezzano backend itself takes care the framebuffer and buffer "flipping"
galex-713 has quit [Ping timeout: 240 seconds]
galex-713 has joined #lisp
<beach> By the "render" extension, I take it you don't mean XRender, but the McCLIM render extension, yes?
<scymtym> where render extension = anti-aliased rasterizing of vector primitives in portable common lisp
hendursa1 has joined #lisp
clothespin_ has joined #lisp
<beach> Right.
notzmv has quit [Ping timeout: 240 seconds]
whiteline has quit [Remote host closed the connection]
whiteline has joined #lisp
hendursaga has quit [Ping timeout: 240 seconds]
C-16 has quit [Ping timeout: 264 seconds]
iissaacc has joined #lisp
clothespin has quit [Ping timeout: 240 seconds]
jw4 has quit [Read error: Connection reset by peer]
jw4 has joined #lisp
VincentVega has joined #lisp
davepdotorg has joined #lisp
rgherdt has joined #lisp
kaftejiman has joined #lisp
toorevitimirp has quit [Remote host closed the connection]
toorevitimirp has joined #lisp
gravicappa has joined #lisp
eric[m]3 has left #lisp ["Kicked by @appservice-irc:matrix.org : Idle for 30+ days"]
aartaka has joined #lisp
aartaka has quit [Read error: Connection reset by peer]
ggole has joined #lisp
kreyren_ has joined #lisp
kreyren has quit [Remote host closed the connection]
<flip214> having an hex string with 16 bits per character (likely ucs16), is there a function in babel to get a lisp string?
<beach> What is a "hex string"?
<beach> I mean, what Common Lisp type is that?
<phoe> flip214: you mean you have a ub16 byte vector?
<phoe> or ub8 byte vector with two bytes per char?
Necktwi has joined #lisp
<phoe> I assume the latter
jesse1010 has joined #lisp
pok has quit [Ping timeout: 246 seconds]
<flip214> I have a string that looks like "31000000" to give "1<nul>"
<flip214> I can easily get bytes via ironclad... and am currently using a loop to SETF characters in a string
<phoe> oh
<phoe> then get bytes and feed those bytes to babel
heisig has quit [Remote host closed the connection]
whiteline has quit [Remote host closed the connection]
johs has quit [Ping timeout: 244 seconds]
kilimanjaro has quit [Ping timeout: 244 seconds]
whiteline has joined #lisp
zooey has quit [Remote host closed the connection]
gjnoonan has quit [Ping timeout: 244 seconds]
chewbranca has quit [Ping timeout: 244 seconds]
zooey has joined #lisp
kilimanjaro has joined #lisp
chewbranca has joined #lisp
johs has joined #lisp
gjnoonan has joined #lisp
shrdlu68 has joined #lisp
jonatack has quit [Ping timeout: 256 seconds]
gxt__ is now known as gxt
bitmapper has quit [Ping timeout: 256 seconds]
AeroNotix has joined #lisp
<AeroNotix> What's the process for contributing patches to SBCL? Just send a PR on the github repo? Is there a mailing list or something where RFCs must be sent first?
<phoe> AeroNotix: not on github
<phoe> that's just a mirror
<phoe> there's the sbcl-devel mailing list, and the official sourceforge repository
<AeroNotix> eh ok
<AeroNotix> I'm not even sure if what I want to do would be allowed, per the standard. But maybe... the package I want to work on is not a standard package.
<phoe> what do you want to do?
<AeroNotix> the sb-bsd-sockets package is a bit inefficient and inflexible
<phoe> you might want to ask #sbcl for details
<AeroNotix> sure
Inline has joined #lisp
cosimone has joined #lisp
galex-713 has quit [Ping timeout: 240 seconds]
VincentVega has quit [Remote host closed the connection]
jonatack has joined #lisp
davepdotorg has quit [Remote host closed the connection]
davepdotorg has joined #lisp
galex-713 has joined #lisp
ljavorsk has quit [Ping timeout: 256 seconds]
notzmv` is now known as notzmv
notzmv has joined #lisp
notzmv has quit [Changing host]
davepdot_ has joined #lisp
davepdotorg has quit [Ping timeout: 258 seconds]
wxie has joined #lisp
even4void has joined #lisp
even4void has quit [Remote host closed the connection]
even4void has joined #lisp
paul0 has quit [Quit: Leaving]
even4void has quit [Remote host closed the connection]
aaaaaa has joined #lisp
madage has quit [Ping timeout: 240 seconds]
wxie has quit [Ping timeout: 256 seconds]
z0d has quit [Ping timeout: 256 seconds]
z0d has joined #lisp
jonatack has quit [Ping timeout: 260 seconds]
madage has joined #lisp
Inline has quit [Ping timeout: 244 seconds]
wxie has joined #lisp
supercoven has joined #lisp
jonatack has joined #lisp
galex-713 has quit [Ping timeout: 244 seconds]
whiteline has quit [Remote host closed the connection]
davepdot_ has quit [Remote host closed the connection]
Inline has joined #lisp
davepdotorg has joined #lisp
whiteline has joined #lisp
johnjay has quit [Ping timeout: 244 seconds]
rogersm has joined #lisp
Inline has quit [Quit: Leaving]
johnjay has joined #lisp
EvW has joined #lisp
Inline has joined #lisp
galex-713 has joined #lisp
aartaka has joined #lisp
sm2n has quit [Ping timeout: 256 seconds]
aartaka has quit [Read error: Connection reset by peer]
DGASAU has joined #lisp
Bike has joined #lisp
<pve> Is there a defined maximum argument count for generic functions?
<Bike> should just be call-arguments-limit
<pve> oh, ok.. thanks!
galex-713 has quit [Ping timeout: 244 seconds]
<AeroNotix> CL-USER> call-arguments-limit
<AeroNotix> 4611686018427387903
<AeroNotix> damn I think I could do with a few more
galex-713 has joined #lisp
aartaka has joined #lisp
<contrapunctus> /s ?
<AeroNotix> no I need 4611686018427387904 arguments
<contrapunctus> lol
<rogersm> CL-USER> call-arguments-limit
<rogersm> 65536
<jackdaniel> put last two on a list
<AeroNotix> rogersm: which implementation?
<rogersm> rogersm@iMac10,1:~$ /usr/local/ccl/dx86cl64
<rogersm> Clozure Common Lisp Version 1.11.5/v1.11.5 (DarwinX8664)
<rogersm> For more information about CCL, please see http://ccl.clozure.com.
<rogersm> CCL is free software. It is distributed under the terms of the Apache
<rogersm> Licence, Version 2.0.
<rogersm> ?
<AeroNotix> oh CCL, then
<rogersm> is yours sbcl?
<rogersm> it's impressive
<AeroNotix> Yes
<AeroNotix> clisp has a max of 4096
<rogersm> even excessive
<rogersm> :D
<AeroNotix> I wonder if the standard mandates a minimum
<phoe> yes
<phoe> clhs call-arguments-limit
<jackdaniel> increasing the limit is not hard, but if there is no demand then why bother?
<phoe> and it's 50
<AeroNotix> honestly even 50 seems ridiculous
<phoe> AeroNotix: unless you APPLY
<jackdaniel> not really if you account for i.e initialize instance
<AeroNotix> surely nobody needs more than, like, what, 3 arguments /troll
<jackdaniel> which may have many many keyword arguments (due to inheritance)
<jackdaniel> for instance I've hit a bug in ecl (already fixed) a year ago or so, where McCLIM function was called with 67 arguments
galex-713 has quit [Quit: No Ping reply in 180 seconds.]
<jackdaniel> and there was off-by-one error, where one argument was eaten (due to a different representation of the argument list above 64)
<jackdaniel> so 50 would not cut it ,)
<phoe> also stuff like (apply #'max (alexandria:iota 1000)) is not 100% portable
<phoe> REDUCE is better in such contexts
<jackdaniel> also if you generate functions with macros, you may easily cross any limit
<jackdaniel> (depending on input)
galex-713 has joined #lisp
wsinatra has joined #lisp
galex-713 has quit [Ping timeout: 244 seconds]
galex-713 has joined #lisp
aartaka has quit [Read error: Connection reset by peer]
hiroaki has quit [Ping timeout: 256 seconds]
<schweers> Does anyone know how it can happen that deploy can deploy and copy a foreign library to the bin directory, but not be able to load it again when starting the executable? On starting, I get output informing me that the library shall be loaded, but that loading fails. The listed alternatives show the actual filename at the first position.
<phoe> schweers: this can happen in case of transitive foreign dependencies
<phoe> if CFFI depends on foreign lib A which depends on foreign lib B then deploy is only aware of A and will only copy A.
<phoe> you need to manually copy B or explicitly tell CFFI that B is also required in the project
orivej has quit [Ping timeout: 265 seconds]
<phoe> but that is just one reason why a dlopen() call may fail
<schweers> Could there be such a depencency between libssl and libev?
<phoe> huh? I guess not
<phoe> they're independent AFAIK
<AeroNotix> schweers: why don't you write a quick C script to run dlopen on it directly
<schweers> I thought so
<AeroNotix> c script => c program
<schweers> AeroNotix: Because I’m not sure what that’s supposed to tell me
<AeroNotix> schweers: it may give you the underlying errno for why the dlopen is failing
<AeroNotix> jackdaniel: this has been running for quite a while
<schweers> On dumping, deploy informs me that it’s dumping libssl and libev and those two files do indeed end up in the directory as expected. I copy the complete directory to a new container and booting fails because the file cannot be found
<AeroNotix> a container?
<AeroNotix> are you using alpine by any chance?
<schweers> AeroNotix: A docker container. No, I’m using debian:buster-slim
<schweers> I had problems with alpine and libz, so I ditched it
<AeroNotix> schweers: ok, well containers can / sometimes do funky things with shared libraries. Either not including them, or in the case of alpine it even uses different/unexpected implementations of libc
<schweers> Yeah, I was a bit confused by the whole thing to be honest. But as deploy copies a libssl file over, I wouldn’t have thought this to be a problem
<AeroNotix> as phoe said, this smells like a transitive dependency issue. Containers often try to be lean with what's included.
toorevitimirp has quit [Ping timeout: 240 seconds]
<schweers> Shouldn’t that be a non-problem, since deploy includes the relevant .so files anyway?
<AeroNotix> yeah but there may be system dependencies which exist on your local / testing machine which aren't in the container filesysem
<schweers> Hmm. I’m adding libssl to the testing container for good measure.
<schweers> I’ll report on it in a second
aartaka has joined #lisp
<schweers> Huh. Now it seems to work. Well, that part does anyway. Caveman/Clack/lack seem to do some pretty weird things at runtime. But that’s another problem for another time
<AeroNotix> yay
iissaacc has quit [Ping timeout: 256 seconds]
<schweers> Thanks for the tip. Now I wonder whether I should keep using deploy or not.
<AeroNotix> not even sure what deploy is.
john_ is now known as gaqwas
<AeroNotix> can you link to the docs?
gaqwas has quit [Changing host]
gaqwas has joined #lisp
aartaka has quit [Ping timeout: 264 seconds]
<AeroNotix> Oh ok, well no idea really.
<schweers> Oh well. I guess I’ll just install the runtime dependency. As I control the docker container it doesn’t really hurt anyway.
hiroaki has joined #lisp
Rengan has joined #lisp
<phoe> schweers: no idea about deploy, the libs that are copied should work after being copied too in the general case.
galex-713 has quit [Ping timeout: 240 seconds]
<phoe> still, checking foreign dependencies is left for the programmer since there's no good way to do that from Lisp
gko_ has joined #lisp
<schweers> phoe: I guess you’re right. I’ll just install libssl and everything is fine
<schweers> Many many thousand thanks to the two of you for helping me.
<Xach> I hate that using tls/ssl for network connections is really difficult when it comes to ensuring the right libraries are available in the right places.
<phoe> the beauty of using foreign libraries™
<phoe> no FFI, no security
<AeroNotix> arguably if this is running in a container I would suggest to terminate ssl at some ingress layer
<phoe> that is also an option
<AeroNotix> depends on the library schweers is using though
<AeroNotix> some stuff (like the quic lib I am wrapping) NEED to use ssl directly
<schweers> AeroNotix: now that you put it that way, I’m not sure I actually need ssl. It seems to be pulled in as a dependency for dexador
<schweers> Which I only use in the tests
<schweers> I plan on not doing SSL in lisp, but instead use apache or nginx or something similar as a ... reverse proxy? I believe that is the correct term.
<phoe> yes
<phoe> that is a very good option in practice
<AeroNotix> worth a look then. We run about 7,000 containers in our deployments altogeteher and only a handful actually speak SSL directly
<AeroNotix> we terminate SSL at the load-balancers and use TCP to communicate with the containers
<phoe> I had a LXD/LXC setup where I had a user-facing haproxy instance and a bunch of HTTP services that this haproxy was routing to
<phoe> only haproxy dealt with SSL/letsencrypt, everything else on the internal network was plain HTTP
<schweers> I‘m never quite sure whether that’s a good idea or not. But I’m not a security expert.
<phoe> this included Lisp images
<AeroNotix> schweers: it's fine
<AeroNotix> schweers: the attack surface is you can decrypt traffic on the internal container network
<AeroNotix> if someone gets access to that, well, you have more trouble than people sniffing packets
<schweers> I guess
<AeroNotix> are you using Kubernetes?
<schweers> Me? No. I’m very new to this whole webdevelopment thing. I guess I got to the party really late ;)
<phoe> anyway - I suggest using a reverse proxy and setting SSL/HTTPS only on that reverse proxy instead of everywhere else
<Xach> My pain is more on the client end
<Xach> Not serving http
<Xach> (although that is also a pain)
<schweers> Also for now it’s only going to be used on an internal network, so security is not exactly the highest priority
<phoe> much less hassle this way, and reverse proxies are pretty much bulletproof and battle-tested nowadays so they are not attack vectors themselves.
<phoe> Xach: ouch, yes
<schweers> phoe: as I said, that was my plan. The http client library I am trying out pulls in cl+ssl, which I don’t actually need. I only realized this after fixing the issue
<schweers> Does drakma need ssl?
<shrdlu68> Using something like Nginx might also protect you from things like HTTP request smuggling, which might be untested in Lisp libraries.
<schweers> Apparantly it does
<AeroNotix> schweers: arguably you can frame using a reverse proxy as more secure. The SSL proxy layer is the only place you configure SSL. It can be audited and verified once. Then you don't need to deal with applications themselves talking SSL and needing to put keys on them etc
<phoe> shka_: there's a compile-time option to tell it not to use ssl
aartaka has joined #lisp
<schweers> phoe: I suppose that was actually directed at me?
<AeroNotix> yeah
<phoe> uhhh
<phoe> yes
<phoe> push :drakma-no-ssl into features and recompile
<schweers> hmm. Is there an easy way to do this from asdf?
<AeroNotix> ugh honestly it should be the reverse in drakma, silly
<schweers> I’m still not decided on drakma or dexador yet
<schweers> I suppose drakma is more stable and widely used?
mindCrime has joined #lisp
<phoe> dexador is effectively unmaintained
<schweers> Oh. That makes the decision easy
<schweers> Thanks for the heads up
<schweers> How do you know that it’s unmaintained?
<phoe> last activity half a years ago, multiple dangling issues and PRs
<phoe> s/years/year/
<phoe> as, sadly, common with fukamachiware
<AeroNotix> one of the open issues is pretty bad, too.
<schweers> hmmm
<AeroNotix> Non-thread safety with features it explicitly calls out as being the killer feature over drakma
<AeroNotix> Whereas drakma can re-use streams (might've not been the caled when dexador was first wrote, or something)
<schweers> I’m afraid I plan on using lots of his stuff. And I have to admit that trying to get caveman to properly run is not as easy as I had anticipated.
<AeroNotix> `the caled/the case`
Inline has quit [Ping timeout: 240 seconds]
<phoe> schweers: my condolences
<schweers> phoe: No problem, I haven’t committed any work yet. Are there good alternatives? I just noticed that shinmera has something. Radiance?
<phoe> radiance is a web framework, yes
<phoe> with multiple examples, e.g. plaster that I use all the time
<schweers> Is there such a thing as a recommended framework?
<shrdlu68> schweers: Hunchentoot is pretty straight-forward
<schweers> Well, it’s not exactly a framework, but a webserver, correct? The question is: is that a bad thing?
<AeroNotix> only you can say whether that impacts your project really
<schweers> I’m afraid I don‘t have nearly enough web experience to properly answer these questions
<AeroNotix> just try one and see, you'll figure it out
<phoe> ^
<schweers> Back to my question of building drakma without ssl support: Can I use ASDF to push a feature?
<phoe> I think so, yes
<Xach> schweers: two things on that: using *FEATURES* like that to control compilation leads to all kinds of problems. but 2) you can simply put (push :drakma-no-ssl *features*) in the .asd file anywhere. since it's loaded like a lisp program.
<Xach> that second thing is also not great, but if you are in total control and it won't foul up anyone else, it's fine.
<schweers> Xach: a fair point. Thank you
davepdot_ has joined #lisp
<Xach> actually, i take that back - you might have to put it before the defsystem form. i'm not completely sure.
<schweers> That’s where I would have put it
<Xach> maybe there should be an unsafentoot system that just has a single source file that pushes the right feature.
<Xach> but then anyone who loads hunchentoot without unsafentoot first will have bad fasls later due to the wrong features
<Xach> So, that's the main issue. if you push that to *features* in your own system and compile hunchentoot, the cached fasls are bad in later sessions that don't have that feature. fasls aren't separated out by *features* differences.
<schweers> Hm. A good point, thanks for the heads up. Luckily that won’t be a problem for me
<Xach> lucky indeed
<phoe> should be fine if you are deploying an application
wxie has quit [Ping timeout: 258 seconds]
<phoe> won't be fine if you are creating a library of some sort
<Xach> phoe: even when deploying an application, it can foul up local development on unrelated hunchentoot things
<phoe> Xach: that's possible, yes
<Xach> and it leads to an error that is truly baffling if you aren't at least slightly clued in about the potential issue
davepdotorg has quit [Ping timeout: 260 seconds]
<jackdaniel> (push :nil *features*)
* jackdaniel watches the world burn
<phoe> madlad
cosimone has quit [Quit: Terminated!]
<AeroNotix> (setf *features* :banana)
<phoe> sorry, must be a list
aaaaaa has quit [Quit: leaving]
yitzi_ has joined #lisp
rogersm has quit [Quit: Leaving...]
<phoe> (let (*features*) ...) ; we're in a really primitive lisp here
<jmercouris> (setf *features* :banana)
<jmercouris> I like
<jmercouris> (setf *features* (list :banana))
Cymew has quit [Ping timeout: 256 seconds]
<_death> (defun evaluatemall () (dolist (c '(#\+ #\-)) (set-dispatch-macro-character #\# c (lambda (s c n) (declare (ignore c n)) (read s t nil t) (read s t nil t)))))
<phoe> _death: forgot about (let ((*package* (find-package :keyword))) ...)
<phoe> we don't want to intern new symbols in the current package, do we
<phoe> even if we're up for letting the world burn, we gotta do that with style
<_death> I'll leave that to trivial-world-burning
galex-713 has joined #lisp
davepdot_ has quit [Remote host closed the connection]
v3ga has quit [Ping timeout: 272 seconds]
davepdotorg has joined #lisp
<Nilby> I like to do this (setf *features* #9=(cons nil #9#)) every now and then, followed by a nice (delete-package :cl) to keep me on my toes.
borei has joined #lisp
<Nilby> I feel like "recover from a sabotaged repl" could be a "fun" game.
C-16 has joined #lisp
<_death> you can also have a rempl that with some probability munges the result..
EvW has quit [Ping timeout: 240 seconds]
<_death> (or even a rmepl.. John Koza would be proud ;)
<phoe> mrepl
<phoe> oh wait a second...
borei has quit [Ping timeout: 244 seconds]
<AeroNotix> I'm sure someone made a project which did exactly this.
<AeroNotix> Removes a bunch of symbols randomly and your task is to get it working again by redefining some
davepdot_ has joined #lisp
davepdot_ has quit [Remote host closed the connection]
<phoe> there's a bunch of standard symbols that are impossible to express in terms of others
sjl_ has joined #lisp
<phoe> and the compiler infrastructure is likely to refer to those via EQ so interning new ones won't do anything other than break more stuff.
davepdotorg has quit [Ping timeout: 244 seconds]
<AeroNotix> yeah I am not sure if this really exists or it was just a discussion in here a while back on how you'd implement a game like that so it's actually winnable
aartaka_d has joined #lisp
aartaka has quit [Ping timeout: 246 seconds]
borei has joined #lisp
mister_m has joined #lisp
cosimone has joined #lisp
todun has joined #lisp
v3ga has joined #lisp
hendursa1 has quit [Quit: hendursa1]
hendursaga has joined #lisp
Lycurgus has joined #lisp
EvW1 has joined #lisp
narimiran has quit [Ping timeout: 264 seconds]
ebrasca has quit [Remote host closed the connection]
DGASAU has quit [Read error: Connection reset by peer]
random-nick has quit [Ping timeout: 240 seconds]
rgherdt has quit [Remote host closed the connection]
DGASAU has joined #lisp
random-nick has joined #lisp
aindilis` has joined #lisp
aindilis has quit [Ping timeout: 256 seconds]
secretmyth has joined #lisp
schweers has quit [Ping timeout: 244 seconds]
remexre has joined #lisp
xrash has joined #lisp
IPmonger has joined #lisp
cosimone_ has joined #lisp
cosimone has quit [Ping timeout: 240 seconds]
gravicappa has quit [Ping timeout: 240 seconds]
Kaisyu has quit [Quit: Connection closed for inactivity]
bitmapper has joined #lisp
gko_ has quit [Ping timeout: 256 seconds]
sm2n has joined #lisp
orivej has joined #lisp
vgmind has joined #lisp
secretmyth has quit [Remote host closed the connection]
cosimone_ has quit [Quit: Terminated!]
treflip has joined #lisp
yitzi_ has quit [Quit: yitzi_]
todun has quit [Quit: todun]
rumbler31 has joined #lisp
EvW1 has quit [Ping timeout: 244 seconds]
yitzi has quit [Quit: yitzi]
galex-713 has quit [Ping timeout: 244 seconds]
AeroNotix has quit [Quit: WeeChat 2.9]
reggie_ has quit [Ping timeout: 265 seconds]
IPmonger has quit [Ping timeout: 244 seconds]
IPmonger has joined #lisp
ebrasca has joined #lisp
vgmind has left #lisp [#lisp]
galex-713 has joined #lisp
aindilis` has quit [Remote host closed the connection]
Codaraxis__ has quit [Remote host closed the connection]
Codaraxis__ has joined #lisp
gravicappa has joined #lisp
gravicappa has quit [Ping timeout: 240 seconds]
yitzi has joined #lisp
aartaka_d has quit [Ping timeout: 258 seconds]
aindilis has joined #lisp
bsd4me has joined #lisp
bsd4me has left #lisp [#lisp]
orivej has quit [Remote host closed the connection]
RedMallet has joined #lisp
RedMallet has quit [Client Quit]
orivej has joined #lisp
Archenoth has quit [Read error: Connection reset by peer]
treflip has quit [Quit: WeeChat 2.8]
mindCrime has quit [Ping timeout: 244 seconds]
treflip has joined #lisp
cyraxjoe has quit [Quit: I'm out!]
Archenoth has joined #lisp
treflip has left #lisp [#lisp]
cyraxjoe has joined #lisp
gravicappa has joined #lisp
bitmapper has quit []
Lycurgus has quit [Ping timeout: 246 seconds]
treflip has joined #lisp
choegusung has joined #lisp
Lord_of_Life_ has joined #lisp
Lord_of_Life has quit [Ping timeout: 240 seconds]
Lord_of_Life_ is now known as Lord_of_Life
yitzi has quit [Quit: yitzi]
bitmapper has joined #lisp
kaftejiman has quit [Ping timeout: 246 seconds]
davepdotorg has joined #lisp
uhrenmacher has joined #lisp
<uhrenmacher> How do I compile Lisp-Code?
<uhrenmacher> ( Common Lisp )
<ebrasca> uhrenmacher: Normaly when you type you code in the repl it get compiled.
uhrenmacher is now known as tjaisso
tjaisso is now known as afd_beste
afd_beste is now known as afd_beste1
afd_beste1 has quit [Remote host closed the connection]
<ebrasca> afd_beste1: Do you mean stand alone executable?
rippa has joined #lisp
scymtym has quit [Read error: Connection reset by peer]
scymtym has joined #lisp
uhrenmacher has joined #lisp
<uhrenmacher> hmm
<uhrenmacher> 11
<uhrenmacher> 1/quit
uhrenmacher has quit [Client Quit]
even4void has joined #lisp
<treflip> Hi
<treflip> Is there is it possible to specify python verion in py4cl?
<treflip> Oh, I guess, I should setf *python-command*
<aeth> by "compile", they probably wanted https://lispcookbook.github.io/cl-cookbook/scripting.html
orivej has quit [Ping timeout: 260 seconds]
<even4void> treflip: Do you need to have Python version specified programmatically or environment variables may do the job as well?
<treflip> Well, I hoped to do it without python virtual environments, but if it's the only option, I have no choice :D
Jesin has quit [Quit: Leaving]
<even4void> Not sure there's an easy option, by just looking at the source code (https://is.gd/Vm1udX), but I've never use it so maybe someone will come with a better idea.
Bourne has quit [Read error: Connection reset by peer]
Jesin has joined #lisp
<treflip> Ok, thanks
<even4void> Apprently, you were right with setting the *python-command*.
davepdotorg has quit [Ping timeout: 240 seconds]
<treflip> Oh, this solves my problem completely, thanks
<even4void> yw
_whitelogger has joined #lisp
PuercoPop has quit [Ping timeout: 265 seconds]
secretmyth has joined #lisp
EvW has joined #lisp
choegusung has quit [Quit: leaving]
haradatan has joined #lisp
rpg has joined #lisp
gravicappa has quit [Read error: Connection reset by peer]
Oladon has joined #lisp
gravicappa has joined #lisp
davepdotorg has joined #lisp
bocaneri has quit [Remote host closed the connection]
shrdlu68 has quit [Quit: WeeChat 2.8]
davepdotorg has quit [Ping timeout: 240 seconds]
jcowan has left #lisp [#lisp]
flazh has quit [Quit: flazh]
flazh has joined #lisp
haradatan has quit [Quit: WeeChat 2.3]
aartaka has joined #lisp
troydm has quit [Ping timeout: 240 seconds]
narimiran has joined #lisp
flazh has quit [Quit: flazh]
madage has quit [Ping timeout: 240 seconds]
bhartrihari has quit [Ping timeout: 244 seconds]
madage has joined #lisp
parjanya has quit [Ping timeout: 244 seconds]
treflip has quit [Ping timeout: 256 seconds]
Jesin has quit [Quit: Leaving]
random-nick has quit [Quit: quit]
drl has joined #lisp
jprajzne has quit [Quit: jprajzne]
jprajzne has joined #lisp
random-nick has joined #lisp
even4void has quit [Ping timeout: 244 seconds]
jprajzne has quit [Client Quit]
jprajzne has joined #lisp
supercoven has quit [Ping timeout: 256 seconds]
dominic34 has joined #lisp
dominic34 has quit [Excess Flood]
dominic34 has joined #lisp
Oladon has quit [Quit: Leaving.]
flazh has joined #lisp
EvW has quit [Ping timeout: 244 seconds]
Volt_ has joined #lisp
bilegeek has joined #lisp
ak5 has joined #lisp
bilegeek has quit [Client Quit]
mindCrime has joined #lisp
X-Scale` has joined #lisp
X-Scale has quit [Ping timeout: 240 seconds]
X-Scale` is now known as X-Scale
narimiran has quit [Ping timeout: 240 seconds]
hiroaki has quit [Ping timeout: 256 seconds]
EvW has joined #lisp
manicennui has joined #lisp
ak5 has quit [Remote host closed the connection]
dominic35 has joined #lisp
dominic34 has quit [Ping timeout: 256 seconds]
dominic35 is now known as dominic34
OptimusMKD has quit [Quit: Leaving]
hiroaki has joined #lisp
aartaka has quit [Read error: Connection reset by peer]
aartaka has joined #lisp
scymtym has quit [Ping timeout: 244 seconds]
edgar-rft has joined #lisp
aartaka_d has joined #lisp
aartaka has quit [Read error: Connection reset by peer]
shka_ has quit [Ping timeout: 256 seconds]
Volt_ has quit [Quit: ]
rippa has quit [Quit: {#`%${%&`+'${`%&NO CARRIER]
kaftejiman has joined #lisp
iamFIREcracker has quit [Ping timeout: 256 seconds]
davepdotorg has joined #lisp
random-nick has quit [Quit: quit]
random-nick has joined #lisp
davepdotorg has quit [Ping timeout: 240 seconds]
aartaka_d has quit [Ping timeout: 244 seconds]
wsinatra has quit [Quit: WeeChat 2.9]
scymtym has joined #lisp
justache has quit [Remote host closed the connection]
justache has joined #lisp
Nilby has left #lisp ["👽愛🆑"]
ggole has quit [Quit: Leaving]
zaquest has quit [Read error: Connection reset by peer]
Lycurgus has joined #lisp
zaquest has joined #lisp
vgmind has joined #lisp
ifinkias has joined #lisp
ifinkias is now known as asaaaa12
bilegeek has joined #lisp
justache has quit [Remote host closed the connection]
justache has joined #lisp
karayan has quit [Remote host closed the connection]
karayan has joined #lisp
davepdotorg has joined #lisp
ramHero has joined #lisp
davepdotorg has quit [Ping timeout: 244 seconds]
cosimone has joined #lisp
nullheroes has quit [Quit: WeeChat 2.9]
nullheroes has joined #lisp
galex-713 has quit [Ping timeout: 244 seconds]
ebrasca has quit [Remote host closed the connection]
asaaaa12 has quit [Quit: Client Quit]
karayan has quit [Ping timeout: 244 seconds]
iamFIREcracker has joined #lisp
iamFIREcracker has quit [Ping timeout: 258 seconds]
galex-713 has joined #lisp
akoana has joined #lisp
gravicappa has quit [Ping timeout: 240 seconds]
dxtr has quit [Ping timeout: 272 seconds]
random-nick has quit [Quit: quit]
sjl_ has quit [Ping timeout: 260 seconds]
random-nick has joined #lisp
random-nick has quit [Ping timeout: 265 seconds]
gaqwas has quit [Ping timeout: 264 seconds]
ramHero has quit [Ping timeout: 244 seconds]
pve_ has joined #lisp
vgmind has quit [Remote host closed the connection]
pve has quit [Ping timeout: 260 seconds]
cosimone has quit [Ping timeout: 240 seconds]
cosimone has joined #lisp
<markasoftware> metatilities:flatten just segfaulted on me
<markasoftware> wat
aeth_ has joined #lisp
aeth has quit [Disconnected by services]
aeth_ is now known as aeth
dxtr has joined #lisp
yottabyte has quit [Quit: Connection closed for inactivity]
kaftejiman has quit [Remote host closed the connection]
Bourne has joined #lisp
cosimone_ has joined #lisp
cosimone_ is now known as cosimone__
cosimone has quit [Ping timeout: 256 seconds]
cosimone__ is now known as cosimone
<Lycurgus> believe it or don't there was a time when that was fairly common
<_death> victim of safety 0.. best submit a patch
pve_ has quit [Quit: leaving]
<mfiano> On SBCL, safety doesn't even have to be zero to introduce segfaults when working with structs at least. Can produce very strange memory issues just if safety is lower than speed
<aeth> I think that's only if you redefine structs, but if you have a counterexample...
<_death> I see you are the cl-sdl2 maintainer.. had to patch it a bit today.. if the main thread is aborted, join-thread may signal an error, leaving things in a bad state
<mfiano> No, that's always undefined behavior. I'm talking about memory safety issues.
<_death> currently I catch the error and set the channel variable to nil, also letting the main thread variable become nil.. seems to behave better
<mfiano> _death: The threading in cl-sdl2 is a joke. I only maintain it because the maintainer abruptly left Lisp and no one wanted to take over. If I had my way, I'd rewrite that whole project without autowrap and expose an API for working with it without all the macros that try to magically handle the main thread.
<_death> well, autowrap makes things easy.. for example cl-sdl2-gfx didn't include all sdl2 gfx headers.. one more line and it now includes the header I need as well
<mfiano> I think it was you that I mentioned cl-sdl2-ttf also needing a patch to not double-free now that cl-sdl2 has no weak refs.
<_death> ah.. I don't use that
<mfiano> Neither do I. Currently it's unusable as I receive a lot of reports from users that use it about memory corruption relating to it being unmaintained since the changes to cl-sdl2 a couple years ago.
<_death> currently I mostly use it for visualizing stuff, logo environment, etc.. so I only need one font which I took from lispbuilder-sdl.. recently had to translate stuff from lispbuilder-sdl (sdl 1.2) to cl-sdl2 because the two can't live side by side in the same process (had a bit of fun figuring that out ;)
<mfiano> Ha, yeah
cantstanya has quit [Remote host closed the connection]
<mfiano> I'm always doing graphics myself, using cl-sdl2 too, but against the exposed API. I don't use any of the macros which set up the main thread for you, because I actually run SLIME in my game's event loop.
<phantomics> Have a question if anyone knows... what's the best way to daemonize a CL process on Linux? Using systemctl to daemonize has resulted in many problems, cl-daemonize and daemon packages don't seem to work too well or maybe it's just me - what's the most favored approach right now?
<_death> I see.. I have a simple-graphics interface that's very easy to use
<mfiano> That way I don't have to wrap REPL calls in some macro to make sure that it is ran on the SDL/GL context, and similarly across dynamic special bindings
<mfiano> The REPL thread _is_ the main thread for me. I like it quite a lot.
cantstanya has joined #lisp
<_death> since then it grew to about twice the size heh
<mfiano> Cool. I'll have a read in a few, even though I have my own graphics/math framework I've been developing for about a decade :)
<mfiano> Currently experimenting with some procedural mesh/material/lighting code in Lisp https://www.youtube.com/watch?v=SgGJ2awmwEA
<_death> ok updated with the latest
<_death> nice
<phantomics> _death: this uses an SDL Surface for the bitmap right? What are you using the graphics for?
rumbler3_ has joined #lisp
<mfiano> _death: Be careful using cl-sdl2 though. There are a couple areas that are unsafe still due to removal of finalizers a few years ago. See the issues, and any patches for them would be welcome. I just don't have enough time or desire to subject myself to that codebase much.