<marutk>
is it possible to static content and websockets from single server? I tried https://github.com/fukamachi/clack with Hunchentoot
terpri has joined #lisp
marutk has quit [Remote host closed the connection]
jameser has joined #lisp
smurfrobot has joined #lisp
wxie has quit [Remote host closed the connection]
smurfrobot has quit [Remote host closed the connection]
mlius has quit [Ping timeout: 256 seconds]
kajo has quit [Read error: Connection reset by peer]
kajo has joined #lisp
peterhil has quit [Ping timeout: 256 seconds]
belowen has joined #lisp
iambrj has joined #lisp
peterhil has joined #lisp
Karl_Dscc has joined #lisp
safe has joined #lisp
varjag has quit [Quit: ERC (IRC client for Emacs 25.2.1)]
EvW1 has quit [Ping timeout: 265 seconds]
<resttime>
The answer to marutk's question is probably yes I think. Create a middleware which redirects a URL to static content and another middleware to the websockets
hexfive has joined #lisp
pjb has quit [Quit: ERC (IRC client for Emacs 25.1.1)]
aindilis has joined #lisp
zaquest has joined #lisp
Karl_Dscc has quit [Ping timeout: 248 seconds]
Tobbi has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
smurfrobot has joined #lisp
smurfrobot has quit [Ping timeout: 260 seconds]
itruslove has joined #lisp
kajokajo has joined #lisp
giraffe has joined #lisp
kajo has quit [Ping timeout: 240 seconds]
d4ryus1 has joined #lisp
notzmv has joined #lisp
d4ryus has quit [Ping timeout: 248 seconds]
notzmv is now known as zmv
zmv is now known as notzmv
notzmv is now known as `420
dddddd has quit [Remote host closed the connection]
scottj has joined #lisp
rumbler31 has joined #lisp
moei has quit [Quit: Leaving...]
kajokajokajo has joined #lisp
jameser has quit [Remote host closed the connection]
jameser has joined #lisp
kajokajo has quit [Ping timeout: 265 seconds]
iambrj has quit [Ping timeout: 248 seconds]
python476 has quit [Ping timeout: 252 seconds]
xrash has joined #lisp
Arcaelyx has joined #lisp
<asarch>
SLIME, stable or the bleeding edge version?
tonton has quit [Ping timeout: 264 seconds]
tonton has joined #lisp
dieggsy has joined #lisp
epony has joined #lisp
mhd has joined #lisp
epony has quit [Max SendQ exceeded]
epony has joined #lisp
lagagain has joined #lisp
<Xach_>
asarch: there is now only stable
<Xach_>
i know this to be true
mhd has quit [Ping timeout: 248 seconds]
kajokajokajo has quit [Ping timeout: 248 seconds]
<beach>
Good morning everyone!
LocaMocha is now known as Sauvin
<asarch>
Thank you Xach_
<asarch>
Thank you very much :-)
<asarch>
I found this at MELPA's: To use the stable package repository instead of the default “bleeding-edge” repository, use this instead of "melpa":
Arcaelyx has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<u0_a166>
i believe there are alternatives to the SECD abstract machine, and needs extentions to be practical, but some interpreters based on it
<resttime>
Neat, I'll definitely check it out. This stuff is pretty much all new to me
hexfive has quit [Quit: WeeChat 1.9.1]
Jesin has quit [Quit: Leaving]
cromachina has quit [Read error: Connection reset by peer]
schoppenhauer has quit [Ping timeout: 264 seconds]
schoppenhauer has joined #lisp
pythosnek has joined #lisp
orivej has joined #lisp
t0adst00l has joined #lisp
turkja has joined #lisp
rippa has joined #lisp
t0adst00l has quit [Quit: Leaving]
heurist`_ is now known as heurist
u0_a166 has quit [Quit: WeeChat 2.0]
wigust has joined #lisp
Jesin has joined #lisp
belowen has quit [Ping timeout: 252 seconds]
mlius has joined #lisp
prometheus_falli has joined #lisp
<oleo>
morning
oleo has quit [Quit: Leaving]
mlius has quit [Ping timeout: 256 seconds]
gravicappa has joined #lisp
smurfrobot has joined #lisp
smurfrobot has quit [Ping timeout: 265 seconds]
oleo has joined #lisp
<beach>
Hello oleo.
<beach>
minion: memo for KZiemian: One item for CLUS. In the description of the functions for setting macro character or dispatch macro character, the only place to figure out the signature of the function seems to be in the example. It wouldn't hurt to state that signature explicitly.
<minion>
Remembered. I'll tell KZiemian when he/she/it next speaks.
alpert has joined #lisp
asarch has quit [Ping timeout: 256 seconds]
prometheus_falli has quit [Quit: Leaving]
prometheus_falli has joined #lisp
sz0 has joined #lisp
prometheus_falli has quit [Remote host closed the connection]
prometheus_falli has joined #lisp
Devon has quit [Ping timeout: 268 seconds]
Devon has joined #lisp
Devon has quit [Ping timeout: 268 seconds]
prometheus_falli has quit [Quit: Leaving]
prometheus_falli has joined #lisp
oleo has quit [Quit: Leaving]
smurfrobot has joined #lisp
smurfrobot has quit [Ping timeout: 260 seconds]
<Shinmera>
resttime: Doesn't Clisp implement a bytecode interpreter? Though I don't think t hat'll qualify as simple.
mhd has joined #lisp
* loke
did some benchmarks of cl-js some time ago (last year?). For microbenchmarks, it was faster than the latest version (at the time) of V8
<Shinmera>
aeth: The abstractions present in Maiden are sufficient. Your suggested ones don't even make sense anyway.
dddddd has joined #lisp
turkja has quit [Ping timeout: 252 seconds]
oleo has joined #lisp
mishoo_ has joined #lisp
prometheus_falli has quit [Quit: Leaving]
prometheus_falli has joined #lisp
Amplituhedron has joined #lisp
mlius has joined #lisp
mlius has quit [Ping timeout: 252 seconds]
Bike has quit [Quit: Page closed]
safe has quit [Read error: Connection reset by peer]
Devon has joined #lisp
Devon has quit [Ping timeout: 248 seconds]
smurfrobot has joined #lisp
aindilis` has quit [Remote host closed the connection]
red-dot has quit [Remote host closed the connection]
smurfrobot has quit [Ping timeout: 272 seconds]
iambrj has joined #lisp
mishoo_ has quit [Ping timeout: 264 seconds]
rumbler31 has joined #lisp
smurfrobot has joined #lisp
rumbler31 has quit [Ping timeout: 268 seconds]
smurfrobot has quit [Ping timeout: 264 seconds]
smurfrobot has joined #lisp
pythosnek has left #lisp ["ERC (IRC client for Emacs 25.3.1)"]
smurfrobot has quit [Ping timeout: 248 seconds]
Amplituhedron has quit [Ping timeout: 268 seconds]
mhd has quit [Ping timeout: 248 seconds]
resttime has quit [Quit: Leaving]
t0adst00l has joined #lisp
_cosmonaut_ has joined #lisp
t0adst00l has quit [Remote host closed the connection]
t0adst00l has joined #lisp
prometheus_falli has quit [Quit: Leaving]
t0adst00l has quit [Remote host closed the connection]
<chimae599>
▄▄▄▄▄▄▄▄▄▄▄ DO YOU WANT TO KEEP YOUR MAN SATISFIED DURING THE CHRISTMAS BREAK?? EL IS GIVING ANAL SEX TIPS IN ##FEMINISM RIGHT NOW DONT MISS IT pkohp: j0nd1e` beach rmr jamtho_ QualityAddict DeadTrickster Kaisyu jibanes giraffe t0adst00l gravicappa manualcrank alpert leo_song attila_lendvai tonton Jesin d4ryus1 yeticry terpri grumble epony lagagain oleo wigust iambrj jameser schoppenhauer
chimae599 has quit [Killed (Sigyn (Spam is off topic on freenode.))]
sz0 has quit [Quit: Connection closed for inactivity]
shka has joined #lisp
xrash has quit [Read error: Connection reset by peer]
Devon has joined #lisp
gravicappa has quit [Ping timeout: 256 seconds]
Devon has quit [Ping timeout: 268 seconds]
smurfrobot has joined #lisp
Th30n has joined #lisp
Tko has joined #lisp
mhd has joined #lisp
mlius has joined #lisp
smurfrobot has quit [Remote host closed the connection]
versatile has joined #lisp
versatile has quit [Client Quit]
j0nd1e`` has joined #lisp
j0nd1e` has quit [Ping timeout: 265 seconds]
smurfrobot has joined #lisp
smurfrobot has quit [Ping timeout: 265 seconds]
prometheus_falli has quit [Ping timeout: 272 seconds]
t0adst00l has quit [Ping timeout: 272 seconds]
makomo has joined #lisp
fikka has joined #lisp
fikka has quit [Ping timeout: 264 seconds]
Th30n has quit [Ping timeout: 240 seconds]
Th30n has joined #lisp
gravicappa has joined #lisp
attila_lendvai has quit [Read error: Connection reset by peer]
smurfrobot has joined #lisp
attila_lendvai has joined #lisp
<loke>
Man, that spamming session.
iambrj has quit [Ping timeout: 256 seconds]
iambrj has joined #lisp
makomo has quit [Ping timeout: 248 seconds]
<flip214>
Hi, using the snippet in http://lpaste.net/8485713744523952128 gives a pathname of #P"" on current SBCL. Is that as expected, or a recent change because of ASDF or so?
Joreji has joined #lisp
QualityAddict has quit [Remote host closed the connection]
makomo has joined #lisp
JuanDaugherty has quit [Quit: Ex Chat]
wxie has joined #lisp
raynold has quit [Quit: Connection closed for inactivity]
iambrj has quit [Ping timeout: 264 seconds]
damke has joined #lisp
smurfrobot has quit [Remote host closed the connection]
markong has joined #lisp
smurfrobot has joined #lisp
Karl_Dscc has joined #lisp
smurfrobot has quit [Ping timeout: 272 seconds]
dcluna has joined #lisp
dcluna_ has quit [Ping timeout: 248 seconds]
oleo has quit [Quit: Leaving]
rawste has joined #lisp
makomo has quit [Ping timeout: 240 seconds]
wxie has quit [Quit: Bye.]
oleo has joined #lisp
_cosmonaut_ has quit [Ping timeout: 260 seconds]
_cosmonaut_ has joined #lisp
rumbler31 has joined #lisp
smurfrobot has joined #lisp
rumbler31 has quit [Ping timeout: 248 seconds]
smurfrob_ has joined #lisp
smurfrobot has quit [Remote host closed the connection]
kajo has joined #lisp
rawste has quit [Ping timeout: 240 seconds]
smurfrob_ has quit [Remote host closed the connection]
kajo has quit [Read error: Connection reset by peer]
kajo has joined #lisp
Karl_Dscc has quit [Remote host closed the connection]
<Xach_>
flip214: hello
attila_lendvai has quit [Read error: Connection reset by peer]
<Xach_>
flip214: i usually use *compile-file-truename* there. i'm not sure it is the critical difference though.
<dim>
another ASDF/SBCL issue, around Postmodern again
<dim>
well simple-date-postgres-glue to be accurate
Tobbi has joined #lisp
fikka has joined #lisp
makomo has joined #lisp
Josh_2 has joined #lisp
fikka has quit [Ping timeout: 268 seconds]
Th30n has quit [Quit: ERC (IRC client for Emacs 25.2.1)]
smurfrobot has joined #lisp
Josh_2 has quit [Read error: Connection reset by peer]
makomo has quit [Ping timeout: 264 seconds]
makomo has joined #lisp
turkja has joined #lisp
sjl has joined #lisp
makomo has quit [Ping timeout: 264 seconds]
makomo has joined #lisp
<Xach_>
dim: fixed in next ql update
smurfrobot has quit [Remote host closed the connection]
EvW has joined #lisp
atgreen has joined #lisp
FreeBirdLjj has joined #lisp
smurfrobot has joined #lisp
FreeBirdLjj has quit [Ping timeout: 248 seconds]
smurfrobot has quit [Ping timeout: 248 seconds]
<beach>
What standard containers would be reasonable for an application programmer to invent a reader syntax for? Clearly lists, arrays, standard objects, and hash-tables are reasonable. Structs too, but I don't know how to do those portably. Anything else? I can't see anyone trying to invent a syntax for packages, for example.
attila_lendvai has quit [Read error: Connection reset by peer]
smurfrobot has joined #lisp
makomo has quit [Ping timeout: 264 seconds]
attila_lendvai has joined #lisp
smurfrobot has quit [Ping timeout: 240 seconds]
<Zhivago>
I think that javascript/json hit on the two most important cases -- maps of symbols to values, and contiguous maps of counts from zero to values, and Steele on the third, less important case of maps from arbitrary object to arbitrary object with his xapping syntax. It would be nice to have more consistent syntax using those forms for the various different implementations of mappings in CL.
<Zhivago>
Given that, everyone seems reasonably happy to build syntaxes for things like packages on top.
fikka has joined #lisp
<Zhivago>
But modern lisp isn't for reasonable people, so that line of reasoning probably won't work out too well.
iambrj has joined #lisp
pjb has joined #lisp
<beach>
So, I'm not planning to invent any input syntax. But I need to know what kinds of objects to traverse to look for instances of #n# after reading some expression. I came up with the list that I wrote, and I am wondering whether any other standard containers could apply. Most application-specific stuff would be in the form of standard-objects, and I can handle those.
jmercouris has joined #lisp
fikka has quit [Ping timeout: 260 seconds]
<jmercouris>
can anyone tell me about what it is like to run your own quicklisp server?
<Xach_>
jmercouris: sure! you put up a bunch of .tgz files and some text-based indexes.
<jmercouris>
before this turns into an x-y problem, I was thinking of offering a set of trusted systems/packages for my users via running a quicklisp server for nEXT
<Xach_>
jmercouris: borodust does that for his project via the "quickdist" software.
<jmercouris>
Xach_: So I just need to host these in some www on some web server and it just works?
<Xach_>
jmercouris: yes, the trick is to get the right contents of the text-based index files, which is unfortunately not documented.
<jmercouris>
Xach_: These index files have to be crafted by hand?
<Xach_>
jmercouris: no, but they have to have the correct contents.
<jmercouris>
Xach_: let me take a quick look at quickdist and see if I understand it
<jmercouris>
Is it possible to have two sources for quicklisp at the same time?
iambrj has quit [Ping timeout: 248 seconds]
kajo has quit [Ping timeout: 272 seconds]
<jmercouris>
Can someone install lets say something available on official quicklisp repository and then on that same image install something from another repository?
<Xach_>
jmercouris: you can have any number of "dists". the one i provide is named "quicklisp". you can add more than one as long as it is named something else.
<Zhivago>
beach: Predicting which kinds of objects might use that syntax seems fraught with exciting possibilities for the wailing and gnashing of teeth.
<jmercouris>
Xach_: Okay, very cool, this is probably the mechanism I will use then for my "package manager"
<Xach_>
jmercouris: when you load a project named "foo", and more than one dist provides it, there is a score system to decide which dist "wins"
<beach>
Zhivago: Well, I did turn the traversal into a generic function, so anyone who has specific needs can supply a method. I just want to provide as many cases as I can.
<Xach_>
it is automatically set to the most recently installed dist, but the score can be changed
<Xach_>
jmercouris: I think that is what borodust uses.
FreeBirdLjj has joined #lisp
<jmercouris>
Okay, very cool, thank you!
<jmercouris>
I'm glad to know that this is possible
<Xach_>
jmercouris: I use a program called "quicklisp-controller", but it is pretty specific to a number of manual processes I use, so I don't know if it would be good to use directly. it might be good for learning about how things work.
<jmercouris>
It's something I'll be doing in the coming months, I'm sure I'll have more questions, perhaps I can document the index files when I do that
<pjb>
beach: AFAIK, any kind of object can contain #n# in their serialization; standard are lists, vectors and structures (compound objects), but user objects may also have them. Sometimes, in surprising places.
<jmercouris>
Xach_: Thank you!
<pjb>
beach: eg. one could expect to find them in pathname (I don't think that it's specified that make-pathname copies strings for then components, even if it's probably what it does).
<beach>
pjb: Yes, but like I said, I handle most user object, because I handle STANDARD-OBJECTs. All I care about now are other standard containers.
<pjb>
hash-table don't have standard serialization format, so we're cool with them.
terpri has quit [Ping timeout: 248 seconds]
FreeBirdLjj has quit [Ping timeout: 240 seconds]
<beach>
But someone could very well write a reader macro for a hash table, so I include those.
<beach>
But pathname is a good hint. I'll look into that.
<pjb>
but pathnames are mostly opaque.
<beach>
If so, I wouldn't know how to traverse one.
<beach>
I don't have pathnames fresh in memory.
<pjb>
Well, there are the functions like pathname-directory pathname-name etc.
<shka>
generic function call in sbcl is less expensive then i would expect
fikka has joined #lisp
<shka>
I have protocol for writing aggregation functions in place
damke has joined #lisp
<beach>
And way less expensive if you are using my technique.
<shka>
it consist of a handful generic functions (like make-state) that are called all over again and it turns out whole thing is just around 2.5 times slower then simple reduce
<flip214>
well, bad luck ;) if I knew more about your constraints I might be able to offer better ideas
<shka>
i could explain basic problem
fikka has quit [Ping timeout: 256 seconds]
<shka>
it all started with dplyr library for R…
<shka>
;-)
ryanbw has quit [Remote host closed the connection]
<flip214>
thanks ;)
<shka>
no, really
<flip214>
"I CAN EXPLAIN!!!" sounds a bit panic-stricken, doesn't it??
<shka>
hehe, no
<shka>
anyway
<flip214>
shka: you can try, but I don't have much time left before having to fetch my loved one.
<beach>
shka: In fact, you could. Generic functions with the SICL-style dispatch can coexist with native standard generic functions. But it would take some work on your part. :)
<shka>
in dplyr you can call group-by, and call aggregation on the result to get aggregation for each group
wigust has quit [Ping timeout: 268 seconds]
<shka>
it also can translate sequence of calls into SQL
<shka>
but ofc, because of R is bullshit, whole thing is not extendable
<shka>
so if you want do something that was not already implemented, you are screwed
Joreji has quit [Quit: leaving]
<shka>
luckly, i managed to figure out how to do the same without insane memory usage
<pjb>
flip214: cl-fad must have something.
<shka>
beach: heh, i have a lot to do already
<beach>
shka: Welcome to the club.
<shka>
thank you, it is nice to be recognized by the Senior Member of The Club
<beach>
Moi?
<beach>
Nah!
<beach>
Is that possible?
Tobbi has quit [Remote host closed the connection]
<shka>
dunno, i thought you are right there with Fare
<beach>
Maybe. I never think of it. He is still "Em" to me ("younger sibling" in Vietnamese).
<flip214>
pjb: thanks, looking
Tobbi has joined #lisp
fikka has joined #lisp
<flip214>
pjb: ah, even WALK-DIRECTORY. excellent!
mlius has quit [Ping timeout: 260 seconds]
fikka has quit [Ping timeout: 248 seconds]
emerson has quit [Quit: Leaving]
fortitude has joined #lisp
wigust has joined #lisp
smurfrobot has joined #lisp
rumbler31 has quit [Remote host closed the connection]
iambrj has quit [Ping timeout: 240 seconds]
fikka has joined #lisp
iambrj has joined #lisp
smurfrobot has quit [Remote host closed the connection]
smurfrobot has joined #lisp
fikka has quit [Ping timeout: 240 seconds]
fikka has joined #lisp
fikka has quit [Ping timeout: 252 seconds]
iambrj has quit [Quit: WeeChat 1.9.1]
vaporatorius has joined #lisp
blgate has joined #lisp
vaporatorius has quit [Client Quit]
fikka has joined #lisp
gravicappa has quit [Remote host closed the connection]
smurfrobot has quit [Remote host closed the connection]
<dim>
uiop has also a good api for files/dirs
vaporatorius has joined #lisp
vaporatorius has quit [Remote host closed the connection]
Kaisyu has quit [Quit: Connection closed for inactivity]
fikka has quit [Ping timeout: 256 seconds]
<dim>
uiop:directory-files and uiop:collect-sub*directories e.g.
<dim>
I don't like that cl-fad API mostly don't deal with pathnames
<dim>
it makes it really wierd to use IME
<dim>
so I prefer and advice for uiop instead
dieggsy has joined #lisp
fikka has joined #lisp
blgate has quit [Ping timeout: 240 seconds]
EvW has quit [Ping timeout: 265 seconds]
fikka has quit [Ping timeout: 264 seconds]
makomo has joined #lisp
damke_ has joined #lisp
mnoonan has quit [Ping timeout: 256 seconds]
damke has quit [Ping timeout: 264 seconds]
Devon has joined #lisp
QualityAddict has joined #lisp
rippa has quit [Quit: {#`%${%&`+'${`%&NO CARRIER]
fikka has joined #lisp
blgate has joined #lisp
EvW has joined #lisp
fikka has quit [Ping timeout: 268 seconds]
Tordek has quit [Remote host closed the connection]
Tordek has joined #lisp
pierpa has joined #lisp
kupad has joined #lisp
fourier has quit [Ping timeout: 248 seconds]
mnoonan has joined #lisp
shka has quit [Ping timeout: 240 seconds]
fikka has joined #lisp
Karl_Dscc has joined #lisp
Karl_Dscc has quit [Remote host closed the connection]
rumbler31 has joined #lisp
<jasom>
uiop makes one decision I really don't like, and that's parsing ".." as :back vs :up in unix namestrings
peterpp has joined #lisp
fikka has quit [Ping timeout: 256 seconds]
makomo has quit [Ping timeout: 252 seconds]
blgate has quit [Ping timeout: 268 seconds]
rumbler31 has quit [Ping timeout: 264 seconds]
smurfrobot has joined #lisp
fikka has joined #lisp
attila_lendvai has quit [Read error: Connection reset by peer]
mishoo_ has joined #lisp
smurfrobot has quit [Ping timeout: 248 seconds]
fikka has quit [Ping timeout: 240 seconds]
mishoo has quit [Ping timeout: 248 seconds]
fikka has joined #lisp
lnostdal has joined #lisp
makomo has joined #lisp
fikka has quit [Ping timeout: 240 seconds]
attila_lendvai has joined #lisp
jmercouris has joined #lisp
fikka has joined #lisp
Xal has quit [Ping timeout: 268 seconds]
Xal has joined #lisp
fikka has quit [Ping timeout: 260 seconds]
<jmercouris>
jasom: why would it do that? do the authors provide any rationale?
lima4 has joined #lisp
alpert has quit [Remote host closed the connection]
alpert has joined #lisp
smurfrobot has joined #lisp
alpert has quit [Ping timeout: 256 seconds]
smurfrobot has quit [Ping timeout: 272 seconds]
rumbler31 has joined #lisp
fikka has joined #lisp
makomo has quit [Ping timeout: 260 seconds]
varjag has quit [Remote host closed the connection]
<jasom>
jmercouris: different implementations handle symlinks very differently, so uiop, to a certain degree, gives up on portably handling symlinks
smurfrobot has quit [Ping timeout: 265 seconds]
<jasom>
jmercouris: it would be a lot of code to get it right portably and ASDF doesn't rely on :back/:up working differently so it's out of scope to add that much complexity
<jasom>
this is by memory, I can find the actual discussion if you want the definitive answer
makomo has quit [Ping timeout: 240 seconds]
<jmercouris>
Nah, I don't need exact details, I'm not going to make a PR or anything, I was just curious if there was some good reasoning behind it
<jmercouris>
Thanks for the explanation
<jmercouris>
I wish that CL paths weren't so strange, I understand their design and historical significance, but maybe the implementation can be extended with a new way to make and handle paths
<jmercouris>
Of course we can always write a library to do this, so it doesn't truly matter, but yeah
fortitude has quit [Ping timeout: 240 seconds]
makomo has joined #lisp
aindilis has joined #lisp
safe has joined #lisp
mhd has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
mhd has joined #lisp
mhd has quit [Ping timeout: 240 seconds]
<aeth>
Shinmera: The advantage of a custom do-foo is that even though it looks like the "for foo in bar" idiom that can be duplicated manually or with loop, it can be made to be non-consing without changing the API because it's a macro. Basically, foo could be iterated over more efficiently. In this case a loop with "in (users ...)" is different than "(do-users (user (users ...)) ...)"
rgrau has quit [Ping timeout: 252 seconds]
<aeth>
Initially, they would probably be essentially identical, but because do-users is a custom macro that doesn't have to follow the loop semantics, do-users could be rewritten to essentially lie about calling users (which would cons a list) and instead iterate in a way that doesn't allocate a user list.
<aeth>
There might be no reason to work with a list at all.
aindilis has quit [Ping timeout: 248 seconds]
kajo has joined #lisp
<aeth>
For IRC, probably overkill. For other things, it could be very useful to have this extra layer of abstraction.
aindilis` has joined #lisp
<aeth>
I see no issue with essentially lying about calling an accessor if the API is identical and the macro can handle things more efficiently. setf sort of does this. The foo in the setter (setf (foo 42) 3) has the same API as the getter (foo 42) but doesn't have to. So setf macro is already doing this sort of lie, in the standard language.
<aeth>
Well, what I mean is: setf is a macro, and (setf (foo 42) 3) doesn't evaluate "(foo 42)" and #'(setf foo) doesn't even have to have the same API as #'foo
fortitude has joined #lisp
aindilis` has quit [Remote host closed the connection]
damke_ has quit [Ping timeout: 264 seconds]
damke_ has joined #lisp
sjl has quit [Ping timeout: 264 seconds]
mishoo_ has quit [Ping timeout: 248 seconds]
ryanbw has joined #lisp
kupad has quit [Ping timeout: 256 seconds]
kupad has joined #lisp
damke has joined #lisp
damke_ has quit [Ping timeout: 264 seconds]
kajokajo has joined #lisp
damke has quit [Ping timeout: 264 seconds]
wxie has joined #lisp
kajo has quit [Ping timeout: 248 seconds]
wxie has quit [Remote host closed the connection]
makomo has quit [Ping timeout: 240 seconds]
aindilis has joined #lisp
QualityAddict has quit [Remote host closed the connection]
Jesin has quit [Quit: Leaving]
Kaisyu has joined #lisp
<fiddlerwoaroof>
Recently, I've been experimenting with logical pathnames, and I find that they are a really nice way of dealing with paths
wigust has quit [Ping timeout: 240 seconds]
<fiddlerwoaroof>
For one thing, they allow for a fairly nice abstraction over the os/implementation-specific details of pathnames
<fiddlerwoaroof>
You just use + document a particular prefix for the files you need, and then the user sets up the translations to point the logical pathnames wherever they please
<drmeister>
fiddlerwoaroof: As much as people complain about the - I love logical pathnames.
<drmeister>
them
<fiddlerwoaroof>
And, they can specify translations very granularly: e.g. "MYAPP:config;**;*.*" can map one place and "MYAPP:data;**;*.*" can go somewhere else
<fiddlerwoaroof>
And, sbcl's implementation-specific part is pretty cool: you add a mapping for "SYS:SITE;**;*.*.*" to your .sbclrc and then it looks for files named <HOST>.translations in that directory to auto-load other hosts
Sigyn has quit [Quit: People always have such a hard time believing that robots could do bad things.]