orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #lisp
pjb has quit [Ping timeout: 272 seconds]
seoushi has quit [Ping timeout: 246 seconds]
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #lisp
ArthurSt1ong has joined #lisp
hapticFeels has joined #lisp
ArthurStrong has quit [Ping timeout: 258 seconds]
orivej_ has joined #lisp
orivej has quit [Quit: No Ping reply in 180 seconds.]
SGASAU has quit [Remote host closed the connection]
SGASAU has joined #lisp
<beach>
Good morning everyone!
pjb has joined #lisp
SGASAU has quit [Remote host closed the connection]
SGASAU has joined #lisp
thmprover has joined #lisp
lucasb has quit [Quit: Connection closed for inactivity]
orivej_ has quit [Quit: No Ping reply in 180 seconds.]
<ArthurSt1ong>
beach: good morning again
orivej has joined #lisp
SGASAU has quit [Remote host closed the connection]
SGASAU has joined #lisp
<beach>
Thank you! Today, I think I'll work on an abstract for a recorded talks that I have planned to give in the context of phoe's new initiative (the name of which I forget).
zulu-inuoe has quit [Read error: Connection reset by peer]
<ArthurSt1ong>
beach: good luck
<beach>
Thanks!
orivej_ has joined #lisp
orivej has quit [Ping timeout: 240 seconds]
Bike has quit [Quit: Lost terminal]
thmprover has quit [Ping timeout: 256 seconds]
pjb has quit [Ping timeout: 246 seconds]
orivej_ has quit [Quit: No Ping reply in 180 seconds.]
sz0 has quit [Quit: Connection closed for inactivity]
SGASAU has quit [Remote host closed the connection]
SGASAU has joined #lisp
rippa has quit [Quit: {#`%${%&`+'${`%&NO CARRIER]
mrcom has joined #lisp
pjb has joined #lisp
shifty has joined #lisp
narimiran has joined #lisp
notzmv has quit [Ping timeout: 258 seconds]
notzmv has joined #lisp
axion has quit [Ping timeout: 260 seconds]
orivej has quit [Read error: Connection reset by peer]
orivej has joined #lisp
sdumi has joined #lisp
ArthurSt1ong has quit [Read error: Connection reset by peer]
axion has joined #lisp
<splittist>
beach: 'sandboxing' is missing its 'd'
<beach>
Oops. Thanks.
<beach>
I didn't see it because 1. I am becoming more dyslexic over time, and 2. The spell checker doesn't recognize "sandboxing" anyway, so it was going to be flagged even with a `d'.
terpri_ has quit [Remote host closed the connection]
terpri_ has joined #lisp
<beach>
Fixed. Thanks.
orivej has quit [Ping timeout: 265 seconds]
terpri_ has quit [Remote host closed the connection]
orivej has joined #lisp
terpri_ has joined #lisp
pjb has quit [Ping timeout: 246 seconds]
ech has quit [Ping timeout: 256 seconds]
orivej has quit [Ping timeout: 264 seconds]
orivej_ has joined #lisp
Bourne has quit [Read error: Connection reset by peer]
orivej_ has quit [Ping timeout: 258 seconds]
Bourne has joined #lisp
sdumi has quit [Read error: Connection reset by peer]
sdumi has joined #lisp
orivej has joined #lisp
hyuke has quit [Ping timeout: 256 seconds]
wxie has joined #lisp
ech has joined #lisp
sdumi has quit [Ping timeout: 246 seconds]
libertyprime has quit [Ping timeout: 258 seconds]
nullman has quit [Ping timeout: 265 seconds]
midre has quit [Ping timeout: 256 seconds]
pjb has joined #lisp
midre has joined #lisp
shangul has joined #lisp
nullman has joined #lisp
shka_ has joined #lisp
midre has quit [Ping timeout: 260 seconds]
midre has joined #lisp
orivej has quit [Ping timeout: 246 seconds]
wnh has joined #lisp
Lycurgus has joined #lisp
midre has quit [Ping timeout: 240 seconds]
midre has joined #lisp
gravicappa has joined #lisp
heisig has joined #lisp
pjb has quit [Ping timeout: 246 seconds]
JohnMS_WORK has joined #lisp
Lycurgus has quit [Remote host closed the connection]
wnh has quit [Quit: wnh]
sdumi has joined #lisp
HDurer has quit [Remote host closed the connection]
pjb has joined #lisp
sdumi has quit [Ping timeout: 272 seconds]
sdumi has joined #lisp
nikkal has joined #lisp
jw4 has quit [Read error: Connection reset by peer]
shifty has quit [Ping timeout: 246 seconds]
jw4 has joined #lisp
Archenoth has joined #lisp
scymtym has quit [Ping timeout: 256 seconds]
bilegeek has joined #lisp
HDurer has joined #lisp
sunset_NOVA has joined #lisp
borei has quit [Ping timeout: 260 seconds]
whiteline has quit [Ping timeout: 258 seconds]
<phoe>
beach: online Lisp meetings is the name
<beach>
Thanks! Did you see the summary?
<phoe>
I didn't really think of anything more fancy since I don't think there needs to be anything more fancy
<phoe>
About to read it
<beach>
OK.
jprajzne1 has joined #lisp
<phoe>
OK, read it - I like it
<beach>
Great!
<beach>
Next, I'll work on recording the audio. The slides are don already.
<beach>
It is a short presentation.
<beach>
I thought you should know.
<phoe>
No problem with that
<beach>
I'll submit it to you beforehand.
emys has joined #lisp
scymtym has joined #lisp
terpri_ has quit [Remote host closed the connection]
terpri_ has joined #lisp
wxie has quit [Ping timeout: 260 seconds]
<MichaelRaskin>
beach: sounds interesting and useful! and it looks like your work on SICL bootstrapping is now close to making FCGE's available to people who are not going to write implementation internals.
dale has quit [Quit: My computer has gone to sleep]
emys has quit [Ping timeout: 260 seconds]
<beach>
You may be right.
<beach>
I just realized that a good existing implementation is not very far from using something like first-class global environments.
<beach>
I mean, it just keep the classes, the (SETF <mumble>) functions, the global value cells, the MAKE-INSTANCE, etc. Somewhere.
<beach>
Probably in hash tables in special variables.
<beach>
So if they would just do the same for functions named by symbols, and global value cells, then they are half way there.
terpri_ has quit [Remote host closed the connection]
<phoe>
> Probably in hash tables in special variables.
<phoe>
that's a "probably", yes
terpri_ has joined #lisp
<MichaelRaskin>
I would be wary about that effect that «getting 90% right there takes 90% of effort… and so does the second 90%»
<beach>
MichaelRaskin: Can you be more specific about your caution?
<beach>
phoe: Are you saying that it is definitely the case?
<MichaelRaskin>
I would expect a bit of special-case code for properly inlining the standard and defined-to-be-unredefinable functions like + — and like open
<phoe>
beach: I'll check CCL, one second
wxie has joined #lisp
<beach>
MichaelRaskin: How is that related?
<beach>
... to first-class global environments, I mean?
<MichaelRaskin>
It is very likely to make support of FCGE's with _different_ #'cl:open maintenance-intensive
<beach>
phoe: Oh, wow!
<phoe>
package name, package predicate, value and function cells, symbol plist and flags that determine constantness, specialness, etc.., are all stored on the symbol
<beach>
MichaelRaskin: I mean, it seems like an issue that is orthogonal issue to me.
rogersm has joined #lisp
<MichaelRaskin>
Depends on the details of how this inlining is invoked
<beach>
pjb: I just don't see how first-class global environments would have any influence whatsoever on the applicability of that rule, nor on the inlining issues mentioned by MichaelRaskin.
whiteline has joined #lisp
<beach>
MichaelRaskin: It does, but now you are definitely talking about a subject unrelated to first-class global environments, right?
<beach>
I mean, I don't see how inlining has anything to do with first-class global environments.
<beach>
It could be done the same way either way.
<beach>
And I absolutely don't see the relation to CL:OPEN.
<pjb>
beach: it's just a general rules. But I would say that it's quite possible that it doesn't apply in your case, given the steady pace your working at.
<MichaelRaskin>
Well, if you talk about sandboxing, you need FCGE's with different #'cl:open
<beach>
pjb: I am sure it does apply, but I don't know how it is related to first-class global environments.
<MichaelRaskin>
And you need the inlining procedures for open to be different
terpri_ has quit [Remote host closed the connection]
<pjb>
beach: it would be related to the implementation of any new idea.
<MichaelRaskin>
For SICL, your inlining code is structured in a way that swapping out a single function should not be a problem
<beach>
MichaelRaskin: Why do I need a different cl:open in order to get sandboxing?
<MichaelRaskin>
beach: why would I want sandboxing if I cannot restrict #'cl:open??
<pjb>
There are different environments, requiring different sandboxing. The CL environment (functions, variables, etc), the host file system environment, the network environment etc.
<pjb>
If you have an socket:connect, you may also want to sandbox your network node (use a different DNS, use virtual hosts, etc).
<beach>
MichaelRaskin: That's a narrow definition of "sandboxing". I consider it essential for a Common Lisp implementation to be safe that appplication code can not alter the code generator of the compiler without some additional manipulation. That's already sandboxing to me.
<beach>
And it doesn't influence cl:open in any way I can see.
<pjb>
MichaelRaskin: with the tools provided by sicl, you can provide your own CL:OPEN to sandbox the file system.
<beach>
But, I am probably wrong, given that it seems to be the consensus here lately.
<MichaelRaskin>
Well, sure, overwriting the compiled code cache does count as «special manipulation»
<pjb>
This would be required to avoid breaking out of the CL sandbox by generating a patched executable in the file system, and relaunching…
<MichaelRaskin>
pjb: yes, I have already said a few lines above that SICL is structured in a way that makes this a non-issue
whiteline has quit [Ping timeout: 246 seconds]
mangul has joined #lisp
<MichaelRaskin>
Protecting the code generator by default is what SBCL can do (and I expect that it does) via package locks
emys has quit [Ping timeout: 260 seconds]
shangul has quit [Ping timeout: 256 seconds]
hdasch has joined #lisp
emys has joined #lisp
<beach>
phoe: Maybe I should not let you stream my presentation. I mean, first-class global environments are useless anyway, since the same effect can be had with package locks. Plus, it makes it necessary to change how inlining works, and it requires special definitions of CL:OPEN. Worse, it makes the 90/90 rule much worse.
<MichaelRaskin>
beach: it doesn't make 90/90 rule worse — I just said that 90/90 rule applies to implementing FCGE's in existing implementations without rewriting
pve has joined #lisp
<MichaelRaskin>
FCGE's in SICL, on the other hand, will be nice and useful and usable for defining a true sandbox for untrusted code with reasonable amount of work.
<beach>
This mode of discourse makes me tired, and I am not looking forward to answering remarks in real time when the presentation is streamed.
<beach>
Besides, I have more important work to do.
emys has quit [Ping timeout: 272 seconds]
bilegeek has quit [Quit: Leaving]
emys has joined #lisp
<MichaelRaskin>
FCGE's as you actually do them in SICL are definitely great and whoever tunes in given the abstract is likely to recognise that. Sorry for not delineating clearly that I only reacted to the claim about likely costs of implementing FCGE's in arbitrary implementations
<beach>
OK.
marusich has quit [Quit: Leaving]
<phoe>
my worry is about some compilers that open-code some functions regardless of their actual fdefinition, cl:car being the prime example
<phoe>
obviously it would be weird to modify cl:car in a FCGE, but the compiler is pretty much allowed to do the same with all CL symbols, given that they are immutable
<phoe>
that sounds like work required to make these implementations play nicely with FCGEs integrated into them
quazimodo has quit [Ping timeout: 246 seconds]
<beach>
Not SICL. CAR is defined like this: (defun car (x) (if (null x) x (if (consp x) (cleavir-primop:car x) (error ...)))) And that definition is taken from the first-class global environment.
<phoe>
nice
emys has quit [Ping timeout: 252 seconds]
<MichaelRaskin>
phoe: even open-coding unrelated to definition _could_ be structured in a way that you could easily reconfigure it given an FCGE … or ti could be structured otherwise
nikkal has quit [Ping timeout: 265 seconds]
<phoe>
and, at the same time, not required of other implementations
<MichaelRaskin>
But SICL just does things in a carefully-structured and well-designed way
<phoe>
both SBCL and CCL do (defun car (x) (car x))
<phoe>
and work because the compiler transforms the seemingly endless recursion into an open-coded operation
<beach>
phoe: And comparing CCL's definition of symbols, here is the one in SICL (yes, it is in Common Lisp): (defclass symbol () ((%name :initarg :name :reader symbol-name) (%package :initarg :package :reader symbol-package)))
<beach>
phoe: That looks like a very bad idea to me.
mangul has quit [Disconnected by services]
<phoe>
beach: bad idea unless you consider the standard, which implies that this is allowed; and that the implementations have used that for decades since portable bootstrapping is a very new idea and FCGEs is a very very new idea
<phoe>
the currently alive implementations simply assume that the global environment is a singleton and are structured fully around that idea
<beach>
I am not saying it is not allowed. Just that I think it is a bad way of structuring an implementation, first-class global environments or not.
emys has joined #lisp
<phoe>
okay, understood
<beach>
CAR is not primitive enough to be special-cased.
<beach>
cleavir-primop:car is.
andrei-n has joined #lisp
<beach>
I mean, if you special-case CAR, why not also FIND?
<phoe>
that's the idea
<phoe>
I bet some implementations do that
<beach>
I hope not.
ralt has joined #lisp
<beach>
They might inline it, or pick a special version of it.
<phoe>
I think that SBCL open-codes MAP and friends into more optimized variants
<beach>
But I don't think you have (defun find (...) (find ...))
<phoe>
oh, that's correct
<phoe>
CL:CAR is a compiler primitive in SBCL and CCL
<beach>
Yes, I understand, and I think it is a bad idea.
<beach>
[to repeat myself]
<phoe>
yep, understood
gravicappa has quit [Ping timeout: 246 seconds]
shangul has quit [Ping timeout: 258 seconds]
emys has quit [Ping timeout: 256 seconds]
MichaelRaskin has quit [Ping timeout: 256 seconds]
emys has joined #lisp
gaqwas has joined #lisp
emys has quit [Ping timeout: 256 seconds]
shangul has joined #lisp
gaqwas has quit [Remote host closed the connection]
<pjb>
beach: the problem is not the definition of CAR, but that of COMPILE. (COMPILE '(lambda (x) (car x))) may do the same as (compile '(lambda (x) (cleavir-primop:car x)))
emys has joined #lisp
<pjb>
phoe: this means that if you modify any function in CL you must also modify CL:COMPILE to ensure open-coding the new definition or no open-coding. Also the compiler-macros!
<pjb>
beach: the compiler may also not special case the CL functions, but just inline them all. Or have compiler-macros on them to special case them. etc.
shangul has quit [Ping timeout: 256 seconds]
<pjb>
Or, said otherwise, it's not because an implementation such as sicl allows you to mutate operators in CL, that the CL rules about them don't apply.
<pjb>
ie. it's implementation defined, what happens if you fmutate CL:CAR and (COMPILE '(lambda (x) (car x)))…
emys has quit [Ping timeout: 260 seconds]
quazimodo has joined #lisp
_ has joined #lisp
_ is now known as Guest5332
emys has joined #lisp
<beach>
I hope I didn't imply any such thing. All I said was that CAR is not primitive enough to be considered a primitive.
luna_is_here has joined #lisp
<pjb>
in sicp.
noskill has quit [Ping timeout: 258 seconds]
quazimodo has quit [Ping timeout: 260 seconds]
<pjb>
other implementations could use a different definition for different safety levels, and therefore consider it a primitive (at least in (safety 0)).
<beach>
Plus, the Cleavir compiler can be customized, so it does not have cleavir-primop:car hardwired in it. It is just a default thing. Client code can have other definitions of CAR and define compiler methods to deal with whatever it defines CAR to be.
SGASAU has quit [Remote host closed the connection]
<pjb>
sicl clearly introduces a level of meta, discussions will be difficult…
<beach>
Other implementations can do whatever they like as far as I am concerned.
SGASAU has joined #lisp
ech has quit [Ping timeout: 265 seconds]
wxie has quit [Ping timeout: 265 seconds]
<beach>
Contrary to apparent appearances, I am not particularly interested in discussions like this.
shangul has joined #lisp
kaftejiman has joined #lisp
emys has quit [Ping timeout: 260 seconds]
noskill has joined #lisp
emys has joined #lisp
Guest5332 has quit [Ping timeout: 260 seconds]
gaqwas has joined #lisp
terpri_ has joined #lisp
emys has quit [Ping timeout: 260 seconds]
toorevitimirp has quit [Ping timeout: 260 seconds]
terpri_ has quit [Remote host closed the connection]
ljavorsk has joined #lisp
terpri_ has joined #lisp
Bourne has quit [Read error: Connection reset by peer]
whiteline has joined #lisp
terpri_ has quit [Remote host closed the connection]
anticrisis has quit [Read error: Connection reset by peer]
jesse1010 has joined #lisp
jprajzne_ has joined #lisp
ecraven has quit [Quit: bye]
Inoperable has quit [Quit: All your buffer are belong to us!]
ecraven- has joined #lisp
ecraven- is now known as ecraven
nopf has quit [Ping timeout: 265 seconds]
mrcom has quit [Ping timeout: 265 seconds]
jprajzne has quit [Ping timeout: 265 seconds]
davsebam1e has quit [Ping timeout: 265 seconds]
froggey has quit [Ping timeout: 265 seconds]
jason_m has quit [Ping timeout: 265 seconds]
jurov has quit [Ping timeout: 265 seconds]
jprajzne_ is now known as jprajzne
davsebamse has joined #lisp
froggey has joined #lisp
nopf has joined #lisp
jurov has joined #lisp
tutti has joined #lisp
In0perable has joined #lisp
wxie has joined #lisp
libertyprime has joined #lisp
freshpassport has joined #lisp
__ante__ has joined #lisp
ljavorsk_ has joined #lisp
ljavorsk has quit [Ping timeout: 256 seconds]
Bike has joined #lisp
Bourne has joined #lisp
noskill has quit [Ping timeout: 256 seconds]
<beach>
phoe: I am reading your code for the portable condition system. It looks quite good. Later, I might suggest some changes to it so as to make it easier to adapt to different clients. I would much prefer to use it as is, with customizations, as opposed to using a modified copy of it.
<beach>
One immediate thing I suggest would be to use disembodied documentation strings in a separate file, so as to allow client code to modify them more easily.
corpix has quit [Quit: corpix]
shifty has joined #lisp
libertyprime has quit [Ping timeout: 246 seconds]
<phoe>
beach: no problem! Thanks.
sdumi has quit [Read error: Connection reset by peer]
libertyprime has joined #lisp
<beach>
Disembodied documentation strings also make the code less "nosy" to the maintainer, who presumably already knows what these functions are supposed to do.
<beach>
"noisy", sorry.
sdumi has joined #lisp
<beach>
The code is surprisingly short. Very impressive.
<phoe>
beach: I'll need to make branches in this code anyway. One version, with inline documentation strings, will be intended for readers of my condition book; the other will be useful for integrating into e.g. SICL with docstrings moved aside and generic hooks into macroexpansions available - in the way you described where GFs can be called with custom clients.
<phoe>
That's required since we have two possible groups of audiences for the condition system: one who wants to understand how it works, and the other who wants to use it in real-life projects.
random-nick has joined #lisp
<beach>
I fully understand.
m00natic has joined #lisp
libertyprime has joined #lisp
nikkal has quit [Ping timeout: 260 seconds]
libertyprime has quit [Ping timeout: 265 seconds]
libertyprime has joined #lisp
RukiSama_ has joined #lisp
Kemwer_ has left #lisp [#lisp]
<phoe>
pjb: thanks for the news. easye: congrats!
Lord_of_Life_ has joined #lisp
RukiSama has quit [Ping timeout: 260 seconds]
rogersm has joined #lisp
Lord_of_Life has quit [Ping timeout: 256 seconds]
Lord_of_Life_ is now known as Lord_of_Life
EvW has joined #lisp
* easye
nods.
milanj has quit [Quit: This computer has gone to sleep]
liberliver1 has joined #lisp
liberliver has quit [Ping timeout: 240 seconds]
liberliver1 is now known as liberliver
liberliver1 has joined #lisp
sz0 has joined #lisp
liberliver has quit [Ping timeout: 256 seconds]
liberliver1 is now known as liberliver
gravicappa has joined #lisp
<jmercouris>
beach: PDF version of cluffer? do you reccommend I use it in Next?
<jmercouris>
anyone used Cluffer? example of how ot use it?
<jmercouris>
fingers crossed I can make the documentation...
dmiles has joined #lisp
wxie has quit [Ping timeout: 256 seconds]
cosimone has joined #lisp
Lycurgus has joined #lisp
<jmercouris>
it seems to freeze on my system when I try to make the documentatino
<_death>
the console window's title suggests that it's the tr program, and it's likely waiting for input..
<jmercouris>
yes it does, but what is the TR program?
<_death>
man tr
<jmercouris>
that's very descriptive, but not very enlightening, another day :-) I am reading the manual now
<jackdaniel>
the point being made is that you can easily check what is the program tr instead of asking (given my understanding is correct)
EvW has quit [Ping timeout: 256 seconds]
<_death>
if you seek enlightenment, you need to investigate the issue until it arrives
nikkal has joined #lisp
milanj has joined #lisp
<jmercouris>
that is true
Lycurgus has quit [Remote host closed the connection]
<jmercouris>
anyone know of any projects that have used cluffer?
SGASAU has quit [Remote host closed the connection]
SGASAU has joined #lisp
dddddd has joined #lisp
<jmercouris>
I grepped my quicklisp directory, couldn't find anything
<jmercouris>
yes, I know about climacs
<_death>
I used it in my tui project.. though I've not been working on it for a while
<jmercouris>
_death: was it good? would you recommend it?
mrcom has joined #lisp
<jackdaniel>
_death: tui project? I can't find it on your github account with simple looking for "tui" or "text"
<_death>
sure.. the code isn't hard to understand, and there's documentation.. there could be an operator to erase the buffer's contents (right now I create a new buffer instead)
<_death>
you won't find it because >90% of my personal code is not on github
<jackdaniel>
if you happen to publish it sometime let me know, I'm curious because I'm writing a similar thing right now
SGASAU has quit [Remote host closed the connection]
<jackdaniel>
the quote in a second screencast is funny :)
<_death>
yes.. there's still a lot missing
EvW1 has joined #lisp
random-nick has joined #lisp
cjunke has joined #lisp
_heisig has joined #lisp
rumbler3_ has joined #lisp
whiteline_ has joined #lisp
hapticFe` has joined #lisp
Josh_2` has joined #lisp
m00natic` has joined #lisp
Kaisyu72 has joined #lisp
SomeB_ has joined #lisp
shinohai_ has joined #lisp
_Ark_ has joined #lisp
Grue`` has joined #lisp
mpontillo_ has joined #lisp
HiRE_ has joined #lisp
johnweldon has joined #lisp
gendl_ has joined #lisp
jfb4_ has joined #lisp
lonjil2 has joined #lisp
justinmcp has joined #lisp
White__Flame has joined #lisp
h117 has joined #lisp
loke` has joined #lisp
luna_is_here has quit [Quit: Verlassend]
copec_ has joined #lisp
snits_ has joined #lisp
pok_ has joined #lisp
scal has joined #lisp
cranes_ has joined #lisp
micro_ has joined #lisp
ark has quit [Ping timeout: 246 seconds]
Bike has quit [Ping timeout: 246 seconds]
nullheroes has quit [Ping timeout: 246 seconds]
gendl has quit [Ping timeout: 246 seconds]
SomeB has quit [Ping timeout: 246 seconds]
heisig has quit [Ping timeout: 246 seconds]
jw4 has quit [Ping timeout: 246 seconds]
hapticFeels has quit [Ping timeout: 246 seconds]
cranes has quit [Ping timeout: 246 seconds]
Kaisyu7 has quit [Ping timeout: 246 seconds]
HiRE has quit [Ping timeout: 246 seconds]
ramus_ has quit [Ping timeout: 246 seconds]
spacebat1 has quit [Ping timeout: 246 seconds]
jfb4 has quit [Ping timeout: 246 seconds]
zymurgy has quit [Ping timeout: 246 seconds]
shifty has quit [Ping timeout: 246 seconds]
Lord_Nightmare has quit [Ping timeout: 246 seconds]
bhartrihari has quit [Ping timeout: 246 seconds]
tessier has quit [Ping timeout: 246 seconds]
eagleflo has quit [Ping timeout: 246 seconds]
White_Flame has quit [Ping timeout: 246 seconds]
cross has quit [Ping timeout: 246 seconds]
gendl_ is now known as gendl
kbtr_ has joined #lisp
femi has quit [Ping timeout: 264 seconds]
gabot has quit [Ping timeout: 264 seconds]
mpontillo has quit [Ping timeout: 264 seconds]
m00natic has quit [Ping timeout: 264 seconds]
Josh_2 has quit [Ping timeout: 264 seconds]
theBlackDragon has quit [Ping timeout: 264 seconds]
rumbler31 has quit [Ping timeout: 264 seconds]
kbtr has quit [Ping timeout: 264 seconds]
snits has quit [Ping timeout: 264 seconds]
eta has quit [Ping timeout: 264 seconds]
lonjil has quit [Ping timeout: 264 seconds]
ck_ has quit [Ping timeout: 264 seconds]
copec has quit [Ping timeout: 264 seconds]
micro has quit [Ping timeout: 264 seconds]
Grue` has quit [Ping timeout: 264 seconds]
scal_ has quit [Ping timeout: 264 seconds]
jbgg has quit [Ping timeout: 264 seconds]
pok has quit [Ping timeout: 264 seconds]
shinohai has quit [Ping timeout: 264 seconds]
whiteline has quit [Ping timeout: 264 seconds]
jesse1010 has quit [Ping timeout: 264 seconds]
justinmcp_ has quit [Ping timeout: 264 seconds]
h11 has quit [Ping timeout: 264 seconds]
loke has quit [Ping timeout: 264 seconds]
theBlackDragon has joined #lisp
ramus has joined #lisp
Bike_ has joined #lisp
eagleflo_ has joined #lisp
h117 is now known as h11
ck__ has joined #lisp
tessier has joined #lisp
pok_ is now known as pok
wallyduchamp has joined #lisp
cross_ has joined #lisp
tessier has quit [Changing host]
tessier has joined #lisp
jesse1010 has joined #lisp
shifty has joined #lisp
copec_ is now known as copec
zymurgy1 has joined #lisp
femi has joined #lisp
Lord_Nightmare has joined #lisp
spacebat1 has joined #lisp
eta has joined #lisp
gabot has joined #lisp
<beach>
jmercouris: I developed it for Second Climacs, but it is a general library, and it has been thoroughly tested. The documentation should be complete as well.
jbgg has joined #lisp
<beach>
jmercouris: I believe it is good in that it allows for several views into one buffer, and each view can have a different way of presenting the contents, including a different parser for the buffer contents.
<jmercouris>
beach: Yeah, I've begun playing around with it
<jmercouris>
I'm going to attempt to replace our own buffer implementation with one of the supplied ones
<jmercouris>
well, our minibuffer implementation
<beach>
Now, I don't know that you need all that stuff for Next, though.
<jmercouris>
not all of it, but it is a good protocol
shinohai_ is now known as shinohai
<jmercouris>
what's strange to me is that you can insert something like (cluffer:insert-item y "aj")
<beach>
Thank you. It took me around 30 years to get it to what I now think is right. :)
<jmercouris>
I would have thought it would complain that "aj" is a sequence or something
<beach>
No, any object can be inserted. Including imagines and movies.
<jmercouris>
I don't fully understand the principles behind the implementation yet, but I at least can use simple-line so far :-D
<jmercouris>
one question I do have is this
<jmercouris>
why no initform for a cursor line slot?
<beach>
Use standard-line. Simple line was developed just for testing purposes.
<jmercouris>
why must I attach it after creation?
<jmercouris>
sorry, :initarg is what I meant to say above
<beach>
I don't remember. Sorry. Does the creation know which buffer is meant?
<jmercouris>
No, you have to create a cursor, and then attach it to a buffer
FreeBirdLjj has joined #lisp
<beach>
Yeah, that sound more reasonable. I also don't remember why that is
EvW1 has quit [Ping timeout: 244 seconds]
nikkal has joined #lisp
<jmercouris>
well, I'm sure there is some reasoning :-D
<beach>
I would assume so. :)
<jmercouris>
because it is very much explicit
<jmercouris>
maybe I will figure it out in time, anyways, with your blessing, i will try this
<beach>
Anyway, standard-line uses a gap buffer which is efficient. simple-line uses a list as I recall.
<jmercouris>
yes
<jmercouris>
I was just looking at simple-line because it was "simple"
<jmercouris>
and I wanted to understand
<beach>
Sure, I'll try to assist as much as I can. I may need some time to re-read the code to answer questions.
<jmercouris>
no worries, i'll let you know in the coming days if i have any questions
<beach>
Sounds good. Good luck!
<jmercouris>
thanks!
EvW has joined #lisp
FreeBirdLjj has quit [Ping timeout: 256 seconds]
pjb has quit [Ping timeout: 272 seconds]
shangul has joined #lisp
Lycurgus has quit [Quit: Exeunt]
Bourne has joined #lisp
ech has joined #lisp
tutti has quit [Ping timeout: 260 seconds]
Bike_ is now known as Bike
kingcons has joined #lisp
wsinatra has joined #lisp
Josh_2` has quit [Ping timeout: 240 seconds]
pjb has joined #lisp
_heisig is now known as heisig
SGASAU has quit [Remote host closed the connection]
SGASAU has quit [Remote host closed the connection]
johnweldon has quit [Quit: tot siens]
bhartrihari has joined #lisp
SGASAU has joined #lisp
jw4 has joined #lisp
pjb has joined #lisp
freshpassport has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
kaftejiman has quit [Ping timeout: 256 seconds]
kaftejiman has joined #lisp
amerigo has joined #lisp
dale_ has joined #lisp
dale_ is now known as dale
sdumi has quit [Ping timeout: 260 seconds]
wnh has quit [Quit: wnh]
cg505_ has joined #lisp
cg505 has quit [Ping timeout: 260 seconds]
shangul has quit [Ping timeout: 256 seconds]
rippa has joined #lisp
bitmapper has quit [Ping timeout: 260 seconds]
bhartrihari has left #lisp ["Disconnected: Replaced by new connection"]
bhartrihari has joined #lisp
pjb has quit [Ping timeout: 272 seconds]
SGASAU has quit [Remote host closed the connection]
SGASAU has joined #lisp
orivej has joined #lisp
SGASAU has quit [Remote host closed the connection]
bhartrihari has left #lisp ["Disconnected: Replaced by new connection"]
SGASAU has joined #lisp
bhartrihari has joined #lisp
jfrancis_ has joined #lisp
bhartrihari has left #lisp ["Disconnected: closed"]
bhartrihari has joined #lisp
orivej has quit [Read error: Connection reset by peer]
orivej has joined #lisp
jfrancis has quit [Ping timeout: 260 seconds]
Bourne has quit [Ping timeout: 246 seconds]
wnh has joined #lisp
EvW has quit [Ping timeout: 256 seconds]
pjb has joined #lisp
jfrancis_ has quit [Ping timeout: 244 seconds]
_jrjsmrtn has joined #lisp
__jrjsmrtn__ has quit [Ping timeout: 240 seconds]
nikkal has quit [Ping timeout: 260 seconds]
cosimone has quit [Quit: Quit.]
gxt has quit [Remote host closed the connection]
gxt has joined #lisp
jfrancis has joined #lisp
andrei-n has quit [Read error: Connection reset by peer]
orivej has quit [Ping timeout: 258 seconds]
sdumi has joined #lisp
orivej has joined #lisp
jfrancis_ has joined #lisp
jfrancis has quit [Read error: Connection reset by peer]
libertyprime has quit [Ping timeout: 256 seconds]
sdumi has quit [Ping timeout: 272 seconds]
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #lisp
sdumi has joined #lisp
gxt has quit [Remote host closed the connection]
gxt has joined #lisp
wallyduchamp has quit [Quit: WeeChat 2.8]
orivej has quit [Ping timeout: 260 seconds]
orivej has joined #lisp
nikkal has joined #lisp
orivej_ has joined #lisp
orivej has quit [Ping timeout: 256 seconds]
jfrancis_ has quit [Ping timeout: 260 seconds]
gaqwas has quit [Quit: Leaving]
jfrancis has joined #lisp
shangul has joined #lisp
wsinatra has quit [Quit: WeeChat 2.8]
tinga has quit [Remote host closed the connection]
tinga has joined #lisp
bhartrihari has left #lisp ["Disconnected: Replaced by new connection"]
bhartrihari has joined #lisp
<ralt>
jackdaniel: sorry
<jackdaniel>
ralt: sorry for what?
logicmoo has joined #lisp
dmiles has quit [Ping timeout: 260 seconds]
jfrancis has quit [Ping timeout: 265 seconds]
<ralt>
jackdaniel: for the late comment on the bt MR
<jackdaniel>
hm, now that I think about these timeouts I think that we should not put a timeout in acquire-lock
jonatack has quit [Ping timeout: 260 seconds]
<jackdaniel>
I'll elaborate in the PR
gaqwas has joined #lisp
jonatack has joined #lisp
jfrancis has joined #lisp
<jackdaniel>
ralt: also, pointing out potential problems in the code is something to be thanked for, not to be sorry about, hence thank you! :)
<ralt>
It's more the "point out a problem, point out another problem in the next iteration" thing I'm apologizing for
<ralt>
Could've done both at once
bhartrihari has left #lisp ["Disconnected: Replaced by new connection"]
bhartrihari has joined #lisp
jfrancis has quit [Ping timeout: 260 seconds]
<jackdaniel>
right
<ralt>
jackdaniel: your argument probably works in the general case but starts failing in the case of under pressure environments
<ralt>
Whether you care or not is up to you guys
<jackdaniel>
I can do both, I'll wait for fe[nl]ix decision
<ralt>
Processes get preempted etc.
<ralt>
Well, if you do the timeout for lock, then every signature needs to have the timeout, including the count ones
<ralt>
The "read fixnum without lock" thing should be easy to test, actually
<ralt>
Just spawn 1k threads reading the value, another 100 threads modifying it after taking a lock, and see if everything dies
<jackdaniel>
regarding timeout for count ones, why would that be necessary? if I call mailbox-empty-p I would assume, that it will wait until the lock can be taken
<jackdaniel>
sorry, I need to go now (I'll read a backlog and check the PR later)
orivej_ has quit [Ping timeout: 260 seconds]
orivej has joined #lisp
jfrancis has joined #lisp
jfrancis_ has joined #lisp
<ralt>
Why if you don't want to block?
shangul has quit [Ping timeout: 260 seconds]
nullheroes has joined #lisp
sunset_NOVA has quit [Ping timeout: 246 seconds]
jfrancis has quit [Ping timeout: 256 seconds]
nikkal has quit [Quit: Konversation terminated!]
<axion>
I'm having a lot of fun working on a new library for a change for creating generative art :)
nikkal has joined #lisp
sdumi has quit [Ping timeout: 256 seconds]
rogersm has quit [Ping timeout: 244 seconds]
sunset_NOVA has joined #lisp
sdumi has joined #lisp
<scymtym>
axion: is it wave function collapse?
<axion>
Nah, though I started working on a port the same author's ConvChain a while ago, which can be guaranteed to terminate, unlike WFC :)
<jmercouris>
it is supposed to call http-fetch, but it is just not actually fetching..
<jcowan>
How can I find standard functions that return two values, either the result or #t if there is a result, or #f #f if there isn't one? hashref works like this, but what else
<jcowan>
?
<Shinmera>
Wrong channel?
<jcowan>
sorry, make that T and NIL
gxt has quit [Ping timeout: 240 seconds]
<Shinmera>
There's also no hashref
SGASAU has quit [Remote host closed the connection]
<Shinmera>
As for 'how', you'll have to go through the symbol index.
<jmercouris>
Does not make a file, why not?
SGASAU has joined #lisp
<jmercouris>
can anyone confirm if ql:http-fetch is working on their machines as I expect it to be for myself?
trafaret1 has quit [Ping timeout: 246 seconds]
<jmercouris>
I also tried the variation: (ql-http:http-fetch "http://beta.quicklisp.org/quicklisp.lisp" #P"/Users/jmercouris/Downloads/quicklisp-JBCUCRBI.lisp")
<jcowan>
gethash, of course
cosimone has quit [Quit: Quit.]
rgherdt has quit [Ping timeout: 246 seconds]
<jcowan>
Anyway, what else uses that result protocol?
<_death>
function-lambda-expression returns 3 values, that you can think of as generalized booleans.. same goes for get-properties
<Shinmera>
Not sure about standard functions, but a bunch of libraries make use of that convention.
gxt has joined #lisp
<_death>
jmercouris: wfm
<jmercouris>
WHAT
<jmercouris>
hm, that's frustrating
<jmercouris>
it must be OS specific or configuration specific
<Shinmera>
jmercouris: if it didn't work, the quicklisp-installer wouldn't work either.
<jmercouris>
Yes, that's what I deduced
<_death>
jmercouris: you could try wireshark.. or adding print statements..
<Shinmera>
or trace OPEN
<jmercouris>
adding print statements? where is http-fetch even defined?
<_death>
don't think you can trace CL operators
<jmercouris>
I don't even know to which system the ql-http package belongs
<_death>
M-. is your friend?
<jmercouris>
it puts me to a strange file
<jmercouris>
it takes me to here: /Users/jmercouris/Source/Lisp/qlot/proxy.lisp
<Shinmera>
_death: it's not required to work but you can do it
<jmercouris>
I don't understand all of this indrection in proxy.lisp
<jmercouris>
why!?
<jmercouris>
I'm sure there is some reasoning, what it is, I can't know
<_death>
jmercouris: does it redefine ql-http:http-fetch?