ebrasca has quit [Remote host closed the connection]
dsl` has joined #lisp
<_death>
I took a first step towards that not long ago.. porting the pertinent bits from gogs and creating a hunchentoot dispatcher to support git-clone
<_death>
but gogs seems to work ok with javascript off, so I'm not pressed to take further steps
nicktick has joined #lisp
flazh has quit [Ping timeout: 264 seconds]
dsl` has quit [Ping timeout: 256 seconds]
davsebamse has quit [Ping timeout: 256 seconds]
mrcom has joined #lisp
davsebamse has joined #lisp
dsl` has joined #lisp
Josh_2`` has joined #lisp
dsl` has quit [Ping timeout: 240 seconds]
space_otter has joined #lisp
Josh_2` has quit [Ping timeout: 246 seconds]
rumbler31 has quit [Ping timeout: 264 seconds]
orivej has quit [Ping timeout: 246 seconds]
flazh has joined #lisp
dsl` has joined #lisp
EvW has quit [Ping timeout: 260 seconds]
Alfr has joined #lisp
dsl` has quit [Ping timeout: 246 seconds]
Alfr_ has quit [Ping timeout: 260 seconds]
nicktick has quit [Ping timeout: 246 seconds]
dsl` has joined #lisp
dsl` has quit [Ping timeout: 264 seconds]
nicktick has joined #lisp
dsl` has joined #lisp
dsl` has quit [Ping timeout: 260 seconds]
nicktick1 has joined #lisp
nicktick has quit [Ping timeout: 260 seconds]
dale has quit [Remote host closed the connection]
dsl` has joined #lisp
nicktick has joined #lisp
Alfr_ has joined #lisp
nicktick1 has quit [Ping timeout: 240 seconds]
Alfr has quit [Ping timeout: 244 seconds]
dsl` has quit [Ping timeout: 240 seconds]
nicktick has quit [Ping timeout: 264 seconds]
Alfr has joined #lisp
dsl` has joined #lisp
Alfr_ has quit [Ping timeout: 260 seconds]
dsl` has quit [Ping timeout: 256 seconds]
wxie has joined #lisp
nicktick has joined #lisp
dsl` has joined #lisp
dsl` has quit [Ping timeout: 265 seconds]
dsl` has joined #lisp
Bike has quit [Quit: Lost terminal]
tychoish has quit [Quit: ish]
tychoish has joined #lisp
dsl` has quit [Ping timeout: 240 seconds]
dsl` has joined #lisp
dominic34 has joined #lisp
vutral has quit [Quit: Connection closed for inactivity]
dsl` has quit [Ping timeout: 256 seconds]
dsl` has joined #lisp
dsl` has quit [Ping timeout: 240 seconds]
dsl` has joined #lisp
dsl` has quit [Ping timeout: 240 seconds]
akoana has left #lisp ["Leaving"]
v88m has quit [Ping timeout: 264 seconds]
dsl` has joined #lisp
nicktick has quit [Ping timeout: 260 seconds]
dsl` has quit [Ping timeout: 264 seconds]
nicktick has joined #lisp
dsl` has joined #lisp
dsl` has quit [Ping timeout: 256 seconds]
Bourne has quit [Ping timeout: 260 seconds]
notzmv has joined #lisp
dsl` has joined #lisp
dsl` has quit [Ping timeout: 246 seconds]
bhartrihari has left #lisp ["Disconnected: Replaced by new connection"]
bhartrihari has joined #lisp
dsl` has joined #lisp
dsl` has quit [Ping timeout: 256 seconds]
torbo has quit [Remote host closed the connection]
dsl` has joined #lisp
PuercoPop has joined #lisp
caltelt has quit [Ping timeout: 256 seconds]
dsl` has quit [Ping timeout: 240 seconds]
Oladon has joined #lisp
bhartrihari has left #lisp ["Disconnected: closed"]
dsl` has joined #lisp
Alfr_ has joined #lisp
bhartrihari has joined #lisp
v3ga has joined #lisp
stepnem has quit [Ping timeout: 264 seconds]
dsl` has quit [Ping timeout: 256 seconds]
Alfr has quit [Ping timeout: 256 seconds]
orivej has joined #lisp
dale has joined #lisp
dsl` has joined #lisp
dominic34 has quit [Ping timeout: 240 seconds]
dsl` has quit [Ping timeout: 240 seconds]
dsl` has joined #lisp
dsl` has quit [Ping timeout: 256 seconds]
ldb has joined #lisp
<ldb>
good morning
bilegeek has joined #lisp
dsl` has joined #lisp
dsl` has quit [Ping timeout: 246 seconds]
dsl` has joined #lisp
<beach>
Good morning everyone!
shangul has joined #lisp
bhartrihari has left #lisp ["Disconnected: Replaced by new connection"]
bhartrihari has joined #lisp
dsl` has quit [Ping timeout: 264 seconds]
bhartrihari has left #lisp ["Disconnected: Replaced by new connection"]
dsl` has joined #lisp
bhartrihari has joined #lisp
ldb has quit [Quit: leaving]
Lord_of_Life has quit [Ping timeout: 240 seconds]
bhartrihari has left #lisp ["Disconnected: Replaced by new connection"]
bhartrihari has joined #lisp
Lord_of_Life has joined #lisp
dsl` has quit [Ping timeout: 240 seconds]
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #lisp
dsl` has joined #lisp
libertyprime has joined #lisp
<contrapunctus>
Morning beach
<contrapunctus>
(Oh god. I can't believe it took me this long to realize the Strandh/beach pun 🤦)
<beach>
Heh.
<beach>
In the past I also used the nicks `spiaggia' and `plage'.
dsl` has quit [Ping timeout: 260 seconds]
Fare has joined #lisp
<contrapunctus>
😄
paul0 has joined #lisp
* contrapunctus
has been going through the source of 3bmd
dsl` has joined #lisp
<beach>
What do you plan to do with the source?
Alfr_ has quit [Remote host closed the connection]
rippa has quit [Quit: {#`%${%&`+'${`%&NO CARRIER]
dsl` has quit [Ping timeout: 265 seconds]
libertyprime has quit [Ping timeout: 246 seconds]
mindCrime has quit [Ping timeout: 244 seconds]
libertyprime has joined #lisp
dsl` has joined #lisp
<contrapunctus>
beach: been designing a markup language - https://github.com/contrapunctus-1/TheatreScript ...thinking of making a fork of 3bmd to parse it. (Or maybe it can be extended instead of forking...)
<beach>
I see.
dsl` has quit [Ping timeout: 256 seconds]
orivej_ has joined #lisp
orivej has quit [Read error: Connection reset by peer]
dsl` has joined #lisp
mrcom has quit [Read error: Connection reset by peer]
shidima has joined #lisp
libertyprime has quit [Ping timeout: 246 seconds]
wxie has quit [Ping timeout: 246 seconds]
dsl` has quit [Ping timeout: 240 seconds]
libertyprime has joined #lisp
edgar-rft has quit [Quit: Leaving]
Necktwi has quit [Ping timeout: 256 seconds]
v88m has joined #lisp
dsl` has joined #lisp
wxie has joined #lisp
dsl` has quit [Ping timeout: 240 seconds]
dsl` has joined #lisp
mrcom has joined #lisp
orivej_ has quit [Quit: No Ping reply in 180 seconds.]
dsl` has quit [Ping timeout: 256 seconds]
orivej has joined #lisp
libertyprime has quit [Ping timeout: 264 seconds]
libertyprime has joined #lisp
dsl` has joined #lisp
dsl` has quit [Ping timeout: 264 seconds]
Necktwi has joined #lisp
dsl` has joined #lisp
Oladon has quit [Quit: Leaving.]
dsl` has quit [Ping timeout: 256 seconds]
space_otter has quit [Remote host closed the connection]
orivej has quit [Ping timeout: 260 seconds]
orivej has joined #lisp
lucasb has quit [Quit: Connection closed for inactivity]
dsl` has joined #lisp
gravicappa has joined #lisp
dsl` has quit [Ping timeout: 240 seconds]
orivej has quit [Quit: No Ping reply in 180 seconds.]
Fare has quit [Ping timeout: 240 seconds]
orivej has joined #lisp
dsl` has joined #lisp
dsl` has quit [Ping timeout: 260 seconds]
orivej has quit [Ping timeout: 240 seconds]
Oladon has joined #lisp
orivej has joined #lisp
dsl` has joined #lisp
<phoe>
morning
Alfr has joined #lisp
contrapunctus has left #lisp ["Disconnected: Replaced by new connection"]
contrapunctus has joined #lisp
bhartrihari has left #lisp ["Disconnected: Replaced by new connection"]
bhartrihari has joined #lisp
dsl` has quit [Ping timeout: 240 seconds]
orivej has quit [Ping timeout: 256 seconds]
enrio has joined #lisp
orivej has joined #lisp
wxie has quit [Ping timeout: 264 seconds]
dsl` has joined #lisp
dsl` has quit [Ping timeout: 246 seconds]
bocaneri has joined #lisp
ldb has joined #lisp
bhartrihari has left #lisp ["Disconnected: Replaced by new connection"]
<nirved>
flet lets multiple definitions, but it might be more clear this way
dsl` has quit [Ping timeout: 256 seconds]
<phoe>
nirved: gasp, you are correct
<phoe>
fixed, thank you
libertyprime has joined #lisp
dsl` has joined #lisp
wsinatra has quit [Ping timeout: 256 seconds]
enrioog has joined #lisp
<beach>
Hey phoe.
enrio has quit [Ping timeout: 256 seconds]
dsl` has quit [Ping timeout: 260 seconds]
gaqwas has quit [Remote host closed the connection]
<phoe>
hey, good morning
dsl` has joined #lisp
space_otter has joined #lisp
narimiran has joined #lisp
dsl` has quit [Ping timeout: 264 seconds]
dsl` has joined #lisp
kopiyka has quit [Remote host closed the connection]
kopiyka has joined #lisp
Oladon has quit [Quit: Leaving.]
dsl` has quit [Ping timeout: 256 seconds]
gaqwas has joined #lisp
gaqwas has quit [Changing host]
gaqwas has joined #lisp
dsl` has joined #lisp
orivej has quit [Ping timeout: 240 seconds]
orivej has joined #lisp
dsl` has quit [Ping timeout: 264 seconds]
treflip has joined #lisp
dsl` has joined #lisp
liberliver has joined #lisp
dsl` has quit [Ping timeout: 240 seconds]
bsd4me has quit [Remote host closed the connection]
dsl` has joined #lisp
bilegeek has quit [Quit: Leaving]
VincentVega has joined #lisp
ldb has quit [Ping timeout: 246 seconds]
<VincentVega>
Hey guys! Got a question on types. Is there any danger in class slots initform being nil when I specify some non-compatible type e.g. double-float? Structs fail to compile w/ smth like that, but the class def is just fine.
<phoe>
which implementation do you use?
heisig has joined #lisp
<beach>
VincentVega: You should probably use the type (or null double-float) for cases like that.
shidima has quit [Ping timeout: 240 seconds]
<VincentVega>
phoe: sbcl
orivej has quit [Ping timeout: 260 seconds]
<phoe>
which version and safety levels?
<flip214>
VincentVega: use an initial value NIL in the struct, that way SBCL won't warn.
<VincentVega>
default ones
<phoe>
asking because SBCL recently introduced type checks for class slots
orivej has joined #lisp
<VincentVega>
2.0.5
<VincentVega>
phoe: Oh, ok
<VincentVega>
beach: OK
shifty has joined #lisp
ldb has joined #lisp
<VincentVega>
flip214: well, the struct definition compiles, but making an instance produces an error
shidima has joined #lisp
<VincentVega>
thanks guys
<beach>
It must be the case that the type is checked in a struct but not in a standard object.
<flip214>
VincentVega: yeah, you need to provide all missing values on your make-<struct> call
<flip214>
so that the allocated object satisfies your constraints
<VincentVega>
because the struct has to calculate it's own size, right? btw are there any good resources/articles on typing?
<VincentVega>
flip214: Oh, yeah, I see
EvW1 has joined #lisp
pve has joined #lisp
EvW1 has quit [Ping timeout: 256 seconds]
ljavorsk has joined #lisp
mrcom has quit [Read error: Connection reset by peer]
mrcom has joined #lisp
treflip has quit [Quit: WeeChat 2.6]
treflip has joined #lisp
orivej has quit [Ping timeout: 260 seconds]
orivej has joined #lisp
gaqwas has quit [Remote host closed the connection]
mrcom has quit [Read error: Connection reset by peer]
enrio has joined #lisp
enrioog has quit [Ping timeout: 264 seconds]
libertyprime has quit [Read error: Connection reset by peer]
mrcom has joined #lisp
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #lisp
libertyprime has joined #lisp
enrio has quit [Read error: Connection reset by peer]
<sm2n>
hm, I guess you can't preload twitch streams with ytdl+mpv
galex-713 has quit [Ping timeout: 240 seconds]
scymtym has quit [Read error: Connection reset by peer]
orivej_ has quit [Ping timeout: 265 seconds]
orivej has joined #lisp
galex-713 has joined #lisp
Bourne has joined #lisp
<phoe>
maybe that's because the stream is still offline
<phoe>
I'll make it run in a moment
jonatack has quit [Quit: jonatack]
scymtym has joined #lisp
ayuce has joined #lisp
<sm2n>
anyway, what's the schedule for these talks? is it every two weeks this time?
terpri_ has quit [Ping timeout: 240 seconds]
<phoe>
runninnnnng
<phoe>
sm2n: more or less two weeks, sometimes three
ldb has joined #lisp
orivej has quit [Ping timeout: 256 seconds]
orivej has joined #lisp
<sm2n>
cool, it works in mpv now
wxie has quit [Ping timeout: 240 seconds]
markoong has joined #lisp
<phoe>
awesome
<treflip>
yeaaah
ghard has joined #lisp
ldb has quit [Ping timeout: 260 seconds]
ldb has joined #lisp
shangul has joined #lisp
random-nick has joined #lisp
gxt has joined #lisp
gaqwas has quit [Remote host closed the connection]
paul0 has quit [Quit: Leaving]
treflip has quit [Quit: WeeChat 2.6]
ldb has quit [Quit: leaving]
narimiran has quit [Ping timeout: 246 seconds]
treflip has joined #lisp
space_otter has quit [Remote host closed the connection]
orivej has quit [Ping timeout: 256 seconds]
orivej has joined #lisp
cosimone has quit [Quit: Quit.]
narimiran has joined #lisp
dsl`` has quit [Ping timeout: 240 seconds]
dra has joined #lisp
mangul has joined #lisp
shangul has quit [Ping timeout: 240 seconds]
<ebrasca>
scymtym: Hi
<scymtym>
ebrasca: hi
<ebrasca>
scymtym: I am making some FS thinks for Mezzano.
<ebrasca>
scymtym: And I have never make any presentation.
<beach>
scymtym: I think your presentation had the desired effect.
<scymtym>
ebrasca: i know. if you record a video about your work, i'm sure phoe would schedule it for a future installment of the online meetup
<beach>
It was very impressive, and the participants seem to have noticed that.
<scymtym>
beach: great
<phoe>
scymtym: actually
<phoe>
beach has already had three videos
<beach>
It seems McCLIM is largely unknown to people. Maybe one talk should be about the listener, "debugger", and the integration of Clouseau.
<phoe>
and he's *definitely* not done yet
<phoe>
oh wait, I mixed up people - nevermind
<ebrasca>
scymtym: I don't know how to make videos or if FS develoment is interesting.
<beach>
You will find out only by trying.
<scymtym>
phoe: no worries
<beach>
I am off for a badly needed break.
<scymtym>
ebrasca: maybe i misunderstood what you were getting at. i just wanted to say that if you want to present your work, it shouldn't be a problem
<scymtym>
beach: see you. thanks for helping with the questions and chat
<scymtym>
_death: maybe the problem is also related to the inspected value. it seems to be printing the long list when trying to display documentation for the "swap place values" command. a very long list or putting that list in a vector alone doesn't trigger anything for me. is the value you were inspecting easy to reproduce?
<scymtym>
_death: anything "around" that in terms of composite objects containing the list or similar? i can't get the list alone to cause any problems
<scymtym>
_death: ah, dragging list elements gets me closer
<_death>
scymtym: it doesn't happen every run.. but it does happen often, say 1/3
<scymtym>
_death: maybe a custom *PRINT-LENGTH* or similar masks the issue for me
<_death>
seems to happen when the red tick near an element is hovered
<scymtym>
although clouseau should control the printer tightly
<_death>
after a while I now got WARNING: Trying to render string outside the mirror.
hjudt has quit [Quit: leaving]
<scymtym>
yeah, that's from printing on overly long string
<scymtym>
so seems to support my suspicion
<scymtym>
i suspect two issues: 1) clouseau does not abbreviate the object representation when printing the command help 2) clx can get stuck when writing overlong requests (or something more specific to string-related requests)
<scymtym>
that narrows things down a bit
hjudt has joined #lisp
<jackdaniel>
this warning is a known problem with a proposed solution blocked by drei design. uf, that was a long sentence
hjudt has joined #lisp
<jackdaniel>
s/with a/which has a/
<jackdaniel>
s/drei design/something in drei/
<scymtym>
_death: if you surround the (format stream "Drag ~A onto another slot to ...") call in Apps/Clouseau/src/commands.lisp with (let ((*print-length* 30) (*print-circle* t)), does the issue persist?
<scymtym>
(the proper fix will involve Clouseau's WITH-PRINT-ERROR-HANDLING and WITH-SAFE-AND-TERSE-PRINTING)
<_death>
yes
<_death>
but the backtrace looks a bit different.. maybe there's another print
<_death>
Drag onto place ...
orivej has quit [Ping timeout: 246 seconds]
orivej has joined #lisp
<scymtym>
yeah, there are multiple help messages one of which is chosen depending on the destination object and pressed modifiers. they probably all lack the necessary printer setup
<_death>
wrapping the two "Drag onto" may have worked
<scymtym>
it should. the clx issue will only be masked, of course
dra_ has joined #lisp
dra has quit [Remote host closed the connection]
<_death>
right
<scymtym>
thank you for experimenting. i have now reproduced the issue with default *PRINT-LENGTH* etc.
EvW has joined #lisp
jonatack has quit [Quit: jonatack]
jonatack has joined #lisp
orivej has quit [Ping timeout: 240 seconds]
orivej has joined #lisp
wsinatra has joined #lisp
ghard has quit [Remote host closed the connection]
ldb has joined #lisp
nicktick has joined #lisp
farooqkz__ has quit [Quit: Leaving]
orivej has quit [Ping timeout: 264 seconds]
orivej has joined #lisp
ldb has quit [Read error: Connection reset by peer]
shinohai has quit [Ping timeout: 256 seconds]
zigpaw has quit [Ping timeout: 256 seconds]
shinohai has joined #lisp
_jrjsmrtn has joined #lisp
__jrjsmrtn__ has quit [Ping timeout: 264 seconds]
orivej has quit [Ping timeout: 260 seconds]
orivej_ has joined #lisp
Bike has joined #lisp
zigpaw has joined #lisp
contrapunctus has left #lisp ["Disconnected: closed"]
luckless_ has quit [Remote host closed the connection]
contrapunctus has joined #lisp
contrapunctus has left #lisp ["Disconnected: closed"]
<scymtym>
thanks. as i said in the video, thinking/typing while speaking is hard for me
ljavorsk has quit [Ping timeout: 264 seconds]
<scymtym>
i also forgot to show the promised better example of the superclass graph
kimberky` has joined #lisp
davsebamse has quit [Ping timeout: 256 seconds]
kimberky` has quit [Client Quit]
kimberky` has joined #lisp
<_death>
the breadcrumbs history can also get arbitrarily large
<scymtym>
yes, the history has multiple problems
<scymtym>
there is a "Clear History" command as a stopgap solution
<jackdaniel>
"Those who forget^Wclear history are condemned to repeat it"
kimberly`` has joined #lisp
kimberly`` has quit [Max SendQ exceeded]
<_death>
it is possible to attempt to swap the value of a pseudo-place, which signals a no-applicable-method-error
vutral has joined #lisp
ghard has joined #lisp
<scymtym>
that must be a missing (supports PLACE (eql :setf)) method or a failure to use the READ-ONLY-PLACE mixin
kimberky` has quit [Ping timeout: 264 seconds]
<_death>
right, but I doubt that particular place should support modification
<_death>
I guess that's what you mean by using read-only-place mixin
<scymtym>
of course, i meant the architecture has the necessary features and the problem is thus a "configuration error"
v88m has quit [Ping timeout: 240 seconds]
orivej_ has quit [Ping timeout: 256 seconds]
kimberly`` has joined #lisp
kimberly`` has quit [Max SendQ exceeded]
TwoNotes has joined #lisp
orivej has joined #lisp
kimberly`` has joined #lisp
kimberly`` has quit [Max SendQ exceeded]
galex-713 has quit [Ping timeout: 246 seconds]
prescilla22 has joined #lisp
prescilla22 has quit [Max SendQ exceeded]
prescilla22 has joined #lisp
prescilla22 has quit [Max SendQ exceeded]
<_death>
it already uses read-only-place.. I think the drag-swap-place-values tester needs a little tweaking.. like a (and (safe-valuep object) (supportsp object 'setf)) in case from-object is nil
hendursa1 has quit [Quit: hendursa1]
xrash has quit [Ping timeout: 246 seconds]
hendursaga has joined #lisp
prescilla22 has joined #lisp
prescilla22 has quit [Max SendQ exceeded]
orivej has quit [Ping timeout: 240 seconds]
<scymtym>
right, i might have forgotten to finish this or rather adapt it to McCLIM changes regarding the names of the tester arguments
orivej has joined #lisp
<_death>
in any case it's easier to hack on clouseau than slime inspector ;)
<beach>
Of course. :)
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #lisp
gko_ has joined #lisp
galex-713 has joined #lisp
TwoNotes has quit [Quit: Leaving]
rumbler31 has joined #lisp
sjl_ has joined #lisp
galex-713 has quit [Ping timeout: 246 seconds]
galex-713_ has joined #lisp
orivej has quit [Quit: No Ping reply in 180 seconds.]
<_death>
the graph example was also very cool, though the layout algo could be improved for larger graphs https://i.imgur.com/14uWrs0.png
orivej has joined #lisp
<jackdaniel>
a few people mentioned on the issue tracker ,that they are working on alternative layouts, but nothing came in as a pull request so far
<beach>
Probably because it's a tough problem.
rumbler31 has quit [Ping timeout: 256 seconds]
<_death>
a port of the dagre algorithms could take a few days of work
galex-713_ has quit [Ping timeout: 256 seconds]
galex-713 has joined #lisp
<beach>
_death: It sounds like you found yourself a small project. :)
<_death>
heh.. it's not the first time I pondered it ;)
orivej has quit [Quit: No Ping reply in 180 seconds.]
<jackdaniel>
_death: if you are interested in extending graph functionality, then the file to look at is Core/clim-core/graph-formatting.lisp
orivej has joined #lisp
<jackdaniel>
the interface is not documented (and not exported :), but it is possible to add new types of graph
<jackdaniel>
(define-graph-type :pretty-dawg pretty-dag-graph-output-record), and then add a few methods
<_death>
cool
alandipert9 is now known as alandipert
whiteline has quit [Ping timeout: 264 seconds]
sjl_ has quit [Quit: WeeChat 2.3-dev]
dra_ is now known as dra
ayuce has quit [Ping timeout: 246 seconds]
<_death>
tweaking orientation and separation parameters gets much better results
<scymtym>
_death: we should talk. i have lots of initial work for better graph layout
sjl_ has joined #lisp
ofi has quit [Quit: ERC (IRC client for Emacs 26.3)]
<_death>
sounds good
garbochock has joined #lisp
bsd4me has joined #lisp
<garbochock>
Good afternoon, lisp newbie here. I have a question about looking up documentation. I'm aware of (describe 'function). However, currently as I'm going through 'practical common lisp', I came across (eql value :unspecific) - and wanted to figure out what (the keyword?) ":unspecific" means. On (describe 'eql) I get no information. This type of situation have come up before, and I would be interested to know how one would go about getti
<garbochock>
documentation in such cases.
<beach>
:UNSPECIFIC is just a symbol in the KEYWORD package.
<beach>
Those symbols have themselves as values, so it evaluates to itself.
<beach>
Otherwise, it is just like any other symbol.
<beach>
So, apparently, it is possible that the variable VALUE can take on that symbol as a value.
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #lisp
<garbochock>
Ah thank you, I was looking for some magical meaning behind it. Just a symbol, thanks!
<beach>
Sure.
<Xach>
the meaning comes from the context
<Xach>
keyword symbolsl are used to do and mean all kinds of things
<garbochock>
Indeed, looked up context and it appears pathname-name and pathname-type can return :unspecific.
<aeth>
garbochock: The only way to "document" keywords afaik would be to define a member or eql type, e.g. (deftype possibly-specific () "Docstring here." `(member :unspecific :specific)) or (deftype unspecific () "Docstring here." `(eql :unspecific)) where obviously the member type is more useful.
<aeth>
Of course, this is one direction, from type to keyword(s)/symbol(s), and not the other way, so you still couldn't find it from describe.
<aeth>
It's definitely possible that a keyword (especially a common one) could be part of more than one member type.
whiteline has joined #lisp
shidima has quit [Ping timeout: 256 seconds]
mindCrime has joined #lisp
<aeth>
(I doubt either would be useful in that specific example, since I'm guessing it's either a non-keyword or :unspecific)
orivej has quit [Quit: No Ping reply in 180 seconds.]
mankaev has joined #lisp
orivej has joined #lisp
<phoe>
garbochock: the package KEYWORD is a particularly special package
<phoe>
every symbol inside that package is automatically exported and it becomes a constant that evaluates to itself
cosimone has joined #lisp
orivej has quit [Ping timeout: 260 seconds]
<phoe>
so you can use them kinda-sorta-like enums in other languages, except you do not need to declare them beforehand
orivej has joined #lisp
rippa has joined #lisp
<phoe>
they inherit the trait of symbols where they have identity, and so :FOO is EQ/EQL only to :FOO and nothing else, which is why that bit of PCL code used an EQL comparison with a keyword
orivej has quit [Read error: Connection reset by peer]
orivej has joined #lisp
dra has quit [Remote host closed the connection]
Josh_2 has joined #lisp
gaqwas has joined #lisp
<Josh_2>
Afternoon
xkapastel has joined #lisp
Josh_2`` has quit [Remote host closed the connection]
<Josh_2>
oops
<beach>
Hello Josh_2.
<Josh_2>
Hows work going beach?
<beach>
Making slow but steady progress, thank you. How about you?
<beach>
Josh_2: Oh, and scymtym had a great presentation for the online Lisp meeting today, in case you missed it.
<phoe>
the video's already on YT but Twitch has the stream with twitch chat stored on it
bsd4me has quit [Quit: Leaving]
Lord_of_Life_ has joined #lisp
Lord_of_Life has quit [Ping timeout: 246 seconds]
Lord_of_Life_ is now known as Lord_of_Life
dddddd has quit [Remote host closed the connection]
<sm2n>
beach, I was wondering if the lispos paper on your website being replaced with an older version was on purpose?
<sm2n>
I wanted to share it with a friend and was getting stuck
<sm2n>
not sure where I found the link originally
treflip has quit [Quit: WeeChat 2.6]
<beach>
I should just make sure the are one and the same document.
<Josh_2>
beach: I see the presentations you made for CL, very impressed by your choice of beamer theme :P
<sm2n>
beach, do you have any plans to add stuff about a graphics stack?
<beach>
Josh_2: Oh, thanks. I don't even think I chose it. Probably my favorite coauthor.
<beach>
sm2n: That's a good idea. But I would have to read up on a lot of stuff first.
<sm2n>
in particular, I think graphics would have to be integrated all the way down, because otherwise you can't maintain security
<beach>
Can you elaborate on that? I am not sure I see the argument.
<sm2n>
current architectures all run the userland part of the graphics stack in a single process generally, so you end up with at least two different levels of privileges - in the graphics stack, and as mediated by the os kernel with user permissions or whatever
<sm2n>
X11 is particularly bad at this because it doesn't really have a permissions model
<sm2n>
but even if you consider things that are supposed to fix the issue, like wayland, it's still quite bad - you can't manage permissions for a computation in a single place
<beach>
I think I understand.
vutral has quit [Quit: Connection closed for inactivity]
<beach>
I am trying to think how that would impact a single-address-space architecture without processes.
dddddd has joined #lisp
<beach>
sm2n: So I guess you are right, that it has to be integrated "all the way down", as opposed to copying existing architectures.
<sm2n>
yeah I'm not too sure about the memory model
<beach>
Of CLOSOS?
<sm2n>
yeah. how it would relate to this issue
<beach>
No code has direct access to memory.
<beach>
So all code runs in kernel mode.
<sm2n>
everything is accessed as language objects, correct?
<beach>
Yeah.
<beach>
Permissions are managed with capabilities.
<sm2n>
hmm
<sm2n>
what owns a capability?
<sm2n>
or has
gko_ has quit [Ping timeout: 240 seconds]
<beach>
There is no concept of ownership of capabilities. Who ever is in possession of one can use it.
<beach>
That's the essence of capabilities.
<sm2n>
right, lemme see if I can rephrase that in a way that makes sense
<sm2n>
what's the unit of modularity? i.e at what level of granularity can I assign trust rankings to computations on my machine?
ajithmk has joined #lisp
<beach>
Not sure what that means. The object store plays the role of a traditional file system. It contains ACLs, so when a user wants to obtain an object from the object store, then the ACL is checked and the user is handed a capability.
gaqwas has quit [Remote host closed the connection]
<sm2n>
more concrete: say I download a program off the internet, I want to run it in such a way that I can guarantee that it cannot do certain things, like I dunno, uploading all my private cat photos
<sm2n>
or keylogging, etc
EvW has quit [Ping timeout: 244 seconds]
<sm2n>
how can I accomplish this?
<beach>
Well, you have a unit of modularity which is the first-class global environment.
<beach>
If you load the program into a first-class global environment that doesn't have your photos in it, then it can't access them.
<sm2n>
ah ok that makes sense
<sm2n>
I like that a lot actually
<beach>
Great!
<sm2n>
hmm
<sm2n>
maybe environments could be represented graphically like how qubes has borders around vms
ashley^ has joined #lisp
<beach>
In the CLOSOS document, you mean?
<sm2n>
sure, I'm just thinking out loud
<beach>
First-class global environments were designed for that kind of isolation. My typical use case is to put the code generator of the compiler in a separate first-class global environment, so that ordinary code can't alter it and thereby making the entire system unsafe.
sebboh has joined #lisp
<sm2n>
that's neat
ashley^ has quit [Read error: Connection reset by peer]
<beach>
Thanks.
<sm2n>
what openbsd pledge() wishes it could be really
<beach>
I would have to read up on that.
<sm2n>
my issue is that how do you extend this to a gui
<sm2n>
you need to show some indication to the user
<sm2n>
gui security is very hard because guis are relatively high bandwidth
<sm2n>
like, in certain contexts even capturing mouse movement is bad
<beach>
I think again, you would obtain some kind of object to be used for the operations, and that object would be a capability. So it would be like `open' but for a window/frame/whatever.
<sebboh>
Hi all. This might be my first time visiting here in 2020? Oof. Anyway, I really like ikiwiki, but I don't speak perl, and so I've never really modified or extended it, and when one of my ikiwiki sites breaks, it stays broken.. Is there some CL-based wiki-like static site generator backed by some RCS? The web-based editing that ikiwiki offers is not really necessary for me, I think.
<beach>
Cliki?
<sm2n>
that could work, I guess
<beach>
I would think so.
<sm2n>
would require very careful choices on what the capabilities are though, but it seems doable
<beach>
Whew! :)
<sm2n>
err wait
<sm2n>
I lost my earlier train of thought
<beach>
Oh, sorry to hear that.
<sm2n>
that works fine for the implementation
<beach>
It happens to me 100 times a aday.
<sm2n>
but if I run a graphical program, how do I know what capabilities it has? is it just required to specify it beforehand
<beach>
The graphics program does not have any capabilities. The thread that runs that program obtains capabilities to be used in graphics operations.
<sebboh>
So, https://gitlab.common-lisp.net/vsedach/cliki2 seems to be the cannonical site. But, it's not clear to me that CLiki2 meets the requirements I named, or if it was just a casual response to a subset of my query. :)
<sm2n>
I'm not sure I understand the difference
nirved has quit [Ping timeout: 240 seconds]
<beach>
I think it would be best to draw up a scenario. That would make things more concrete.
<beach>
But I am reaching the end of a very long day, and my (admittedly small) family is going to announce that dinner is served in just a little while, so we may have to continue this discussion some other day.
<scymtym>
phoe: i wanted to ask multiple times but forgot (or i already asked and forgot the answer): do you also make the slides available?
orivej has quit [Ping timeout: 265 seconds]
orivej has joined #lisp
gaqwas has joined #lisp
gaqwas has joined #lisp
gaqwas has quit [Changing host]
kaftejiman has joined #lisp
shifty has joined #lisp
orivej has quit [Ping timeout: 240 seconds]
orivej has joined #lisp
mindCrime has quit [Ping timeout: 240 seconds]
orivej has quit [Ping timeout: 260 seconds]
orivej has joined #lisp
notzmv has quit [Ping timeout: 246 seconds]
notzmv has joined #lisp
czrrrr has quit [K-Lined]
contrapunctus has left #lisp ["Disconnected: closed"]
contrapunctus has joined #lisp
notzmv has quit [Ping timeout: 264 seconds]
libertyprime has quit [Ping timeout: 265 seconds]
shifty has quit [Remote host closed the connection]
shifty has joined #lisp
terpri has joined #lisp
orivej has quit [Ping timeout: 240 seconds]
orivej has joined #lisp
<Bike>
hey jackdaniel, quick question if you're around - does "return @logxor(2,x,ecl_make_fixnum(-1));" mean 2 xor x xor -1, or does the 2 just indicate the number of arguments so that it's x xor -1
<jackdaniel>
Bike: the first argument indicates number of remaining arguments
<Bike>
thought so. thank you.
<jackdaniel>
so it means (logxor x -1)
cosimone has quit [Quit: Quit.]
<jackdaniel>
sure
notzmv has joined #lisp
terpri has quit [Remote host closed the connection]
terpri has joined #lisp
ayuce has joined #lisp
cosimone has joined #lisp
kerosin has joined #lisp
gaqwas has quit [Remote host closed the connection]
shidima has joined #lisp
orivej has quit [Ping timeout: 240 seconds]
orivej has joined #lisp
shidima has quit [Ping timeout: 240 seconds]
<Fare>
jackdaniel, there was a bug report about ECL and ASDF recently regarding :init-name, did you see it?
<Fare>
your input as to what ASDF *should* be doing would be welcome.
bhartrihari has left #lisp ["Disconnected: Replaced by new connection"]
bhartrihari has joined #lisp
elflng has quit [Ping timeout: 246 seconds]
<jackdaniel>
Fare: it should pass init-name argument from the build operatation to the operator in ecl
<jackdaniel>
without modification
<jackdaniel>
or a substitute value
<jackdaniel>
afair I've opened issue in asdf issue tracker at some point of time when the init-name argument became more meaningful, but I may be wrong with this memory
cosimone has quit [Remote host closed the connection]
<Fare>
jackdaniel, I'm not developing asdf anymore, but I believe rpgoldman could use your help figuring out what to do. Apparently the recent change to ASDF doesn't work well in all situations, particularly so for bundle operations.
<Fare>
There again, reunifying the two forks of ASDF would be nice.
kaftejiman_ has joined #lisp
cosimone has joined #lisp
kaftejiman has quit [Ping timeout: 256 seconds]
<jackdaniel>
asdf bundled with ecl is not really a fork, rather a freezed version from before 3.2 jump with few fixes backported. I have not time to play catch with asdf changes, but users are free to use upstream version at their own discretion
<jackdaniel>
as of helping with figuring the right thing: the right thing is to carry the initarg :init-name from the function invocation in asdf:build-* down to the call to c::build-* function from ecl's compiler
EvW1 has joined #lisp
<jackdaniel>
I find control flow in asdf with sideways, downward and whatever operations too hard to follow to tell how the initarg should be passed, this is certainly a very clever program control, maybe just too clever for me
orivej has quit [Remote host closed the connection]
elflng has joined #lisp
orivej has joined #lisp
<Fare>
What initarg? To c::build-* function? It is wholly orthogonal to ASDF dependencies, and should not care about the operations having any kind of dependencies.
elflng has quit [Ping timeout: 256 seconds]
<Fare>
The dependency protocol was explained I believe in the extended version of my ELS 2014 article.
elflng has joined #lisp
<Fare>
Yes, it's elaborate, but mostly you don't need to know about it unless you're writing ASDF extensions. It doesn't affect c::build* initargs.
bocaneri has quit [Remote host closed the connection]
orivej has quit [Ping timeout: 240 seconds]
orivej has joined #lisp
cosimone has quit [Remote host closed the connection]
kaftejiman_ has quit [Remote host closed the connection]
shidima has joined #lisp
<jackdaniel>
if you look at the old version of asdf, the function asdf:make-build had an argument called init-name. it may be still accessed from extra-build-args, which (in upstream) asdf are only passed if the operation is a subtype of image-op. I don't know what magic goes on in between, but later (in upstream) asdf init-args are being getf from build-args and passed to cmp:builder in function create-image, not
<jackdaniel>
from extra-build-args, so that may be it. in (not upstream) asdf it is indeed part of "normal" build args.
mindCrime has joined #lisp
<jackdaniel>
as of elaborate explanations for various design decisions, I believe that you wrote one, and I probably read it at some point; but that's beside the point, I'm just saying that it is too much spaghetti to me
<Fare>
I would just object that this code heavy in small incremental class and method definitions is the opposite of spaghetti. It's more like rice. Not that this makes understanding necessarily easier.
<Fare>
But spaghetti is when there are long functions of hundreds of lines of code and such
<aeth>
I don't understand this. Outside of SLIME, SBCL doesn't error. Inside of SLIME, SBCL errors with an invalid array index, probably with the underlying stream buffer. CCL is the same. In the terminal, ECL always errors, saying that unread-char has been called twice. ECL has the same index issue inside of SLIME. (with-input-from-string (s "1") (let ((c (read-char s))) (print c) (unread-char c)))
<Fare>
the longest function in ASDF is compute-action-stamp, that's 92 lines with comments, 59 lines when trivially reformatted without comments.
<aeth>
It looks like swank+slime overrides string input streams with its own custom stream that doesn't properly unread... It also looks like ECL 16.1.3 independently has its own issue with trying to call UNREAD-CHAR on string input streams
orivej has quit [Quit: No Ping reply in 180 seconds.]
<Fare>
aeth: SLIME uses a not-so-standard kind of stream for I/O
<froggey>
aeth: did you mean to call unread-char on *standard-input* instead of s?
<aeth>
froggey: ah, good catch
<aeth>
froggey: not one implementation told me!
<aeth>
useless error messages!
<Fare>
froggey, what's the status of mezzano?
orivej has joined #lisp
<froggey>
aeth: well, that's what #lisp is for ;)
<froggey>
Fare: demo 5 was released a few weeks ago, I think there was a short video posted earlier today
<aeth>
froggey: I guess I should've been suspicious when SBCL (but only SBCL, not the other two) told me swank was involved
<Fare>
nice
<Fare>
froggey, how do you deal with filesystems?
<froggey>
the two primary file systems are the local fs, which is implemented entirely in-image and relys on saving the world to actually persist data, and the other is the remote fs, a simple network file system
<froggey>
there are also implementations of fat & ext2/3/4, but I didn't write them so I don't know much about the state of them
elflng has quit [Ping timeout: 264 seconds]
elflng has joined #lisp
rumbler31 has joined #lisp
orivej has quit [Ping timeout: 256 seconds]
orivej_ has joined #lisp
<Fare>
what about GC and IO? Do you disable GC during I/O? Do you have a real-time GC? Both?
vaporatorius has joined #lisp
theBlackDragon has quit [Remote host closed the connection]
vaporatorius__ has quit [Ping timeout: 256 seconds]
narimiran has quit [Ping timeout: 265 seconds]
theBlackDragon has joined #lisp
<froggey>
no to both. the GC is a STW generational collector and it can run during IO
<froggey>
hardware interrupts can interrupt the GC, as the handlers are written to be safe for that. no allocating or accessing memory that the GC might move
<froggey>
a bit of a problem for audio, as the non-interrupt code that fills output buffers gets paused when GCs occur, but other devices deal with it fine
<froggey>
also disk drivers are written so they operate "under" the GC. they do all their allocation up-front at device initialization time and don't touch copyable memory
rumbler31 has quit [Ping timeout: 244 seconds]
orivej_ has quit [Ping timeout: 246 seconds]
elias_ has joined #lisp
<elias_>
hi guys, new to irc, new to lisp.
orivej has joined #lisp
<elias_>
can anyone drop an example of a good initial project to help me learn and exercise some important concepts in lisp?
<Xach>
elias_: cl-ppcre is dense but interesting
moon-child has quit [Read error: Connection reset by peer]
moon-child has joined #lisp
<elias_>
so is that to say, study that code and aim to recreate something similar? i like the idea of trying to implement regex
moon-child has quit [Read error: Connection reset by peer]
orivej has quit [Ping timeout: 256 seconds]
orivej_ has joined #lisp
xrash has joined #lisp
notzmv has joined #lisp
notzmv is now known as Guest22937
<Xach>
elias_: not necessarily recreate, but it covers a lot of techniques and tools in the cl toolbox that are applicable to other things
<elias_>
implement it in other projects, sounds good.
Guest22937 has quit [Ping timeout: 260 seconds]
bitmapper has quit [Ping timeout: 260 seconds]
elflng has quit [Quit: leaving]
elflng has joined #lisp
moon-child has joined #lisp
orivej_ has quit [Remote host closed the connection]
ajithmk has quit [Quit: Connection closed for inactivity]
xkapastel has quit [Quit: Connection closed for inactivity]
moon-child has joined #lisp
akoana has joined #lisp
<pve>
elias_: Use drakma and cl-ppcre to fetch news headlines from a few news sites and display them in a terminal. You can also use cl-ppcre to filter the headlines based on interesting keywords, or come up with a more creative filtering method.
zigpaw has joined #lisp
davsebamse has joined #lisp
wsinatra has quit [Quit: WeeChat 2.9]
<elias_>
pve: that sounds exactly like what I want to do, amazing, thank you.
orivej has quit [Ping timeout: 246 seconds]
orivej has joined #lisp
moon-child has quit [Read error: Connection reset by peer]
<pve>
elias_: np, have fun
shidima has quit [Ping timeout: 240 seconds]
EvW1 has quit [Ping timeout: 260 seconds]
moon-child has joined #lisp
ebrasca has quit [Remote host closed the connection]
bhartrihari has left #lisp ["Disconnected: Replaced by new connection"]
bhartrihari has joined #lisp
moon-child has quit [Client Quit]
orivej has quit [Ping timeout: 256 seconds]
jw4 has quit [Quit: tot siens]
orivej has joined #lisp
jw4 has joined #lisp
<phoe>
scymtym: I only upload the videos, BUT if you make them available in some location then I can add the link to video description.
flak has joined #lisp
rumbler31 has joined #lisp
ggole has quit [Quit: Leaving]
rippa has quit [Read error: Connection reset by peer]
Inoperable has quit [Quit: All your buffer are belong to us!]
<scymtym>
phoe: thanks. i will think about it. my main concern is such a link going dead after some time
<phoe>
scymtym: put the presentation on some git repo
<phoe>
maybe even in Closeau or nearby it
In0perable has joined #lisp
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #lisp
Guest90000 is now known as bmansurov
samlamamma has joined #lisp
EvW has quit [Ping timeout: 244 seconds]
samlamamma has quit [Read error: Connection reset by peer]
orivej has quit [Ping timeout: 240 seconds]
pve has quit [Quit: leaving]
orivej has joined #lisp
barryfm has joined #lisp
barryfm has quit [Client Quit]
orivej has quit [Remote host closed the connection]
orivej has joined #lisp
xkapastel has joined #lisp
<_death>
scymtym: thanks :)
moon-child has joined #lisp
msk has quit [Ping timeout: 256 seconds]
orivej has quit [Ping timeout: 256 seconds]
orivej has joined #lisp
gravicappa has quit [Ping timeout: 240 seconds]
Aurora_v_kosmose has joined #lisp
ayuce has quit [Remote host closed the connection]
lucasb has joined #lisp
bsd4me has joined #lisp
satousan has joined #lisp
czrrrr has joined #lisp
czrrrr has quit [Excess Flood]
sjl_ has quit [Ping timeout: 246 seconds]
dominic34 has joined #lisp
dominic34 has quit [Excess Flood]
EvW1 has joined #lisp
dominic34 has joined #lisp
kerosin has quit [Remote host closed the connection]
orivej has quit [Read error: Connection reset by peer]
torbo has joined #lisp
satousan has quit [Client Quit]
orivej has joined #lisp
White_Flame has quit [Ping timeout: 256 seconds]
White_Flame has joined #lisp
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #lisp
Aurora_v_kosmose has quit [Remote host closed the connection]
Aurora_v_kosmose has joined #lisp
bitmapper has joined #lisp
pyx has joined #lisp
pyx has quit [Client Quit]
shifty has joined #lisp
mikecheck has joined #lisp
kaftejiman has joined #lisp
bsd4me has quit [Ping timeout: 240 seconds]
dra has quit [Remote host closed the connection]
hendursaga has quit [Ping timeout: 240 seconds]
hendursaga has joined #lisp
orivej has quit [Quit: No Ping reply in 180 seconds.]
Duuqnd has quit [Quit: Leaving]
orivej has joined #lisp
dominic34 has quit [Ping timeout: 256 seconds]
bsd4me has joined #lisp
dominic34 has joined #lisp
orivej has quit [Remote host closed the connection]
orivej has joined #lisp
rpg has joined #lisp
<Josh_2>
I'm trying to use compute-slots to add an extra slot using the MOP but I keep getting the same error https://plaster.tymoon.eu/view/1983#1983 (this is my first time messing with the MOP directly)
nicktick has quit [Ping timeout: 256 seconds]
<Josh_2>
the function compiles but when I create an instance of 'locked-object i get the error "no applicable method for the generic function 'slot-definition-allocation' when called with 'EFFECTIVE-SLOT-DEFINITION METALOCK::SLOT-LOCKS'"
bhartrihari has joined #lisp
cosimone has quit [Quit: Quit.]
cosimone has joined #lisp
satousan has joined #lisp
random-nick has quit [Ping timeout: 240 seconds]
bsd4me has quit [Remote host closed the connection]
<Josh_2>
Oh boy oh boy
bsd4me has joined #lisp
satousan has quit [Ping timeout: 256 seconds]
shka_ has quit [Ping timeout: 260 seconds]
orivej_ has joined #lisp
bhartrihari has left #lisp ["Disconnected: Replaced by new connection"]
orivej has quit [Ping timeout: 240 seconds]
<Josh_2>
I think I will try this again tomorrow, after plenty of sleep