jackdaniel changed the topic of #lisp to: Common Lisp, the #1=(programmable . #1#) programming language | <http://cliki.net/> <https://irclog.tymoon.eu/freenode/%23lisp> <https://irclog.whitequark.org/lisp> <http://ccl.clozure.com/irc-logs/lisp/> | SBCL 1.5.4, CMUCL 21b, ECL 16.1.3, CCL 1.11.5, ABCL 1.5.0
emacsomancer has quit [Read error: Connection reset by peer]
alexanderbarbosa has joined #lisp
libertyprime has quit [Ping timeout: 265 seconds]
sjl has joined #lisp
karlosz has joined #lisp
jprajzne has quit [Quit: jprajzne]
jprajzne has joined #lisp
jprajzne has quit [Client Quit]
jprajzne has joined #lisp
torbo has joined #lisp
lavaflow has joined #lisp
igemnace has joined #lisp
libertyprime has joined #lisp
ralt has quit [Quit: Connection closed for inactivity]
emacsomancer has joined #lisp
karlosz has quit [Quit: karlosz]
igemnace has quit [Remote host closed the connection]
frgo_ has joined #lisp
frgo has quit [Ping timeout: 240 seconds]
lucasb has quit [Quit: Connection closed for inactivity]
elfmacs has joined #lisp
makomo has quit [Ping timeout: 276 seconds]
makomo has joined #lisp
Kaisyu7 has quit [Quit: ERC (IRC client for Emacs 26.2)]
Kaisyu7 has joined #lisp
bitmapper has quit [Ping timeout: 276 seconds]
semz has quit [Ping timeout: 245 seconds]
krid has quit [Ping timeout: 245 seconds]
karlosz has joined #lisp
EvW has quit [Ping timeout: 245 seconds]
fragamus has quit [Ping timeout: 276 seconds]
semz has joined #lisp
karlosz has quit [Quit: karlosz]
notzmv has joined #lisp
emacsomancer has quit [Read error: Connection reset by peer]
analogue has joined #lisp
cosimone has quit [Remote host closed the connection]
cosimone has joined #lisp
makomo has quit [Ping timeout: 240 seconds]
cosimone has quit [Quit: Quit.]
jprajzne has quit [Remote host closed the connection]
jprajzne has joined #lisp
mstdnuser[m] has quit [Remote host closed the connection]
keep-learning[m] has quit [Write error: Connection reset by peer]
shaakyamuni[m] has quit [Remote host closed the connection]
no-defun-allowed has quit [Remote host closed the connection]
djeis[m] has quit [Read error: Connection reset by peer]
sciamano has quit [Write error: Connection reset by peer]
eriix[m] has quit [Read error: Connection reset by peer]
malaclyps[m] has quit [Read error: Connection reset by peer]
iarebatman has quit [Remote host closed the connection]
Godel[m] has quit [Write error: Connection reset by peer]
dtw has quit [Read error: Connection reset by peer]
akanouras has quit [Read error: Connection reset by peer]
fynzh[m] has quit [Read error: Connection reset by peer]
liambrown has quit [Read error: Connection reset by peer]
Gnuxie[m] has quit [Write error: Connection reset by peer]
nonlinear[m] has quit [Read error: Connection reset by peer]
hiq[m] has quit [Write error: Connection reset by peer]
LdBeth has quit [Read error: Connection reset by peer]
Jachy has quit [Read error: Connection reset by peer]
munksgaard[m] has quit [Write error: Connection reset by peer]
katco has quit [Write error: Connection reset by peer]
djeis[m] has joined #lisp
fragamus has joined #lisp
emacsomancer has joined #lisp
clothespin_ has quit [Ping timeout: 246 seconds]
Bike has quit [Quit: Lost terminal]
galdor has quit [*.net *.split]
spacedbat has quit [*.net *.split]
|3b| has quit [*.net *.split]
Ober has quit [*.net *.split]
swflint has quit [*.net *.split]
jerme_ has quit [*.net *.split]
markasoftware has quit [*.net *.split]
analogue has quit [Quit: Leaving]
khisanth_ has quit [Ping timeout: 265 seconds]
akanouras has joined #lisp
dtw has joined #lisp
katco has joined #lisp
LdBeth has joined #lisp
eriix[m] has joined #lisp
Jachy has joined #lisp
liambrown has joined #lisp
munksgaard[m] has joined #lisp
malaclyps[m] has joined #lisp
sciamano has joined #lisp
nonlinear[m] has joined #lisp
Godel[m] has joined #lisp
no-defun-allowed has joined #lisp
iarebatman has joined #lisp
hiq[m] has joined #lisp
Gnuxie[m] has joined #lisp
keep-learning[m] has joined #lisp
shaakyamuni[m] has joined #lisp
mstdnuser[m] has joined #lisp
fynzh[m] has joined #lisp
lemoinem has quit [Read error: Connection reset by peer]
tourjin has joined #lisp
<tourjin> I just installed cygwin x and emacs . where can I download slime?
lemoinem has joined #lisp
torbo has quit [Remote host closed the connection]
krid has joined #lisp
khisanth_ has joined #lisp
ltriant_ has joined #lisp
ltriant has quit [Ping timeout: 268 seconds]
zdm has joined #lisp
galdor has joined #lisp
spacedbat has joined #lisp
|3b| has joined #lisp
markasoftware has joined #lisp
swflint has joined #lisp
Ober has joined #lisp
jerme_ has joined #lisp
tourjin has quit [Quit: Leaving]
tourjin has joined #lisp
gravicappa has joined #lisp
<tourjin> what does mode +z or +i means?
tourjin has quit [Read error: Connection reset by peer]
jprajzne has quit [Ping timeout: 265 seconds]
akoana has joined #lisp
quazimodo has joined #lisp
tourjin has joined #lisp
<ck_> tourjin: you can get slime through the emacs package system, for example. Search for "Melpa packages" to set that up
orivej has quit [Ping timeout: 276 seconds]
<jeosol> Is there a work around to save SBCL from slime (normally do that from the shell). Keep getting this message: "Cannot save core with multiple threads running."
<jeosol> I meant save the image
FreeBirdLjj has joined #lisp
tourjin has quit [Read error: Connection reset by peer]
<beach> Good morning everyone!
<|3b|> you could try killing all worker threads, exiting repl, and saving from *inferior-lisp*
<|3b|> (or configure it to not start threads)
fragamus has quit [Ping timeout: 276 seconds]
tourjin has joined #lisp
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #lisp
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #lisp
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #lisp
FreeBirdLjj has quit [Ping timeout: 268 seconds]
abhixec has quit [Quit: leaving]
retropikzel has joined #lisp
tourjin has quit [Ping timeout: 265 seconds]
liberiga has joined #lisp
retropikzel has quit [Remote host closed the connection]
Lord_of_Life has quit [Ping timeout: 246 seconds]
Lord_of_Life has joined #lisp
Ricchi has quit [Remote host closed the connection]
fragamus has joined #lisp
jiny has joined #lisp
<fragamus> hello
<fragamus> connect
<beach> Hello fragamus.
<beach> You are already connected.
<fragamus> hello beach
<fragamus> what time is it where you are
FreeBirdLjj has joined #lisp
<beach> Colleen: time in Bordeaux
<Colleen> Google Maps failed to perform your request for an unknown reason.
<beach> Aww
<beach> 06:50
<fragamus> good morning!
<fragamus> its night time in California
<fragamus> Colleen: distance from hamburg to frankfurt
<Colleen> Unknown command. Possible matches: 8, time, deny, set, say, mop, get, tell, roll, help,
<fragamus> I didn't know about Colleen
<fragamus> I still don't know about Colleen
<fragamus> I am trying to dissect clisp and I need to look at the main for lisp.run
<fragamus> I can't find it
<fragamus> It is C language I think
<beach> fragamus: What are you planning to do with CLISP?
FreeBirdLjj has quit [Ping timeout: 245 seconds]
<beach> And, yes, CLISP is written in C. I think that's where they derived the name from.
Necktwi has joined #lisp
<fragamus> I am trying to write a toy interpreter
nanoz has joined #lisp
<fragamus> that sucks up byte codes and does cool stuff
<beach> And what does your interpreter have to do with CLISP? Are you trying to copy what they did?
<fragamus> yeah
<beach> And what is your reason for wanting to write a toy interpreter?
wigust has joined #lisp
<fragamus> I don't need all the speed
<fragamus> I want to embed it as part of the boot sequence for a piece of hardware
<fragamus> I want the tiniest piece of code that will interpret lisp
<fragamus> clisp
<fragamus> I want it to be tiny as possible
<LdBeth> RMS resigns
<fragamus> and slow as possible
wigust- has quit [Ping timeout: 240 seconds]
jiny is now known as tourjn
<LdBeth> I’m afraid not
georgie has joined #lisp
<fragamus> so I need to study lisp.run starting with the main
<beach> fragamus: Are you confusing CLISP and Common Lisp?
<fragamus> no
<fragamus> I want to use clisp bytecodes
<beach> I see.
<fragamus> I want to interpret that
<beach> OK.
<fragamus> I want tiny tiny and slooooow
<LdBeth> Since a very bare bone lisp interpreter such as ulisp can barely fit into Ardurino chip
<fragamus> the interpreter needs to be tiny but the code for common lisp can be on a regular storage device
<fragamus> as big as you please
zdm has quit [Quit: leaving]
<no-defun-allowed> Wouldn't you also need memory for the Lisp heap too?
<LdBeth> I don’t get the point, since if a large storage is available there’s no need for a lisp interpreter to load a Common Lisp
<fragamus> well the lisp program will be small and won't link to much and won't do a lot of alloc
<LdBeth> Well, you might swap on disk
<fragamus> yep
<fragamus> anyhow anyone point me to the main()
<LdBeth> But seem you have not idea that you need also standard C lib to run CLISP
igemnace has joined #lisp
shka_ has joined #lisp
<fragamus> that is already part of the system into which i am embedding
flamebeard has joined #lisp
<pjb> fragamus: lisp.run is in a place that depends on the installation of clisp. For example, it can be something like: /usr/local/lib/clisp-2.49.93+/base/lisp.run
<pjb> fragamus: The best is to get the sources of clisp and to configure and compile them yourself.
igemnace has quit [Remote host closed the connection]
<fragamus> what source file contains the main()
<pjb> fragamus: clisp implementation is made much more complex than what you want, because it has to deal with two stacks: a normal C stack, and a lisp VM stack.
<pjb> fragamus: type: man grep
<fragamus> i use rg and it was not evident from that but i'll keep looking
varjag has joined #lisp
<tourjn> alt-x package-list-packages show me several slimes which is most popular one? I have two slim-mode two slime and a lot of slime-*.
koenig has quit [Ping timeout: 246 seconds]
vlatkoB has joined #lisp
koenig has joined #lisp
<fragamus> thanks LdBeth, pjb for that info
lambda-smith has joined #lisp
Necktwi has quit [Remote host closed the connection]
<beach> I wonder how many toy interpreters for toy versions of Lisp there are out there. And I wonder how many of them are actually used.
<pjb> tourjn: My personnal preference is to use the slime provided by quicklisp, since slime needs a swank, and it's better if it comes from the same version.
<beach> My impression is that there is at least one such project per year announced here.
<pjb> beach: approximatively as many as lisp students + compiler student.
<pjb> +s
<beach> Entirely possible.
<no-defun-allowed> beach: On r/lisp, about once every two months.
georgie has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
varjag has quit [Ping timeout: 265 seconds]
lambda-smith has quit [Quit: Konversation terminated!]
<mfiano> Toy Lisp interpreters comes up more often on the Lisp Discord server. Though it is quite a bit more active of a forum than here
null-pointer-p has joined #lisp
<no-defun-allowed> But then, I'd say only 40% actually implement list processing.
georgie has joined #lisp
null-pointer-p has quit [Client Quit]
<no-defun-allowed> (My theory is they can't be bugged to write a parser for their favourite language, since that 60% rarely follows any Lisp semantics.)
lambda-smith has joined #lisp
lambda-smith has quit [Client Quit]
jiny has joined #lisp
lambda-smith has joined #lisp
tourjn has quit [Read error: Connection reset by peer]
krid has quit [Ping timeout: 240 seconds]
sauvin has joined #lisp
dddddd has quit [Remote host closed the connection]
<verisimilitude> Paul Graham's toy Lisp still gets some attention.
FreeBirdLjj has joined #lisp
<jeosol> |3b|: didnt get it to work. Just reran the procedure on terminal and saved the image that way
<jackdaniel> how would you define a type denoting a homogenous sequence? something like '(sequence* integer)
jiny has quit [Ping timeout: 265 seconds]
shka_ has quit [Ping timeout: 276 seconds]
FreeBirdLjj has quit [Ping timeout: 268 seconds]
<jackdaniel> using satisfies with lambda won't work, because satisfies expects a symbol
fragamus has quit [Ping timeout: 240 seconds]
fragamus has joined #lisp
dale has quit [Quit: My computer has gone to sleep]
notzmv has quit [Ping timeout: 268 seconds]
<Shinmera> There's two answers, either you can't, or you write a type expander that generates a global function to use in satisfies for that particular element type.
fragamus has quit [Ping timeout: 258 seconds]
<jackdaniel> wouldn't writing the expander settle that to only one particular element-type?
<Shinmera> Hm?
<jackdaniel> (deftype sequence* (elt) `(and sequence (satisfies ,(do-global-expansion))))
<Shinmera> obviously you have to pass elt to do-global-expansion.
<jackdaniel> but elt is a parameter of the type, not something known at the type definition time
<jackdaniel> I want to say (sequence* integer) and later (sequence* froob)
<Shinmera> yes, and do-global-expansion is run when the type is expanded
<jackdaniel> I don't follow, symbol given to "satisfies" denotes only a function accepting one argument - the object
varjag has joined #lisp
<jackdaniel> s/only a function/a function only/
<jackdaniel> so if we compile it to a predicate checking for integer sequence, then this function will check for `every integerp` and that's it
<jackdaniel> if you recompile it to check for froobs, then it won't check for itnegers
<jackdaniel> s/itnegers/integers/
rigidus has quit [Remote host closed the connection]
<jackdaniel> that works, thank you for the explanation
ebrasca has joined #lisp
orivej has joined #lisp
jonatack has quit [Ping timeout: 246 seconds]
ltriant_ has quit [Quit: leaving]
lemo1nem has joined #lisp
lemoinem is now known as Guest28787
Guest28787 has quit [Killed (card.freenode.net (Nickname regained by services))]
lemo1nem is now known as lemoinem
libertyprime has quit [Ping timeout: 240 seconds]
scymtym has quit [Read error: Connection reset by peer]
fragamus has joined #lisp
makomo has joined #lisp
libertyprime has joined #lisp
raghavgururajan has joined #lisp
makomo_ has joined #lisp
orivej has quit [Ping timeout: 265 seconds]
FreeBirdLjj has joined #lisp
makomo has quit [Ping timeout: 268 seconds]
fragamus has quit [Ping timeout: 265 seconds]
rozengla` has joined #lisp
FreeBirdLjj has quit [Ping timeout: 245 seconds]
dpl has joined #lisp
jasom has quit [Ping timeout: 246 seconds]
quazimodo has quit [Ping timeout: 245 seconds]
quazimodo has joined #lisp
froggey has quit [Ping timeout: 240 seconds]
froggey has joined #lisp
refpga has joined #lisp
akoana has left #lisp ["Leaving"]
ralt has joined #lisp
WewriteEssay has joined #lisp
jiny has joined #lisp
<WewriteEssay> aaa9e80d8118cd79e04f15cc8944fc668adeb330
FreeBirdLjj has joined #lisp
<no-defun-allowed> hi, 101011110100101 to you too
WewriteEssay has quit [Remote host closed the connection]
<ck_> Is that essay already? Or are we supposed to continue from your introduction?
<no-defun-allowed> must have been their very short story, though I think using a hash is cheating the word count metric
<jiny> clisp -c quicklisp.lisp left me a output file named quicklisp.fas . what does this mean?
jiny has quit [Quit: Leaving]
jiny has joined #lisp
jiny has quit [Client Quit]
jiny has joined #lisp
<ck_> FASL could mean Formal Approach to Slavic Linguistics
<jiny> clisp -c quicklisp.lisp left me a output file named quicklisp.fas . what does this mean?
<ck_> jiny: look up 'fasl file', it stands for fast load and contains -- who'd have guessed -- compilation output.
jiny has quit [Read error: Connection reset by peer]
FreeBirdLjj has quit [Ping timeout: 265 seconds]
<ck_> .. "I tried".
tourjin has joined #lisp
raghavgururajan has quit [Remote host closed the connection]
dpl_ has joined #lisp
jonatack has joined #lisp
hhdave has joined #lisp
georgie has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
scymtym has joined #lisp
AE_MC has joined #lisp
<tourjin> clisp -c myfile.lisp print out Wrote file /cygdrive/c/work/myfile.fas message. what does this mean? how can I run myfile.fas?
dpl__ has joined #lisp
FreeBirdLjj has joined #lisp
<pjb> tourjin: what does the -c option of clisp mean?
AE_MC has left #lisp [#lisp]
<saturn2> compile
<saturn2> you probably want to remove that
dpl_ has quit [Ping timeout: 265 seconds]
<saturn2> if you're just getting started you might find this easier https://portacle.github.io/
dpl__ has quit [Ping timeout: 265 seconds]
dpl___ has joined #lisp
FreeBirdLjj has quit [Ping timeout: 240 seconds]
<pjb> jackdaniel: that doesn't really work. That seem to work. But conformingly, it's quite difficult to make it work. Because you need to ensure that the function is available both in the compilation environment, and in the execution environment. It's rather delicated to do it correctly and conformingly. Also, notice that you want to generate function names, for your randome type specifiers, and you need to keep some consistency b
<pjb> the two environents…
dpl has quit [Ping timeout: 240 seconds]
<tourjin> thanks i'm reading all day.
tourjin has quit [Remote host closed the connection]
tourjin has joined #lisp
dpl has joined #lisp
flazh has joined #lisp
tourjin has quit [Ping timeout: 240 seconds]
<beach> jackdaniel: Jim Newton's PhD dissertation was largely about type descriptors for sequences. It is a great document.
<beach> They can do arbitrary regular expressions with types.
cosimone has joined #lisp
yoja has quit [Ping timeout: 265 seconds]
makomo_ has quit [Ping timeout: 265 seconds]
dpl___ has quit [Ping timeout: 276 seconds]
<shka__> this sounds interesting
jonatack has quit [Ping timeout: 240 seconds]
<jackdaniel> pjb: beach: thanks.
dpl_ has joined #lisp
<jackdaniel> afair he has presented his ideas during ELS
<jackdaniel> For now I'll define it to check for a sequence, this type annotation is primarily meant for a programmer reading the code, not for the compiler
<jackdaniel> (deftype sequence* (element-type) `sequence) ;with ignore declaration
jprajzne has joined #lisp
FreeBirdLjj has joined #lisp
ljavorsk has joined #lisp
liberiga has quit [Ping timeout: 260 seconds]
samla has joined #lisp
ljavorsk_ has joined #lisp
FreeBirdLjj has quit [Ping timeout: 276 seconds]
samla has quit [Client Quit]
ljavorsk has quit [Ping timeout: 258 seconds]
fragamus has joined #lisp
zigpaw has quit [Ping timeout: 246 seconds]
zigpaw has joined #lisp
<pjb> jackdaniel: Here is what I had: https://pastebin.com/mbADPjQ8
fragamus has quit [Ping timeout: 276 seconds]
cosimone has quit [Quit: Terminated!]
cosimone has joined #lisp
jiny has joined #lisp
jonatack has joined #lisp
nostoi has joined #lisp
<jiny> thanks pjb I learned I can load compiled codes in .fas extentions inside clisp.
jiny has quit [Quit: Leaving]
jiny has joined #lisp
jiny is now known as tourjin
jonatack has quit [Quit: jonatack]
jonatack has joined #lisp
gxt has quit [Ping timeout: 260 seconds]
rozengla` has quit [Remote host closed the connection]
fragamus has joined #lisp
dpl__ has joined #lisp
cosimone has quit [Quit: Terminated!]
dpl_ has quit [Ping timeout: 245 seconds]
xrash has joined #lisp
fragamus has quit [Ping timeout: 240 seconds]
dpl__ has quit [Ping timeout: 245 seconds]
dpl_ has joined #lisp
FreeBirdLjj has joined #lisp
FreeBirdLjj has quit [Ping timeout: 258 seconds]
yoja has joined #lisp
fragamus has joined #lisp
fragamus has quit [Ping timeout: 245 seconds]
<tourjin> gpg: Can't check signature: public key not found what does this mean?
<tourjin> should I create my own public key on my system?
<tourjin> gpg --verify quicklisp.lisp.asc quicklisp.lisp this was original command.
<ck_> you should probably obtain the key you want to verify with first. gpg --receive-keys <id>, or something.
<tourjin> on my own system?
<ck_> do you have a different option? I don't understand what you mean.
<tourjin> i don't know about gpg. I just followed install instructions. but it fails.
dpl__ has joined #lisp
dpl_ has quit [Read error: Connection reset by peer]
dpl_ has joined #lisp
<tourjin> doc says download two files then gpg two files.
yoja has quit [Ping timeout: 268 seconds]
<ck_> I tried to tell you that you need to obtain the public key you want to verify with, first.
dpl has quit [Ping timeout: 265 seconds]
<ck_> To do this, locate the human interface device typically located between you and the monitor, open a terminal, and enter into this terminal:
<ck_> gpg --receive-keys D7A3489DDEFE32B7D0E7CC61307965AB028B5FF7
<tourjin> --receive-keys is invalid option in my gpg command
<antoszka> --recv-keys
<antoszka> afair
<antoszka> ck_, tourjin ^
<ck_> mine accepts both. but thanks for the information.
FreeBirdLjj has joined #lisp
<tourjin> thanks I think it works somehow.
<tourjin> gpg: WARNING: This key is not certified with a trusted signature! but but it succeded. thank you.
FreeBirdLjj has quit [Ping timeout: 265 seconds]
<tourjin> D7A3489DDEFE32B7D0E7CC61307965AB028B5FF7 where did this come from? can I make my own key ID?
mingus has joined #lisp
nostoi has quit [Quit: Verlassend]
<pjb> tourjin: always the same: read the doc! man gpg
<ck_> maybe this would be an excellent time to read the documentation
<tourjin> always thank you
gxt has joined #lisp
EvW1 has joined #lisp
xrash has quit [Read error: Connection reset by peer]
<scymtym> tourjin: in a nutshell, Xach signs Quicklisp with his signature. your computer doesn't know what Xach's signature is like, so you have to download it (receive-key). then you get a warning that the key is not trusted because anybody could upload a key and claim that it is Xach's key. that trust can only be established by meeting someone in person and have them attest that the key is really Xach's (potentially indirectly through a "web of
<scymtym> trust" instead of directly)
karswell has quit [Ping timeout: 240 seconds]
ym has joined #lisp
ggole has joined #lisp
amerigo has joined #lisp
lambda-smith has quit [Quit: Konversation terminated!]
<flip214> that could be done at sbcl20, btw
gareppa has joined #lisp
tourjin has quit [Remote host closed the connection]
gareppa has quit [Remote host closed the connection]
fragamus has joined #lisp
bitmapper has joined #lisp
fragamus has quit [Ping timeout: 240 seconds]
amerlyq has joined #lisp
ljavorsk__ has joined #lisp
ljavorsk_ has quit [Ping timeout: 240 seconds]
gravicappa has quit [Ping timeout: 268 seconds]
jmercouris has joined #lisp
gravicappa has joined #lisp
shangul has joined #lisp
makomo_ has joined #lisp
varjag has quit [Remote host closed the connection]
EvW1 has quit [Ping timeout: 245 seconds]
ljavorsk__ has quit [Ping timeout: 240 seconds]
ljavorsk__ has joined #lisp
varjag has joined #lisp
dddddd has joined #lisp
gravicappa has quit [Ping timeout: 245 seconds]
libertyprime has quit [Ping timeout: 265 seconds]
Bike has joined #lisp
ebrasca has quit [Remote host closed the connection]
<eigenhombre> Complete newbie question here, still trying to get my head around how packages/systems/ASDF/Quicklisp works. I'm using SBCL + Emacs for my environment. When I use a library from Quicklisp, say `cl-ppcre`, is it expected that I would have to add, say, `(ql:quickload :cl-ppcre)` in my `.sbclrc`? I'm finding that otherwise, when I start my SLIME REPL in Emacs, my code doesn't know where `cl-ppcre` is even if it's in my
<eigenhombre> `:depends-on` in the projects's `.asd` file.
<beach> eigenhombre: That is not typically how it is done.
<beach> eigenhombre: The typical way is to write your application code using an ASDF system definition.
<beach> Oh, that's what you are doing. Sorry.
<beach> For that, you need to add a link to ~/quiclisp/local_projects.
<beach> I may have the name wrong.
<beach> Hold on...
<Bike> you said "the project's" asd file. do you load the project after starting slime?
* eigenhombre googles...
<beach> ~/quicklisp/local-projects.
ljavorsk__ has quit [Ping timeout: 245 seconds]
<jmercouris> just a point of clarification: You don't have to quickload cl-ppcre in your sbclrc, you can just quickload your project
yoja has joined #lisp
<thijso> So, put a symlink to your own project's asd file in ~/quicklisp/local-projects, the in slime do (ql:quickload :your-project) and it should pick up the libraries from quicklisp like cl-ppcre and others.
<beach> eigenhombre: It looks like you are getting plenty of help, so I'll be quiet. Others know better than I do.
<thijso> s/the in slime/then in slime/
<eigenhombre> I do have the symlink, but that's for libraries I make, right, not Quicklisp dependencies? Ah, I'll try `quickload`ing my project...
<Bike> i mean if you don't actually load your project the asd has nothing to do with your system.
<eigenhombre> Got it. Do Emacs people do a separate `ql:quickload` of the current system (that they're developing on) at the REPL then, whenever they make changes to e.g. dependencies?
flamebeard has quit []
<Bike> this doesn't really have much to do with emacs. but yeah something like that.
<thijso> I always do (ql:quickload :my-proj)(in-package :my-proj) in slime
<ck_> C-c M-p is a shorter command for the latter
<eigenhombre> Ah!
<eigenhombre> What does C-c M-p expand into? (So I can google)
<ralt> `C-h k C-c M-p` will tell you :)
<Bike> slime-repl-set-package, i guess
<thijso> C-h ... ah, too late. What ralt said
<Bike> you might have more luck with using slime's documentation than the internet's, anyway
ljavorsk__ has joined #lisp
FreeBirdLjj has joined #lisp
<eigenhombre> yes, it's `slime-repl-set-package` - I have that working now for a minimal project w/ no deps. lemme try adding a dependency...
<ralt> I'm surprised dim hasn't written pllisp, similar to https://www.postgresql.org/docs/9.5/plpython.html
<Bike> just to make sure you're clear on this... adding something to the file will not itself change anything in lisp. lisp doesn't continually poll your files or anything. you have to go through and tell lisp to load something
<ralt> dim: did you consider it?
* thijso thinks maybe he shoud figure out how to get swank running in his app on the phone, so he doesn't have a >1.5 minute roundtrip to debug it
<ralt> thijso: that's super easy
<ralt> I have that function in most of my apps: https://pastebin.com/4je6aUHr
<eigenhombre> Bike: I get that -- thank you. I'm trying to figure out the best workflow. I got `slime-repl-set-package` to work on a brand new ASDF project (created with `cl-project:makeproject`). However, when I add e.g. `"arrow-macros"` to `depends-on` in the ASD file, it does not find the dependency yet (e.g. when I `slime-set-package` again). Still trying to figure that out.
<thijso> Yeah, I actually stripped it out. So I should just put it back.
<Bike> eigenhombre: slime-set-package doesn't load anything.
<eigenhombre> Ah, fixed it - I had to re-Quickload my project.
<eigenhombre> Got it working.
FreeBirdLjj has quit [Ping timeout: 276 seconds]
<Bike> there's a distinction between packages and systems. systems are collections of code in file and etc. packages are just namespaces for symbols.
<eigenhombre> OK, lemme digest all that. Progress... thanks everyone!
<Bike> setting the package just means telling lisp that it should understand unqualified symbol names to be in such and such package/namespace.
raghavgururajan has joined #lisp
refpga` has joined #lisp
refpga has quit [Ping timeout: 265 seconds]
refpga has joined #lisp
<eigenhombre> Everyone, I was just able to clean up my dependencies on a multi-file project and get that all working smoothly, thanks to your suggestions ... thanks again.
<Bike> great
fragamus has joined #lisp
fragamus has quit [Ping timeout: 268 seconds]
<beach> eigenhombre: Good luck!
fragamus has joined #lisp
lucasb has joined #lisp
retropikzel has joined #lisp
igemnace has joined #lisp
papachan has joined #lisp
FreeBirdLjj has joined #lisp
papachan has quit [Client Quit]
bitmapper has quit []
FreeBirdLjj has quit [Ping timeout: 265 seconds]
ljavorsk__ has quit [Ping timeout: 240 seconds]
bittin_ has joined #lisp
bittin_ has quit [Changing host]
bittin_ has joined #lisp
bittin_ has quit [Quit: Leaving]
igemnace has quit [Remote host closed the connection]
igemnace has joined #lisp
maxxcan has joined #lisp
maxxcan has quit [Remote host closed the connection]
refpga has quit [Ping timeout: 245 seconds]
igemnace has quit [Remote host closed the connection]
refpga has joined #lisp
raghavgururajan has quit [Read error: Connection reset by peer]
isBEKaml has joined #lisp
igemnace has joined #lisp
orivej has joined #lisp
dpl has joined #lisp
refpga has quit [Ping timeout: 276 seconds]
dpl_ has quit [Ping timeout: 240 seconds]
refpga has joined #lisp
cosimone has joined #lisp
dpl has quit [Ping timeout: 276 seconds]
dpl_ has joined #lisp
dale_ has joined #lisp
dale_ is now known as dale
sjl_ has joined #lisp
fragamus has quit [Ping timeout: 268 seconds]
Frobozz has joined #lisp
dpl_ has quit [Ping timeout: 268 seconds]
dpl has joined #lisp
bitmapper has joined #lisp
rippa has joined #lisp
Oladon_wfh has joined #lisp
tourjin has joined #lisp
nowhereman has quit [Ping timeout: 240 seconds]
mindCrime_ has joined #lisp
jasom has joined #lisp
igemnace has quit [Quit: WeeChat 2.6]
igemnace has joined #lisp
dpl has quit [Ping timeout: 268 seconds]
dpl__ has quit [Ping timeout: 276 seconds]
igemnace has quit [Remote host closed the connection]
igemnace has joined #lisp
wxie has joined #lisp
refpga` has quit [Remote host closed the connection]
igemnace has quit [Ping timeout: 268 seconds]
Necktwi has joined #lisp
wxie has quit [Remote host closed the connection]
tourjin has quit [Ping timeout: 265 seconds]
APic has quit [Ping timeout: 244 seconds]
cosimone has quit [Quit: Terminated!]
isBEKaml has quit [Quit: leaving]
shifty has quit [Ping timeout: 258 seconds]
APic has joined #lisp
edgar-rft has quit [Quit: Leaving]
serge28 has joined #lisp
APic has quit [Ping timeout: 265 seconds]
synchromesh has joined #lisp
FreeBirdLjj has joined #lisp
igemnace has joined #lisp
lambda-smith has joined #lisp
<drmeister> What do folks usually do when they want to write a function that returns a shallow copy of instances of a class?
elfmacs has quit [Ping timeout: 265 seconds]
lambda-smith has quit [Quit: Konversation terminated!]
<drmeister> I'm implementing a genetic algorithm to mutate a complex object and it's going to be useful to make shallow copies of instances of a class. If I change the class I want the shallow copier to keep up to date.
lambda-smith has joined #lisp
<dlowe> I've made a MOP shallow copy before
synchromesh has quit [Remote host closed the connection]
<drmeister> Every one of those lipid molecules is represented by an instance of a class called ga-lipid. I want to shallow copy the slots of ga-lipid.
<drmeister> dlowe: A MOP shallow copy... please go on.
synchromesh has joined #lisp
<synchromesh> minion: registration, please?
<minion> The URL https://gitlab.common-lisp.net/users/sign_in?secret=d703f907 will be valid until 15:45 UTC.
LiamH has joined #lisp
gareppa has joined #lisp
<dlowe> yeah, that looks like a good implementation
<synchromesh> minion: registration, please?
<minion> The URL https://gitlab.common-lisp.net/users/sign_in?secret=9eebcba6 will be valid until 16:00 UTC.
gareppa has quit [Quit: Leaving]
amerigo has quit [Quit: Connection closed for inactivity]
gareppa has joined #lisp
fragamus has joined #lisp
jeosol has quit [Ping timeout: 260 seconds]
scymtym has quit [Ping timeout: 245 seconds]
bitmapper has quit []
fragamus has quit [Ping timeout: 268 seconds]
tokik has joined #lisp
tokik has quit [Client Quit]
georgie has joined #lisp
Necktwi has quit [Ping timeout: 268 seconds]
<ralt> drmeister: I'm not sure it's relevant, but IME it's easier to have immutable-ish objects and do CoW
<dlowe> ralt: that's what he wants.
<dlowe> he's asking how to easily do the CoW part
FreeBirdLjj has quit [Remote host closed the connection]
<ralt> ah, shallow copy doesn't imply that for me, but ok :)
FreeBirdLjj has joined #lisp
<dlowe> in context
cosimone has joined #lisp
georgie has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<jmercouris> I believe that *may* be referred to as a shallow copy, it definitely is in the java world
Lord_of_Life_ has joined #lisp
FreeBirdLjj has quit [Ping timeout: 276 seconds]
gareppa has quit [Quit: Leaving]
Lord_of_Life has quit [Ping timeout: 245 seconds]
Lord_of_Life_ is now known as Lord_of_Life
varjagg has joined #lisp
hhdave has quit [Quit: hhdave]
shka_ has joined #lisp
nanoz has quit [Ping timeout: 276 seconds]
Necktwi has joined #lisp
<drmeister> ralt: How do you do copy on write?
<ralt> that's a very good question :D
<ralt> some sort of setf that returns a new instance with only the new slot being reinstantiated while all the other slots are references to the older instance's slots?
gravicappa has joined #lisp
<drmeister> Ok, I'll think on that. It's a good idea.
<aeth> structs have a copy-foo function automatically generated, but there is no copy method in widespread usage for standard-objects afaik
<drmeister> I profiled the copying function I did write and it allowed me to copy 4444 membranes/second.
<drmeister> Then I profiled it with our tools and made a few changes and got it up to more than 16,000/second.
<drmeister> aeth: Yeah - copying an instance is very dependent on the data structure.
srji has quit [Ping timeout: 276 seconds]
<aeth> drmeister: Well, yes, but a default shallow copy is the topic, right? Obviously not an ideal copy...
<drmeister> Right - but more happened between me asking and now - I accidentally switched to a different IRC window and started describing my progress in finding code to do this there - thinking I was here.
<aeth> ah
<drmeister> I found a generic MOP based shallow instance copier. It was a bit slow - so I wrote some specific code.
<drmeister> Yeah - it's all in #clasp
<Xach> heh
analogue has joined #lisp
ggole has quit [Quit: Leaving]
synchromesh has quit [Remote host closed the connection]
retropikzel has quit [Remote host closed the connection]
analogue has quit [Ping timeout: 276 seconds]
analogue has joined #lisp
analogue has quit [Remote host closed the connection]
analogue has joined #lisp
shangul has quit [Ping timeout: 276 seconds]
<sjl_> is clhs.lisp.se returning Content-Type: application/octet-stream for anyone else? Which makes firefox try to download the hyperspec pages instead of displaying them as HTML
<Xach> sjl_: someone mentioned that a few days ago
akoana has joined #lisp
<Xach> I didn't know anyone used clhs.lisp.se - I have always used lispworks's version.
<Bike> lisp.se comes up for me first on google, is the tragic part
<sjl_> Sometimes I google for "clhs whatever" and clhs.lisp.se is the first result
<sjl_> yeah
<Xach> oh. i always use a redirector thingy.
<Oladon_wfh> You can do !clhs on DuckDuckGo (uses the LispWorks version)
<Xach> l1sp.org/cl/11.1.2.1.2 or xach.com/clhs
APic has joined #lisp
<ck_> Xach: is there a mechanism or report to check the most recent time quicklisp has checked some repository for updates?
<Xach> ck_: no. i would like to add that info, so you could find out detailed provenance for a project, including when it was retrieved. but that is not there yet.
<Xach> ck_: projects are generally checked daily, so the date of the check is the date of the quicklisp dist update.
<Xach> there are some exceptions, like if a project is unreachable and i have a cached copy
<ck_> I see thank you. The specific reason I asked is that I was waiting for the newest version of float-features (also by Shinmera), and I wasn't sure whether projects on github.io used some other method
<ck_> or maybe I am doing something wrong
Bike has quit [Remote host closed the connection]
Bike has joined #lisp
<Xach> ck_: I hope to make a new dist update very soon
scymtym has joined #lisp
shangul has joined #lisp
<ck_> Thank you very much for the clarification
Oladon_wfh has quit [Remote host closed the connection]
nanoz has joined #lisp
pjb has quit [Ping timeout: 246 seconds]
ravenous_ has joined #lisp
catchme has joined #lisp
gravicappa has quit [Ping timeout: 258 seconds]
<Shinmera> Xach: That was fixed a long time ago already :) https://github.com/Shinmera/uax-9/commit/1bd98c75b601f025c9d7fc2930f2f79db5d17831
<Shinmera> Xach: Thanks to your RSS feeds!
Necktwi has quit [Quit: leaving]
Bike has quit [Remote host closed the connection]
notzmv has joined #lisp
<Xach> Shinmera: phew! so YOU'RE the rss user!
Bike has joined #lisp
gxt has quit [Ping timeout: 260 seconds]
ravenou__ has joined #lisp
pjb has joined #lisp
cosimone has quit [Quit: Quit.]
adip has quit [Ping timeout: 276 seconds]
ravenous_ has quit [Ping timeout: 276 seconds]
paul0 has quit [Ping timeout: 276 seconds]
sauvin has quit [Read error: Connection reset by peer]
<dlowe> I use RSS too
<Xach> dlowe: but your stuff is never broken
refpga has quit [Ping timeout: 240 seconds]
refpga has joined #lisp
<dlowe> Xach: I also had to stop working on my one thing :) Maybe someday I can get back and rough it up some
vlatkoB has quit [Remote host closed the connection]
<Xach> ok
serge28 has quit [Remote host closed the connection]
Oladon_wfh has joined #lisp
edgar-rft has joined #lisp
adip has joined #lisp
lambda-smith has quit [Quit: Konversation terminated!]
refpga has quit [Ping timeout: 268 seconds]
techquila has joined #lisp
EvW has joined #lisp
shangul has quit [Ping timeout: 240 seconds]
xkapastel has joined #lisp
ralt has quit [Quit: Connection closed for inactivity]
jmercouris has quit [Ping timeout: 245 seconds]
libertyprime has joined #lisp
analogue has quit [Quit: later alligator]
anewuser has joined #lisp
Ricchi has joined #lisp
troydm has quit [Ping timeout: 245 seconds]
shangul has joined #lisp
alexanderbarbosa has quit [Read error: Connection reset by peer]
refpga has joined #lisp
ravenou__ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
ralt has joined #lisp
shangul has quit [Ping timeout: 268 seconds]
Ven`` has joined #lisp
shangul has joined #lisp
rippa has quit [Quit: {#`%${%&`+'${`%&NO CARRIER]
karlosz has joined #lisp
krid has joined #lisp
pjb has quit [Ping timeout: 276 seconds]
shka_ has quit [Ping timeout: 240 seconds]
bjorkintosh has quit [Quit: Leaving]
paul0 has joined #lisp
krid has quit [Ping timeout: 265 seconds]
mindthelion has joined #lisp
mindthelion has quit [Remote host closed the connection]
mindthelion has joined #lisp
amerlyq has quit [Quit: amerlyq]
techquila has quit [Ping timeout: 264 seconds]
karlosz has quit [Ping timeout: 264 seconds]
paul0 has quit [Remote host closed the connection]
paul0 has joined #lisp
gxt has joined #lisp
fragamus has joined #lisp
davr0s has joined #lisp
davr0s_ has joined #lisp
t58 has joined #lisp
igemnace has quit [Remote host closed the connection]
igemnace has joined #lisp
mindthelion has quit [Quit: Drops mic, and fucks off back to wherever he crawled out of.]
mindCrime_ has quit [Ping timeout: 265 seconds]
krid has joined #lisp
stux|RC-only has quit [Quit: Aloha!]
catchme has quit [Quit: Connection closed for inactivity]
v0|d has joined #lisp
Blukunfando has quit [Ping timeout: 245 seconds]
<thijso> Anybody familiar with android architecture? It's apparently a little different from normal linux (despite a lot of appearances), in that calling bt:join-thread just completely locks up your app. Nothing will ever happen after you call that, it seems. Or maybe I'm just doing something wrong.
<thijso> But a long time debugging, and I've narrowed it down to that call. On ECL, that just does an mp:join-process under the hood. And then everything grinds to a halt...
Frobozz has quit [Ping timeout: 240 seconds]
pgomes has joined #lisp
stux|RC-only has joined #lisp
<ralt> thijso: it's likely that one of your thread is not finished?
pgomes has quit [Remote host closed the connection]
<ralt> thijso: did you check with `M-x slime-list-threads` or w/e that was?
<thijso> Not really, no. It's one thread, and that finished pretty quickly. Exact same code runs without trouble on regular linux with ECL.
pgomes has joined #lisp
troydm has joined #lisp
<thijso> Yeah, no, as that is very hard to do running on my current setup. I'll have to look into getting swank running again. It's not as simple, because you need a specialized form of quicklisp and swank.
Blukunfando has joined #lisp
<thijso> But EQL5-Android includes examples with it, so I'll go take a look at those.
<thijso> (So it's not hard to do, I'm just lazy, and haven't done it yet)
<thijso> ;)
<Xach> thijso: i'm curious - what sort of specializations are needed for quicklisp?
<thijso> Not exactly sure what the function does, but it includes this comment: ;; replace interpreted function with precompiled one from DEFLATE
Oladon_wfh has quit [Ping timeout: 260 seconds]
<thijso> It's in EQL5-Android/examples/REPL/lisp/ini.lisp
<Xach> ah
pgomes has quit [Ping timeout: 268 seconds]
johs has quit [Read error: Connection reset by peer]
johs has joined #lisp
karlosz has joined #lisp
superkumasan has joined #lisp
varjagg has quit [Quit: ERC (IRC client for Emacs 26.1)]
<thijso> Hhmmm... might have spoken too soon. Had a bunch of code commented out in my 'working' version. Looks like the thread is actually dying in there somewhere...
asdf_asdf_asdf has joined #lisp
<asdf_asdf_asdf> Hi. Why it return note: deleting unreachable code?
<asdf_asdf_asdf> https://cpy.pt/2Wrds2N8
<Xach> asdf_asdf_asdf: because it has determined that the code cannot be reached and it does not need to be included in the compiled code
<Xach> that is not a return value but a note
<asdf_asdf_asdf> So, how it fix?
<Xach> asdf_asdf_asdf: it is deleting the last form because your case always returns before the final form is reached.
fragamus has quit [Ping timeout: 276 seconds]
<Xach> asdf_asdf_asdf: your unconventional indentation makes it hard to see the control flow quickly.
<Xach> asdf_asdf_asdf: do you understand why nothing can be reached after the case form?
nanoz has quit [Ping timeout: 258 seconds]
jfb4 has joined #lisp
Bike has quit [Quit: Bike]
Aruseus has joined #lisp
<asdf_asdf_asdf> @Xach; because otherwise never be executed.
<thijso> Hmmm... does ECL do something different with vectors? Looks like (incf (size-of queue)) is dying.
<Xach> asdf_asdf_asdf: no.
<Xach> thijso: which part is the vector there?
<asdf_asdf_asdf> @thijso; sb-sys::int-vector?
<thijso> Wait, no. That's just a slot accessor for a number. Huh?
<thijso> It's just increasing a number from 0 to 1 and it's dying? I don't get it.
<Xach> What is queue? What is size-of?
<thijso> queue is a defclass with a slot size and that has accessor size-of.
<thijso> (size :initform 0 :accessor size-of)
<Xach> ok. weird.
<thijso> Although, maybe it's dying on subsequent iterations. It's very irritating, as all my debugging output gets lost when it dies. So I can only figure out stuff when it *doesn't* die. Pain in the you-know-what...
<thijso> Maybe time to get swank running tomorrow...
cosimone has joined #lisp
<asdf_asdf_asdf> Sorry, I don't know why it's unreachable.
phadthai has quit [Remote host closed the connection]
sjl_ has quit [Quit: WeeChat 2.3-dev]
sjl has quit [Quit: WeeChat 2.2-dev]
shangul has quit [Ping timeout: 276 seconds]
<Xach> asdf_asdf_asdf: it is because you use return-from
<asdf_asdf_asdf> Xach; sorry, because I don't know how works instruction return*.
<asdf_asdf_asdf> In Common Lisp.
<asdf_asdf_asdf> I must define special block using block operator?
shifty has joined #lisp
karlosz has quit [Quit: karlosz]
karlosz has joined #lisp
<gilberth__> asdf_asdf_asdf: Perhaps you first learn some Common Lisp and stop using it like you would use C.
<Xach> asdf_asdf_asdf: no.
EvW has quit [Ping timeout: 276 seconds]
<Xach> asdf_asdf_asdf: there is no way for the control of the program to proceed past your CASE form. every outcome of the form results in control returning to somewhere else. no forms after it are reachable.
<Xach> that is why you get an unreachable error
<Xach> sorry, note.
<Xach> it is not an error to have unreachable code. but it is usually a sign of misunderstanding.
cyraxjoe has quit [Quit: I'm out!]
<asdf_asdf_asdf> @Xach; very thanks for help. I wrote:
<asdf_asdf_asdf> And works valid?
karlosz has quit [Quit: karlosz]
<gilberth__> Or to put it otherwise, if you don't mind, Xach, in CL there is no need to RETURN-FROM a function make it yield a value.
fragamus has joined #lisp
* gilberth__ has an "to" extra.
bitmapper has joined #lisp
* gilberth__ is hacking in Lisp for over 30 years now and almost never uses RETURN-FROM.
<Xach> gilberth__: when you started they had not yet invented it!
<Xach> you had to use jump-if-not-zero and such!
<gilberth__> Xach: But CATCH/THROW was there :)
<asdf_asdf_asdf> OK, so thanks. (return-from... is bad practice?
Bike has joined #lisp
<gilberth__> Xach: You mean C2 xx xx?
<Xach> asdf_asdf_asdf: no. but it is essential to understand how it works and how it affects control flow and why it might lead to unreachable code.
<asdf_asdf_asdf> OK.
libertyprime has quit [Ping timeout: 265 seconds]
paul0 has quit [Remote host closed the connection]
paul0 has joined #lisp
<gilberth__> asdf_asdf_asdf: The one thing you really must get is, that Lisp does not distinguish between statements and expressions like most other languages do.
<asdf_asdf_asdf> I noticed.
<gilberth__> It's fine to say e.g. (+ (IF X 3 4) 42)
<gilberth__> Bad example, since C has
<gilberth__> ?: even
<gilberth__> Another example (+ (CASE X (:FOO 3) (:BAR 4) (T 0)) 42)
cosimone has quit [Ping timeout: 245 seconds]
anewuser has quit [Ping timeout: 240 seconds]
<gilberth__> Xach: BTW I am not _that_ olde, CLtL1 was published as I was 10yo which was about the time I came into contact with Lisp.
<Xach> gilberth__: sorry, you can't fool me. all cmucl hackers are very very old.
<gilberth__> Well, I am not a CMUCL hacker :)
libertyprime has joined #lisp
<Xach> oh, ok, then you may be younger than old
<gilberth__> Or did you using CMUCL? Thes, yes.
<gilberth__> * Then
* gilberth__ types garbage.
LiamH has quit [Quit: Leaving.]
<gilberth__> But, yes, I wonder when was BLOCK/RETURN-FROM invented? I bet Zeta Lisp has that, too.
<Xach> perhaps by catherine zeta-lisp
<Bike> the other day i looked at the lisp 1.5 manual, and it has return, and prog has a block. no naming or dynamic extent or anything though
<gilberth__> Yes, I believe PROG had RETURN for ages.
<gilberth__> As if you cannot write PORGrams without PROG. But don't tell asdf_asdf_asdf.
<gilberth__> Standard Lisp is funny. It allows RETURN and GO in a tail position only. Calls for LABELS.
Ven`` has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
libertyprime has quit [Ping timeout: 276 seconds]
analogue has joined #lisp
lxbarbosa has joined #lisp
phadthai has joined #lisp
karlosz has joined #lisp
lxbarbosa has quit [Quit: ERC (IRC client for Emacs 26.1)]
lxbarbosa has joined #lisp
<ralt> always hate this gotcha. https://pastebin.com/95ryYMmT
<Bike> if i read it correctly it was even worse, like i don't think you could GO from a nested if
karlosz has quit [Quit: karlosz]
<gilberth__> Bike: IIRC you'd need COND for that. But don't nail me on that.
<Xach> ralt: which one?
* Xach can't remember exactly what ppcre:scan does
<Xach> oh, right, the range operator
<ralt> Xach: the position of the dash
<gilberth__> It tries to apply Perl regexps (with all their bad semantics) to a string.
<Xach> That's why I always put dashes as the first thing in []...
<gilberth__> Same here.
<ralt> I learn that lesson every other year when I hit that bug...
<gilberth__> And why don't you remember that lesson?
<ralt> I'm a goldfish
<Xach> nice
<gilberth__> BTW, I often use "[x]" for quoting, since I simply cannot remember what to quote and what not.
<gilberth__> And it's different in [POSIX] basic regular expression versus extended regular expressions.
<gilberth__> Both of which are no regular expressions at all. Never mind.
Oladon1 has quit [Quit: Leaving.]
Oladon has joined #lisp
makomo_ has quit [Ping timeout: 264 seconds]