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 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.
<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?
<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
<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
<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...
<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
<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.
<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.
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]
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)
<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]
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?
<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)]