sindan has quit [Remote host closed the connection]
esrse has joined #lisp
Necktwi has quit [Ping timeout: 248 seconds]
torbo has quit [Remote host closed the connection]
ggole has joined #lisp
slyrus has joined #lisp
libertyprime has quit [Ping timeout: 272 seconds]
ym555_ has joined #lisp
ym555 has quit [Read error: Connection reset by peer]
karlosz_ has quit [Quit: karlosz_]
frgo has quit [Read error: Connection reset by peer]
frgo has joined #lisp
gareppa has joined #lisp
varjag has joined #lisp
libertyprime has joined #lisp
karlosz_ has joined #lisp
orivej has joined #lisp
cosimone has joined #lisp
rumbler31 has joined #lisp
cosimone has quit [Client Quit]
varjag has quit [Ping timeout: 245 seconds]
dale has quit [Quit: My computer has gone to sleep]
cosimone has joined #lisp
rumbler31 has quit [Ping timeout: 248 seconds]
igemnace has joined #lisp
gareppa has quit [Quit: Leaving]
JohnMS_WORK has joined #lisp
<ebzzry>
Xach: the certificate for xach.com seems to have expired already
Ricchi has quit [Remote host closed the connection]
jprajzne has joined #lisp
<no-defun-allowed>
Can confirm, was looking for that page with the animated lambda magic on xach.com but the certificate broke
_whitelogger has joined #lisp
vlatkoB has joined #lisp
Inline has quit [Quit: Leaving]
ltriant has quit [Quit: leaving]
Necktwi has joined #lisp
scymtym has joined #lisp
slyrus__ has joined #lisp
ym555 has joined #lisp
slyrus1 has joined #lisp
ym555_ has quit [Ping timeout: 272 seconds]
slyrus_ has quit [Ping timeout: 245 seconds]
slyrus has quit [Ping timeout: 244 seconds]
cosimone has quit [Ping timeout: 252 seconds]
karlosz_ has quit [*.net *.split]
ggole has quit [*.net *.split]
krwq has quit [*.net *.split]
kajo has quit [*.net *.split]
zotan has quit [*.net *.split]
jackhill has quit [*.net *.split]
beaky has quit [*.net *.split]
leo_song has quit [*.net *.split]
drewc has quit [*.net *.split]
Trivulzianus has quit [*.net *.split]
sigjuice has quit [*.net *.split]
avicenna has quit [*.net *.split]
gko has quit [*.net *.split]
otwieracz has quit [*.net *.split]
spacedbat has quit [*.net *.split]
nirved has quit [*.net *.split]
chipolux has quit [*.net *.split]
vutral has quit [*.net *.split]
pjb has quit [*.net *.split]
nonlinear has quit [*.net *.split]
Gnuxie[m] has quit [*.net *.split]
djeis[m] has quit [*.net *.split]
no-defun-allowed has quit [*.net *.split]
banjiewen has quit [*.net *.split]
chewbranca has quit [*.net *.split]
drmeister has quit [*.net *.split]
housel has quit [*.net *.split]
KindOne has quit [*.net *.split]
remexre has quit [*.net *.split]
cosimone has joined #lisp
beaky has joined #lisp
martylake_ has quit [Ping timeout: 248 seconds]
notzmv has quit [Ping timeout: 272 seconds]
irdr has quit [Remote host closed the connection]
irdr has joined #lisp
martylake has joined #lisp
martylake has quit [Read error: Connection reset by peer]
martylake_ has joined #lisp
wigust has joined #lisp
DataLinkDroid has quit [Quit: DataLinkDroid]
DataLinkDroid has joined #lisp
wigust- has quit [Ping timeout: 245 seconds]
martylake_ has quit [Ping timeout: 264 seconds]
karlosz_ has joined #lisp
martylake has joined #lisp
Lord_of_Life has quit [Ping timeout: 245 seconds]
spacedbat has joined #lisp
nirved has joined #lisp
nonlinear has joined #lisp
chipolux has joined #lisp
banjiewen has joined #lisp
drmeister has joined #lisp
no-defun-allowed has joined #lisp
housel has joined #lisp
KindOne has joined #lisp
chewbranca has joined #lisp
remexre has joined #lisp
vutral has joined #lisp
Gnuxie[m] has joined #lisp
pjb has joined #lisp
djeis[m] has joined #lisp
ggole has joined #lisp
krwq has joined #lisp
kajo has joined #lisp
sigjuice has joined #lisp
zotan has joined #lisp
avicenna has joined #lisp
leo_song has joined #lisp
otwieracz has joined #lisp
gko has joined #lisp
drewc has joined #lisp
Trivulzianus has joined #lisp
jackhill has joined #lisp
Lord_of_Life has joined #lisp
borodust has quit [Ping timeout: 248 seconds]
Petit_Dejeuner has quit [Ping timeout: 272 seconds]
martylake has quit [Ping timeout: 258 seconds]
v88m has quit [Ping timeout: 272 seconds]
martylake has joined #lisp
v88m has joined #lisp
stepnem has joined #lisp
myrkraverk has quit [Ping timeout: 246 seconds]
martylake has quit [Ping timeout: 252 seconds]
martylake has joined #lisp
schweers has joined #lisp
actuallybatman has joined #lisp
SaganMan has joined #lisp
elderK has joined #lisp
SaganMan has quit [Ping timeout: 272 seconds]
rumbler31 has joined #lisp
ym555 has quit [Ping timeout: 245 seconds]
ym555 has joined #lisp
rumbler31 has quit [Ping timeout: 245 seconds]
karlosz_ has quit [Quit: karlosz_]
nullman has quit [Remote host closed the connection]
nullman has joined #lisp
martylake_ has joined #lisp
hhdave has joined #lisp
ym555_ has joined #lisp
martylake has quit [Ping timeout: 250 seconds]
ym555 has quit [Ping timeout: 268 seconds]
heisig has joined #lisp
martylake_ has quit [Ping timeout: 248 seconds]
martylake has joined #lisp
libertyprime has quit [Read error: Connection reset by peer]
ym555 has joined #lisp
spacedbat has quit [*.net *.split]
nirved has quit [*.net *.split]
chipolux has quit [*.net *.split]
nonlinear has quit [*.net *.split]
pjb has quit [*.net *.split]
vutral has quit [*.net *.split]
Gnuxie[m] has quit [*.net *.split]
djeis[m] has quit [*.net *.split]
no-defun-allowed has quit [*.net *.split]
banjiewen has quit [*.net *.split]
drmeister has quit [*.net *.split]
chewbranca has quit [*.net *.split]
housel has quit [*.net *.split]
remexre has quit [*.net *.split]
KindOne has quit [*.net *.split]
ggole has quit [*.net *.split]
krwq has quit [*.net *.split]
kajo has quit [*.net *.split]
zotan has quit [*.net *.split]
leo_song has quit [*.net *.split]
jackhill has quit [*.net *.split]
drewc has quit [*.net *.split]
Trivulzianus has quit [*.net *.split]
sigjuice has quit [*.net *.split]
avicenna has quit [*.net *.split]
gko has quit [*.net *.split]
otwieracz has quit [*.net *.split]
ym555_ has quit [Ping timeout: 277 seconds]
gxt has quit [Ping timeout: 260 seconds]
irdr has quit [Remote host closed the connection]
irdr has joined #lisp
leo_song has joined #lisp
sigjuice has joined #lisp
otwieracz has joined #lisp
gko has joined #lisp
zotan has joined #lisp
nonlinear has joined #lisp
chipolux has joined #lisp
remexre has joined #lisp
drmeister has joined #lisp
nirved has joined #lisp
uplime^ has joined #lisp
banjiewen has joined #lisp
chewbranca has joined #lisp
kajo has joined #lisp
pjb has joined #lisp
vutral has joined #lisp
m00natic has joined #lisp
PuercoPop has quit [Ping timeout: 272 seconds]
ggole has joined #lisp
ym555 has quit [Quit: leaving...]
Lycurgus has joined #lisp
no-defun-allowed has joined #lisp
jackhill has joined #lisp
amerlyq has joined #lisp
manualcrank has quit [Quit: WeeChat 1.9.1]
longshi has joined #lisp
martylake has quit [Read error: Connection reset by peer]
martylake has joined #lisp
uplime^ is now known as KindOne
random-nick has joined #lisp
CloseToZero has joined #lisp
CloseToZero has quit [Ping timeout: 250 seconds]
CloseToZero has joined #lisp
libertyprime has joined #lisp
actuallybatman has quit [Ping timeout: 245 seconds]
CloseToZero has quit [Ping timeout: 248 seconds]
rumbler31 has joined #lisp
dddddd has joined #lisp
rumbler31 has quit [Ping timeout: 244 seconds]
jmarciano has joined #lisp
jeosol has quit [Ping timeout: 260 seconds]
<jmarciano>
hello, I am looking for one lisp programming language, little peculiar, scientific, with 3D and OpenGL, but I forgot the name. It is not common lisp implementation. It was available on GNU/Linux distributions before years, now stopped to appear in package lists. Can somebody help with clues?
<jdz>
I've seen xlisp, but not sure has/had 3D and OpenGL.
<jmarciano>
ah, but not that one
<jdz>
Maybe xlisp-stat?
clintm has quit [Remote host closed the connection]
<Lycurgus>
well this is a common lisp channel, try ##lisp
<beach>
Am I reading it correctly that for symbols, the value must be independent of if the image, so that the address (assuming the symbols doesn't move) can not be used as a value in this case?
<beach>
s/if//
steiner has joined #lisp
<Bike>
i think so. it says 'similar' too, and that's a between-images thing.
<beach>
OK, so then I can see only two solutions. Either store a hash value with the symbol, or compute it from its name, and perhaps the name of its package too.
<beach>
Right?
<Bike>
think so.
<Bike>
looks like sbcl symbols have a symbol-hash stored.
<beach>
OK, thanks. Next question...
<beach>
EQ hash tables don't have that restriction, right, i.e., the hash value could be based on the address?
<borodust>
Xach: ah, well, i see
sarna has joined #lisp
<borodust>
that would be not quite right
<shka__>
beach: yes
<beach>
In fact, the Common Lisp HyperSpec page for sxhash says that sxhash in intended for use where the pre-defined abstractions are insufficient.
<beach>
So for the pre-defined one, some other way of computing the hash value can be used.
<Bike>
yeah, sxhash doesn't have to be used by the hash table implementation, and i don't think the requirements match any of them anyway
<shka__>
i think that standard as not well developed around the hash tables
<shka__>
in fact, you can implement hash-table as a linear-scan-in-list
<shka__>
and don't use hash function at all
<beach>
shka__: And that is what I pretty much have to do for the purpose of bootstrapping.
<shka__>
will it hurt?
<beach>
... since the hash functions of the host and those of SICL are very likely not the same.
<beach>
No. Once I have an executable, I can load code that transforms the hash tables.
<shka__>
so no problem i guess
<shka__>
keep it simple
<beach>
Possibly some performance problem during bootstrapping, that's all.
<shka__>
if such problems would occur, given that you are working with just symbols, alternative solution can be engineered
<shka__>
for instance, using trie for package name and symbol name
<beach>
There are such possibilities, sure.
<shka__>
so it does not sounds like a huge problem at all
<beach>
Right. I just need to know what I can do and at which point in time.
<shka__>
oh, i can imagine how difficult that is
<beach>
Just tedious. Not very hard.
milanj has joined #lisp
gravicappa has quit [Ping timeout: 245 seconds]
sjl_ has joined #lisp
smazga has joined #lisp
gravicappa has joined #lisp
EvW1 has quit [Ping timeout: 250 seconds]
<Xach>
borodust: no? what would you expect?
<Xach>
each submodule with its own separate project?
jxy has quit [Quit: leaving]
jxy has joined #lisp
Oladon_work has joined #lisp
v88m has joined #lisp
tsandstr has quit [Ping timeout: 248 seconds]
tsandstr has joined #lisp
rumbler31 has quit [Remote host closed the connection]
heisig has quit [Quit: Leaving]
szmer has joined #lisp
oni-on-ion has joined #lisp
<ebrasca>
Xach: Does Quicklisp have some descentralization?
rippa has joined #lisp
jprajzne has quit [Quit: Leaving.]
tsandstr has quit [Ping timeout: 276 seconds]
mindCrime_ has joined #lisp
kajo has joined #lisp
mindCrime has quit [Ping timeout: 244 seconds]
sarna has quit [Ping timeout: 272 seconds]
andrei-n has joined #lisp
<Xach>
ebrasca: in what sense?
steiner has quit [Ping timeout: 268 seconds]
steiner has joined #lisp
<Xach>
The software I use to make it is on github. The meta-metadata is on github. the archives are on s3/cloudfront.
<Xach>
The process could be improved so anyone could do what I do more easily, but someone with determination could do it now.
cosimone has quit [Quit: WeeChat 2.4]
<ebrasca>
Xach: For now I am working on Mezzano network ( Like usocket ).
cosimone has joined #lisp
cosimone has quit [Client Quit]
longshi has quit [Ping timeout: 245 seconds]
shka_ has joined #lisp
<sebboh>
In what year was the first asdf released?
<sebboh>
ebrasca: no, I think quicklisp has a busfactor of one. (Does anyone other than Xach even have commit access?)
q3d76 has quit [Remote host closed the connection]
mason has quit [Ping timeout: 245 seconds]
mason has joined #lisp
schweers has quit [Ping timeout: 264 seconds]
martylake has quit [Ping timeout: 268 seconds]
steiner has quit [Read error: Connection reset by peer]
anewuser has quit [Ping timeout: 244 seconds]
steiner has joined #lisp
gaze__ has quit [Ping timeout: 248 seconds]
lnostdal has quit [Ping timeout: 248 seconds]
frgo_ has joined #lisp
pfdietz21 has joined #lisp
frgo has quit [Ping timeout: 244 seconds]
pfdietz has quit [Ping timeout: 260 seconds]
frgo_ has quit [Ping timeout: 246 seconds]
pygmypuppy has joined #lisp
khisanth_ has quit [Ping timeout: 245 seconds]
Lycurgus has joined #lisp
m00natic has quit [Remote host closed the connection]
HDurer has quit [Remote host closed the connection]
khisanth_ has joined #lisp
Arcaelyx has joined #lisp
PuercoPop has joined #lisp
cosimone has joined #lisp
stacksmith has joined #lisp
<stacksmith>
Good morning
hhdave has quit [Quit: hhdave]
oni-on-ion has quit [Remote host closed the connection]
andrei-n has quit [Read error: Connection reset by peer]
andrei-n has joined #lisp
karayan has quit [Ping timeout: 276 seconds]
mindCrime__ has joined #lisp
karayan has joined #lisp
<beach>
Hello stacksmith.
Xach has quit [Ping timeout: 245 seconds]
<jackdaniel>
sebboh: you have to differentiate quicklisp.org and its dists and quicklisp as software you could use
Xach has joined #lisp
<jackdaniel>
using quicklisp as a software and rolling your own release to use with the client is fairly easy
<jackdaniel>
in fact there are a few projects which do that
<jackdaniel>
s/easy/attaintable/
rumbler31 has joined #lisp
mindCrime_ has quit [Ping timeout: 248 seconds]
actuallybatman has joined #lisp
lnostdal has joined #lisp
<stacksmith>
Is there a library that helps with the construction and introspection of deep lexical environments? (at compile time) I commonly run into a situation where macros are used at different levels and need to sometimes expand code that creates temporary objects, and other times are embedded deeply, with such objects already constructed by layers above...
rumbler31 has quit [Ping timeout: 244 seconds]
Lycurgus has quit [Quit: Exeunt]
<stacksmith>
I should say expansion time
orivej has quit [Ping timeout: 248 seconds]
<stacksmith>
I've been writing ad-hoc code each time, but it is clear that there is a pattern: a macro needs to, at expansion time, introspect on some object that has to do with some lexical bindings that will exist when the entire macroexpansion process is complete, and if some outer macro has taken care of creating some bindings already, not expand code that creates some bindings...
actuallybatman has left #lisp ["ERC (IRC client for Emacs 26.2)"]
<stacksmith>
Also, keep track of sequencing: some binding-establishing code should not expand until some _other_ bindings are taken care of, with proper error messages when the sequence is violated...
ym has joined #lisp
lnostdal has quit [Ping timeout: 244 seconds]
<stacksmith>
I need some kind of a dynamic metalayer for describing lexical environments at macroexpansion time.
<stacksmith>
Future lexical environments, that is.
<stacksmith>
Maybe I'm just crazy.
mathrick_ has joined #lisp
mathrick has quit [Ping timeout: 276 seconds]
gjvc has quit [Remote host closed the connection]
FreeBirdLjj has joined #lisp
ebrasca has quit [Read error: Connection reset by peer]
orivej has joined #lisp
ebrasca has joined #lisp
FreeBirdLjj has quit [Ping timeout: 246 seconds]
zhlyg has quit [Killed (hitchcock.freenode.net (Nickname regained by services))]
varjag has joined #lisp
Guest5703 has joined #lisp
ebrasca has quit [Read error: Connection reset by peer]
ebrasca has joined #lisp
manualcrank has joined #lisp
ebrasca has quit [Read error: Connection reset by peer]
carmack has joined #lisp
ebrasca has joined #lisp
hiroaki has joined #lisp
<sebboh>
jackdaniel: oh, so you can point quicklisp away from quicklisp.org? Well, that makes sense. I think it would also make sense to grow the dot org into a team of people. I mean, sorry, I mean if Xach goes that direction then I will say "of course they did, it makes sense" :)
<Xach>
sebboh: yes, you can create other sets of software. but you are also right about the bus factor of "core" quicklisp - things that are "official" in some sense.
<jackdaniel>
he does amazing and tedious work, I'm not sure if you'd find many capable people who would want to do it too
<Xach>
sebboh: there is a freedom to fork (or make independent releases) with a new name but only i can make changes to the thing called "quicklisp"
<Xach>
I'm not against sharing the work - I haven't reached out much.
<sebboh>
I think you've done the work well enough that people probably don't reach out to you much. The busfactor will change when there is a clear need. Maybe that is not yet.
<Xach>
sebboh: A few people have reached out over time but it's not always clear how to help.
lnostdal has joined #lisp
<Xach>
sebboh: The most time-consuming ongoing part of quicklisp is reporting failures
<stacksmith>
Xach: Many thanks. I am a big fan.
<dlowe>
Xach: designing a workflow for people to accomplish a task is like programming
<Xach>
2nd place is building new projects with foreign code requirements
<sebboh>
like you report them to upstream? Do any projects accept automated such reports? I feel like GNU coreutils has automated reporting of build failures; or semi-automated.
<sebboh>
it's based around a mailing list.
<sebboh>
and log files.
<stacksmith>
Designing a workflow is more like telling people which religion to follow.
<Xach>
sebboh: i do report them upstream. the reports are formulaic: "i tried to build X today on the latest SBCL and it failed with the error Y. Here's a link to the full build log."
<Xach>
I have tools to automatically post to github, but not all projects use github (and I think that's good)
Ricchi has joined #lisp
<sjl_>
Oh I didn't realize there was a per-author one too. That's nice.
<sebboh>
the rss feed, the link to the build logs, the github thingy, all good stuff. And still reporting build failures takes the most bandwidth? Are you *out* of bandwidth? i.e. is there something else you'd do more of if you did less reporting build failures?
<Xach>
I've been plagued by server failures and resets this year, so my next low-hanging fruit is automatically building everything early every day so a failure report is ready for me each morning. That setup was working for a few years but has been out of commission for months.
<Xach>
It's almost but not quite as simple as re-establishing a cron job
rutyiraw has quit [Ping timeout: 246 seconds]
rumbler31 has joined #lisp
<Xach>
sebboh: When I have free time I am more likely to play with a tractor than a computer right now. That slows progress also this summer.
<borodust>
Xach: yeah, like archive per .asdf project
<Xach>
borodust: ok, that is not what will happen and is not likely to happen
<borodust>
Xach: is submodule fetch recursive btw?
<borodust>
or is it only for toplevel submodules
<borodust>
(i'm using submodules for FFI project to fetch foreign code for generating wrappers)
<ck_>
does git support submodules in submodules? I'm pretty sure it once didn't
<borodust>
(meaning it would fetch foreign codebase no one would need, if fetch is recursive)
<Xach>
borodust: recursive
<borodust>
i see
<Xach>
ck_: it does
* jackdaniel
prefers subtrees over submodules, they are much less confusing (to him)
<Xach>
the viewpoint of quicklisp re submodules is that a repo is the sum of the "main" module and all submodules recursively.
orivej has quit [Ping timeout: 272 seconds]
<borodust>
fair
<borodust>
hmm
<Xach>
jackdaniel: how do they differ? (i can google this, but maybe you have a nice summary)
<borodust>
some of my projects in quicklisp main distro will get much buffier...
<Xach>
borodust: good to know. this was prompted by a specific project that pulled in some FFI code to build a minor part of its functionality, and the submodule inclusion was not very big. but i see that there are different models now too.
<ck_>
Xach: by the way, are you still running the thing behind @planet_lisp ?
<Xach>
I have avoided submodules for a long time because they seemed a little wierd to use and involved shell scripting to really work. but i was able to write a lisp script instead that did what I needed.
<Xach>
ck_: i do. that is a victim of server problems and resets.
<ck_>
I see. Thanks
<jackdaniel>
Xach: there was a nice tutorial on the web I've read but I can't seem to find it
<borodust>
Xach: could submodule fetch be an option to a project reference?
<jackdaniel>
in essence submodules are like git repositories in your git repository
<jackdaniel>
subtrees are more like all code is versioned in your repository with additional metadata assigned to directories so you can pull/push from different remotes as if said directories were separate repos
<Xach>
borodust: i think so - how would you want to express that to me?
<borodust>
".submodules_certainly_should_be_included_for_this_particular_project" or smth ;p
<borodust>
wait
<borodust>
we are talking about including project into quicklisp dist, right?
<Xach>
borodust: yes
<Xach>
borodust: specifically the process that makes an archive tarball from the upstream repo
<borodust>
i was a bit confused about quicklisp/nosubmodules
<Xach>
borodust: e.g. bodge-nuklear/quicklisp/nosubmodules file now exists
<Xach>
(or .quicklisp? but i don't always like dotfiles because of windows)
<borodust>
i was thinking more about fetch metadata for quicklisp
<Xach>
Right, that is too late
<borodust>
oh
<borodust>
opt-in is out of the question too?
<borodust>
like if i want/need quicklisp to fetch submodules for the project to be loadable i would add certain marker
<dlowe>
Xach: are you using git clone --recurse-submodules?
<Xach>
dlowe: no, checkout + git submodule update --init --recursive
<Xach>
borodust: not necessarily
varjag has quit [Ping timeout: 244 seconds]
<Xach>
Right now only one project breaks, and only gently, if i omit submodules
<dlowe>
I think using --recurse-submodules works on all the necessary cases
Folkol has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
<Xach>
dlowe: I don't believe that works for archive
random-nick has quit [Read error: Connection reset by peer]
<dlowe>
hm, no, you are correct.
sauvin has quit [Read error: Connection reset by peer]
tsandstr has joined #lisp
irdr has quit [Ping timeout: 245 seconds]
bendersteed has joined #lisp
amerlyq has quit [Quit: amerlyq]
rutyiraw has joined #lisp
irdr has joined #lisp
pankajgodbole has quit [Ping timeout: 245 seconds]
Josh_2 has joined #lisp
rippa has quit [Ping timeout: 245 seconds]
mnarix has joined #lisp
rutyiraw has quit [Read error: Connection reset by peer]
random-nick has joined #lisp
cosimone has quit [Quit: WeeChat 2.4]
rippa has joined #lisp
warweasle has quit [Quit: Later]
milanj has quit [Quit: This computer has gone to sleep]
t58_ has joined #lisp
t58 has quit [Ping timeout: 248 seconds]
lawfullazy has joined #lisp
Lord_of_Life_ has joined #lisp
djeis[m] has joined #lisp
bendersteed has quit [Ping timeout: 246 seconds]
Lord_of_Life has quit [Ping timeout: 245 seconds]
Lord_of_Life_ is now known as Lord_of_Life
tsandstr has quit [Ping timeout: 248 seconds]
tsandstr has joined #lisp
Tordek has quit [Ping timeout: 268 seconds]
gravicappa has quit [Ping timeout: 245 seconds]
t58_ is now known as t58
Tordek has joined #lisp
Posterdati has quit [Ping timeout: 272 seconds]
Tordek has quit [Ping timeout: 258 seconds]
tsandstr has quit [Remote host closed the connection]
tsandstr has joined #lisp
rippa has quit [Quit: {#`%${%&`+'${`%&NO CARRIER]
srji has joined #lisp
ggole has quit [Quit: Leaving]
Lydia_K has joined #lisp
andrei-n has quit [Remote host closed the connection]
mnarix has quit [Quit: Leaving]
mnarix has joined #lisp
Posterdati has joined #lisp
cosimone has joined #lisp
tsandstr has quit [Read error: Connection reset by peer]
tsandstr has joined #lisp
Tordek has joined #lisp
_whitelogger has joined #lisp
lawfullazy has quit [Ping timeout: 258 seconds]
vlatkoB has quit [Remote host closed the connection]
sjl_ has quit [Ping timeout: 248 seconds]
housel has joined #lisp
<voldial>
I keep running into py problems that make me feel like I am using the wrong language. For example, right now, I'm adding items to a set. The items are type bytes. I want to add constraints on the set, but in py a set is a base type, it's not some class I can just reach into and modify by adding a checkconstraint. The standard way is to instead defince some "class SpecialSet" and then either overload the various
<voldial>
__operation__() methods to preserve adding sets with + or intersecting with |, and for a pile of reasons, that's usually not a good idea, so SpecialSet gets it's own .add() and .intersect() instead, and you just need to remember to use those. It's a mess. This is not a problem in a real functional language... right?
<Josh_2>
the what now?
<Josh_2>
are you using common lisp?
<voldial>
Josh_2: me? no, I'm using python. too much.
<pjb>
voldial: notice that you cannot define subclasses of built-in classes in CL either.
<Josh_2>
big yikes
<voldial>
pjb: bummer. that's what I was trying to ask. what am I missing?
<pjb>
(defclass i (integer) (color :initarg :color :accessor i-color)) #| ERROR: The class #<built-in-class integer> was specified as a super-class of the class #<standard-class i>; but the meta-classes #<standard-class built-in-class> and #<standard-class standard-class> are incompatible. |#
<pjb>
voldial: now, there's no SET class in CL, so you're free to define your own ;-)
<pjb>
But you can do the same in python.
mindCrime__ has quit [Ping timeout: 245 seconds]
<pjb>
That said, I guess that using the
snai1 has joined #lisp
<pjb>
MOP, you could do something.
<pjb>
(like, definining a compatible meta-class).
lucasb has quit [Quit: Connection closed for inactivity]
<voldial>
thanks. I'll read up on the metaobject protocol. very lisp noob.
<snai1>
hi, i'm learning Emacs Lisp can i make some question about?
<Bike>
having your own metaclass wouldn't let you make your own kind of integer
milanj has joined #lisp
<Bike>
snai1: this channel is for common lisp. maybe try #emacs
Bike has quit [Quit: Bike]
<snai1>
yes i guessed thanks
snai1 has quit [Quit: ERC (IRC client for Emacs 26.2)]
snai1 has joined #lisp
hiroaki has quit [Ping timeout: 245 seconds]
pygmypuppy has quit [Ping timeout: 246 seconds]
pygmypuppy has joined #lisp
<pjb>
voldial: in CL you would just start by defininig your own add-byte-to-set function with the checks, and use that instead of pushnew.
<snai1>
I'm sorry i've just thinked that my problem can be not too much about Emacs Lisp but about Lisp in general. I have to write a function that takes one argument and return an other function that takes an other argument. The problem is that i cant evaluate the second function.
<pjb>
voldial: already since there are only 256 bytes, you could use a bit vector to represent your sets of bytes: (let ((set (make-array 256 :element-type 'bit :initial-element 0))) (setf (aref set byte) 1)) is how you would add a byte.
orivej_ has joined #lisp
orivej has quit [Ping timeout: 258 seconds]
<pjb>
voldial: but of course, there are a lot of ways to represent sets of bytes, this is why you would define a functional abstractioN: (make-set-of-byte) (include-byte-to-set byte set) (exclude-byte-from-set byte set) (set-contains-byte-p set byte) etc.
shka_ has quit [Ping timeout: 268 seconds]
snai1 has left #lisp ["ERC (IRC client for Emacs 26.2)"]
stacksmith has quit [Ping timeout: 245 seconds]
<voldial>
interesting. thanks for the example. my brain isnt wired for lisp yet, takes a bit to unpack;)
snai1 has joined #lisp
cosimone has quit [Quit: WeeChat 2.4]
snai1 has quit [Quit: ERC (IRC client for Emacs 26.2)]
<voldial>
pjb: willdo. I found a yt series "little bits of lisp" that's rather entertaining too.
lawfullazy has joined #lisp
bugrum has quit [Ping timeout: 258 seconds]
longshi has joined #lisp
bugrum has joined #lisp
random-nick has quit [Read error: Connection reset by peer]
lawfullazy has quit [Remote host closed the connection]
lawfullazy has joined #lisp
<sebboh>
When was asdf released? If there was some previous thing also called asdf which was very much related, when was it first released?
orivej_ has quit [Ping timeout: 272 seconds]
rumbler31 has joined #lisp
rumbler31 has quit [Ping timeout: 244 seconds]
<jackdaniel>
sebboh: asdf was released in 2001 (started by Daniel Barlow, then extended and maintained by others, most notably Fare Rideau and Robert Goldman who is the current maintainer
<jackdaniel>
before asdf there were some competing defsystem macros serving a similar purpose
<jackdaniel>
from portable ones there was mk-defsystem developed by Mark Kantrowitz
<jackdaniel>
(I may have mispelled his name, I'd have to check it)
<sebboh>
ok, that matches what I read on the web page. And the predecessor wasn't called asdf-- ah, ok.
<sebboh>
Question answered.
<Josh_2>
asdf was spawned from random combinations of open and closed parens floating around in the universe
scymtym has quit [Remote host closed the connection]
Bike has joined #lisp
scymtym has joined #lisp
<jackdaniel>
that would explain a lot regarding its design ,) good night
Oladon_work has quit [Ping timeout: 260 seconds]
<no-defun-allowed>
take care
<sebboh>
Josh_2: a Boltzmann brain. :P Well, probably a bit simpler/more likely.
<sebboh>
also good night.
milanj has quit [Read error: Connection reset by peer]
milanj has joined #lisp
orivej has joined #lisp
martylake has joined #lisp
sebboh has quit [Ping timeout: 244 seconds]
nonlinear has quit [Ping timeout: 268 seconds]
sadek has joined #lisp
tsandstr has quit [Ping timeout: 248 seconds]
martylake has quit [Ping timeout: 250 seconds]
tsandstr has joined #lisp
sadek has left #lisp [#lisp]
sadek has joined #lisp
EvW has joined #lisp
martylake has joined #lisp
martylake has quit [Read error: Connection reset by peer]
martylake has joined #lisp
cosimone has quit [Ping timeout: 276 seconds]
nonlinear has joined #lisp
martylake_ has joined #lisp
martylake_ has quit [Read error: Connection reset by peer]
milanj has quit [Read error: Connection reset by peer]