overclucker has quit [Quit: ZNC 1.7.2+deb3 - https://znc.in]
son0p has quit [Ping timeout: 246 seconds]
drainpipe has quit [Ping timeout: 246 seconds]
spec has joined #commonlisp
overclucker has joined #commonlisp
drainpipe has joined #commonlisp
rselim has joined #commonlisp
rselim has quit [Changing host]
jmdaemon has joined #commonlisp
dcb has quit [Quit: MSN Messenger 4.0.2]
bilegeek has joined #commonlisp
doyougnu has quit [Ping timeout: 246 seconds]
habamax has quit [Ping timeout: 272 seconds]
habamax has joined #commonlisp
son0p has joined #commonlisp
jeosol has joined #commonlisp
Psybur has quit [Ping timeout: 240 seconds]
Oladon has joined #commonlisp
dinomug has joined #commonlisp
BNAndras has joined #commonlisp
BNAndras has quit [Remote host closed the connection]
notzmv has quit [Ping timeout: 246 seconds]
ming_ has joined #commonlisp
yewscion has quit [Read error: Connection reset by peer]
notzmv has joined #commonlisp
bilegeek has quit [Quit: Leaving]
jeosol has quit [Quit: Client closed]
habamax has quit [Ping timeout: 252 seconds]
habamax has joined #commonlisp
ming_ has quit [Quit: Leaving]
ming_ has joined #commonlisp
Oladon has quit [Quit: Leaving.]
Cymew has joined #commonlisp
ming_ has quit [Remote host closed the connection]
yewscion has joined #commonlisp
rgherdt has joined #commonlisp
thollief has joined #commonlisp
igemnace has joined #commonlisp
mxmkm has joined #commonlisp
waleee has quit [Ping timeout: 246 seconds]
waleee has joined #commonlisp
mxmkm has quit [Read error: Connection reset by peer]
Krystof has joined #commonlisp
rgherdt_ has joined #commonlisp
rgherdt has quit [Read error: Connection reset by peer]
rgherdt_ is now known as rgherdt
bendersteed has joined #commonlisp
habamax has quit [Remote host closed the connection]
msavoritias has joined #commonlisp
Gleefre has joined #commonlisp
mm007emko has joined #commonlisp
louis` has joined #commonlisp
markb1 has quit [Ping timeout: 258 seconds]
shka has joined #commonlisp
markb1 has joined #commonlisp
Inline has joined #commonlisp
Inline has quit [Remote host closed the connection]
dino_tutter has joined #commonlisp
habamax has joined #commonlisp
pve has joined #commonlisp
dinomug has quit [Remote host closed the connection]
mgl has joined #commonlisp
Lord_of_Life has quit [Ping timeout: 245 seconds]
seanw has quit [Remote host closed the connection]
Lord_of_Life has joined #commonlisp
seanw has joined #commonlisp
<louis`>
I rarely see anyone using structures in Common Lisp. Although for my use cases they would be good enough. Are they actually discouraged or is there a reason why one would use (probably) heavier CLOS objects instead, if you don't need to define methods?
<jackdaniel>
you may specialize methods on structures without much an issue
<jackdaniel>
the problem with structures is that they can't be redefined at runtime
<jackdaniel>
on one hand that gives the compiler more to work with when it optimizes, on the other it is quite daunting during development (or maintanance if you are into long running image-based applications that are updated at runtime)
<jackdaniel>
also clos classes may have multiple-inheritance
<jackdaniel>
or standard classes, to avoid being corrected :)
<lonjil>
I suppose what you'd want then are classes that behave as standard classes during development, but but become unalterable when deployed to your production system.
OlCe has joined #commonlisp
<hayley>
I really want classes which behave as standard classes and run fast in production. And maybe a pony.
<jackdaniel>
I don't think that standard classes are very slow
<jackdaniel>
especially if you pile on top of that sealed domains (c.f fast generic functions) and fast generic function dispatch technique (c.f fast generic function dispatch)
<jackdaniel>
it is easy to imagine scenarios where this is not good enough, but it is such a narrow class of applications that it requires explicit justification
<louis`>
jackdaniel: thanks for that, the lack of redefinition is a good argument
<jackdaniel>
sure
<mfiano>
AMOP gives an example of how one could do something like this, and I designed something like it for one of my many game engine attempts, that I'd have to dig up, but phoe has a copy and was going to include it as a recipe in Common Lisp Recipes 2.0 if that ever happens.
<jackdaniel>
because one could agonize that their reader is slow, because it goes at least through two function calls, while they do something 100% silly like calling a reader multiple times inside a loop (instead of lifting it before it)
<hayley>
I also want loop-invariant code motion, so.
<jackdaniel>
if the function is generic, you can't decide whether the call is an invariant
<jackdaniel>
(because they may be redefined, duh! :)
<hayley>
Hoist the dispatch out of the loop, so that you have concrete types in (each version of) the loop, and de-optimise code if you redefine.
<hayley>
(You got me as I'm writing down these ideas for something - congratulations.)
<jackdaniel>
yay me
<jackdaniel>
I'm on the other hand working on adding a cons kingdom to the subtypep procedure proposed by Baker (and implemented in ECL)
<jackdaniel>
recursive types go brrt
<Nilby>
louis`: structures are fine, providied you can withstand lispers virtual glares of smugness https://i.redd.it/k3xx7hhswfu91.png . You can switch to standard-objects if you need to.
vn36 has joined #commonlisp
Gleefre has quit [Remote host closed the connection]
Gleefre has joined #commonlisp
jonatack has quit [Ping timeout: 245 seconds]
karlosz has joined #commonlisp
Gleefre has quit [Remote host closed the connection]
Gleefre has joined #commonlisp
random-nick has joined #commonlisp
Josh_2 has joined #commonlisp
mm007emko has quit [Quit: Client closed]
<louis`>
Nilby: hehe, that's hilarious :-)
Gleefre has quit [Remote host closed the connection]
Gleefre has joined #commonlisp
dlowe has quit [Remote host closed the connection]
Demosthenex has quit [Ping timeout: 250 seconds]
Demosthenex has joined #commonlisp
<pjb>
louis`: have a look at com.informatimago.common-lisp.cesarum.utility:define-structure-class
phadthai has quit [Ping timeout: 245 seconds]
phadthai has joined #commonlisp
bird_ has quit [Ping timeout: 260 seconds]
mgl has quit [Quit: Client closed]
Josh_2 has quit [Remote host closed the connection]
karlosz has quit [Quit: karlosz]
kevingal has joined #commonlisp
jonatack has joined #commonlisp
karlosz has joined #commonlisp
<louis`>
pjb: thank you, that looks interesting! Could be exactly what I need.
doyougnu has joined #commonlisp
bird_ has joined #commonlisp
doyougnu has quit [Client Quit]
Josh_2 has joined #commonlisp
doyougnu has joined #commonlisp
tyson2 has joined #commonlisp
<louis`>
I can't believe I bought a LispWorks license today.
<louis`>
I evaluated for about a year ... but their overall product and quality is so good, I could not resist any longer.
OlCe has quit [Ping timeout: 272 seconds]
euandreh has quit [Ping timeout: 250 seconds]
<beach>
louis`: What is it that is good about it? It's an honest question since I have never used it, but I am interested in knowing its advantages.
euandreh has joined #commonlisp
<louis`>
CAPI is one part that I'm particulary fond of. Also, I appreciate how easy it is to use breakpoints and step through your code. Regarding the compiler, I can't say of it is better than something like SBCL - that has to be seen. Their documentation is an outstanding example of anything (I know about) existing in the Common Lisp community.
<beach>
Sounds good. Thanks for the information.
<louis`>
I'm not using it yet for anything serious but from what I see is that their FFI and Java interface are pretty amazing. My plan is to have a great IDE where I can continue my learning journey and finally work my way through PAIP :)
<jackdaniel>
louis`: while many people praise CAPI (and I have no doubt that it is very good), keep in mind that programs written for CAPI will work only on lispworks
<louis`>
jackdaniel: I know
mgl has joined #commonlisp
<jackdaniel>
alright then :)
Lycurgus has joined #commonlisp
Lycurgus has joined #commonlisp
Lycurgus has quit [Changing host]
<Lycurgus>
it and allegro are imo the most solid implementations and it has the better licensing
<Lycurgus>
you can use free though, no need to buy unless ur chaffed by the timeout or wann distribute something
<jackdaniel>
how do you measure being solid?
<Lycurgus>
and saving images igess
<Lycurgus>
solid: runs stuff other implementations trip on
<Lycurgus>
allegro is actually a lil better in my experience on that
* jackdaniel
is curious about what is "that" - which things other implementations trip on that lw and allegro handle well
<Lycurgus>
but im not a lisp monoglot, don't live in it
bendersteed has quit [Ping timeout: 272 seconds]
<Lycurgus>
that is general some random ass pkg from the prior century
cage has joined #commonlisp
<Lycurgus>
it's idea is nice and turnkey too
<Lycurgus>
*ied
<Lycurgus>
**ide
<Lycurgus>
somebody has a job if they're dropping 1500 usd on it tho
<Lycurgus>
(the price last i knew)
mm007emko has joined #commonlisp
<Lycurgus>
*generally
<hayley>
Allegro starts at $599 with technical support, if you are an academic user.
<Lycurgus>
speaking of random ass pkgs, anybody know where there's a copy of R. Brachmans CLASSIC or CLASSIC2, was supposed to have been distributed to a bunch of unis and
<Lycurgus>
sort of interested if I'm missing cl repos in my list of usual suspects
waleee has quit [Ping timeout: 258 seconds]
Gleefre has quit [Remote host closed the connection]
habamax has quit [Quit: ERC 5.5.0.29.1 (IRC client for GNU Emacs 29.0.92)]
Gleefre has joined #commonlisp
karlosz has quit [Ping timeout: 272 seconds]
NotThatRPG has joined #commonlisp
attila_lendvai has joined #commonlisp
<lieven>
have you tried asking him? he has contact info on his website
<Lycurgus>
don't want it that bad
<Lycurgus>
more interested in broadening reach for such things
<lieven>
if it's not on the old cmu ai server it's probably been lost in time
<Lycurgus>
in the papers describing it, it says that one site reimplemented the theory in 5 man weeks in c++
<lieven>
or maybe bitsavers although they're more into OSes
<Lycurgus>
and that's prolly the way to go folded in with mooting entirely in view of having reviewed how maps to what should be done now with current resources
dino_tutter has quit [Ping timeout: 272 seconds]
<Lycurgus>
bitsaves is a known known
<Lycurgus>
r
<Lycurgus>
ditto ofc for cmu (i actually have the CDs from primetimeai)
<Lycurgus>
having a cornell or whereever account would no doubt locate something, enough such since it was supposed to have been distributed to more than 40
vn36 has quit [Ping timeout: 245 seconds]
<Josh_2>
Good afternoon :trumpet:
Lycurgus has quit [Quit: Exeunt: personae.ai-integration.biz]
notzmv has quit [Ping timeout: 245 seconds]
<NotThatRPG>
Is minion still here?
<beach>
I haven't seen neither minion nor specbot for some time.
<beach>
And I don't remember who is in charge these days.
<NotThatRPG>
I was going to give an answer to Lycurgus on their return
Lycurgus has joined #commonlisp
Lycurgus has quit [Changing host]
Lycurgus has joined #commonlisp
tyson2` has joined #commonlisp
<Lycurgus>
NotThatRPG, in re CLASSIC?
<Lycurgus>
in any case, this is a publicly logged channel so i'll see ur response
Lycurgus has quit [Client Quit]
jmdaemon has quit [Ping timeout: 246 seconds]
<yitzi>
specbot was last used on 7July.
<NotThatRPG>
Lycurgus: yes. I had a copy of it a while ago, when I was working at a different place, and we needed to get a license from Bell Labs to get it.
<NotThatRPG>
Lycurgus: "Classic" is not a great name for doing keyword search!!!
<Lycurgus>
no for this purpose in isolation it's useless
<NotThatRPG>
Even "Classic" and "description logic" just gives me papers that talk about classic.
<Lycurgus>
and in view of your experience with it you agree reimplementing in the stuffs of today is the way to go?
vn36 has joined #commonlisp
<Lycurgus>
(in which case why would I want to ask permission from Bell Labs or whoever owns it now?)
<NotThatRPG>
From Peter Patel-Schneider's page: "Two Classic systems, one written in LISP and one written in C++, are available from Lucent. Non-commercial use requires only the signing of a simple license. Commercial use requires negotaion with Lucent. "
attila_lendvai has quit [Read error: Connection reset by peer]
<NotThatRPG>
Lycurgus: If one is interested in description logics, probably the best thing to do would be to build on top of Wilbur, Ora Lassila's RDF-wrangling library
<NotThatRPG>
(or interface to the Python library Owlready2)
attila_lendvai has joined #commonlisp
<Lycurgus>
yeah if that was what focusing indicated i'd like use SUMO
<Lycurgus>
the main implementation which happens to be lisp on that
pieguy128 has joined #commonlisp
Oladon has joined #commonlisp
<Lycurgus>
*likely;but will check out Wilbur which i don't recall, ty!
Noisytoot has quit [Ping timeout: 240 seconds]
lucasta has joined #commonlisp
<Lycurgus>
my bad, the SUMO thing (adam pease) i was referencing is java, after saying lisp i thought that sounded wrong and was maybe prolog
<Lycurgus>
which i have zero problem using vs going to Mr Corporate Evil hat in hand
mgl has quit [Quit: Client closed]
anticomputer has quit [Remote host closed the connection]
anticomputer has joined #commonlisp
<NotThatRPG>
Lycurgus: Prolog is probably the best paradigm for interacting with RDF or OWL. OWL is really a *database* or *logic* language. It *looks like* an object-oriented language, but most emphatically is not.
<Lycurgus>
aye
<NotThatRPG>
I have seen many projects founder trying to translate OWL to some object system. It's a terrible idea.
<Lycurgus>
but i'll use a java thing
Noisytoot has joined #commonlisp
<NotThatRPG>
I'm not a fan of those Java libraries -- I have found them to be bloated, have enormous dependency tails and I have never been able to wrap my heads around them. I hear good things about Owlready, and it's always easier to find a path into a Python library than a Java one.
<Lycurgus>
are you referring specifically to SigmaKEE?
<NotThatRPG>
(also the authors' seem to be confused and think that javadoc is "documentation").
<NotThatRPG>
No, RDFLib, OWLAPI, etc.
<Lycurgus>
ah, ok
<Lycurgus>
not RPG IV or not Role Playing Game?
<NotThatRPG>
That stuff all sits below Protege, and it's part of why (IMO) Protege is unmaintainable.
<NotThatRPG>
Not Richard P. Gabriel
<Lycurgus>
ah
<Lycurgus>
yeah Protege is like Eclipse only moreso
dino_tutter has joined #commonlisp
<Lycurgus>
but flake and/or rot isn't an inherent property of java
<NotThatRPG>
Lycurgus: No, but Java + enormous library I do think leads to rot. The way Java forces (or just encourages) people to throw functionality into arbitrary class definitions makes it painfully difficult to figure out where the functionality you want lives. Also the fact that you have to use Eclipse + some inscrutable build tool. I find Python much more welcoming because it's a lot easier to just fire up a library and
<NotThatRPG>
experiment with it. YMMV
rogersm has joined #commonlisp
<Lycurgus>
Wilbur looks like it would demonstrate the earlier mentioned sense of solidity of an implementation
<Lycurgus>
but yeah, agree RDF stuff wants to be in prolog
<Lycurgus>
bbl
Lycurgus has quit [Quit: Exeunt: personae.ai-integration.biz]
rogersm has quit [Client Quit]
Lycurgus has joined #commonlisp
<Lycurgus>
and do find I had Wilbur bookmarked
Lycurgus has quit [Client Quit]
mm007emko has quit [Quit: Client closed]
dcb has joined #commonlisp
eddof13 has joined #commonlisp
rainthree has joined #commonlisp
Psybur has joined #commonlisp
Oladon has quit [Quit: Leaving.]
attila_lendvai has quit [Read error: Connection reset by peer]
eddof13 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
attila_lendvai has joined #commonlisp
Gleefre has quit [Remote host closed the connection]
Gleefre has joined #commonlisp
cage has quit [Remote host closed the connection]
cage has joined #commonlisp
cage has quit [Remote host closed the connection]
cage has joined #commonlisp
eddof13 has joined #commonlisp
eddof13 has quit [Client Quit]
lucasta has quit [Remote host closed the connection]
<Shinmera>
beach: I think it was stassats last, but he's not active on IRC often anymore.
<beach>
That's my impression as well.
azimut has quit [Ping timeout: 240 seconds]
<Shinmera>
Either way, if there's something missing from Colleen that would be useful, lmk.
jmdaemon has joined #commonlisp
<|3b|>
people on #common-lisp.net could restart it, but apparently it currently is banned by the server :/
alcor has joined #commonlisp
mgl has joined #commonlisp
OlCe has joined #commonlisp
igemnace has quit [Remote host closed the connection]
attila_lendvai has quit [Read error: Connection reset by peer]
dcb has joined #commonlisp
attila_lendvai has joined #commonlisp
attila_lendvai has quit [Read error: Connection reset by peer]
attila_lendvai has joined #commonlisp
mgl has quit [Quit: Client closed]
tyson2 has quit [Remote host closed the connection]
tyson2` has quit [Ping timeout: 272 seconds]
dcb has quit [Ping timeout: 272 seconds]
dcb has joined #commonlisp
dcb has quit [Ping timeout: 246 seconds]
cage has quit [Quit: rcirc on GNU Emacs 28.2]
dcb has joined #commonlisp
jonatack has quit [Quit: WeeChat 3.8]
beach` has joined #commonlisp
kevingal has quit [Ping timeout: 258 seconds]
beach has quit [Ping timeout: 260 seconds]
Oladon has joined #commonlisp
bjorkintosh has quit [Remote host closed the connection]
bjorkintosh has joined #commonlisp
bjorkintosh has joined #commonlisp
bjorkintosh has quit [Changing host]
masinter has quit [Remote host closed the connection]
alcor has quit [Read error: Connection reset by peer]
attila_lendvai has quit [Read error: Connection reset by peer]
attila_lendvai has joined #commonlisp
vn36 has quit [Remote host closed the connection]
alcor has joined #commonlisp
dcb has quit [Quit: MSN Messenger 4.0.2]
dcb has joined #commonlisp
jonatack has joined #commonlisp
Inline has joined #commonlisp
rainthree has quit [Quit: Leaving]
Inline has quit [Remote host closed the connection]
Inline has joined #commonlisp
yewscion has quit [Ping timeout: 246 seconds]
yewscion has joined #commonlisp
tyson2 has joined #commonlisp
zxcvz has joined #commonlisp
bollu has quit [Quit: Ping timeout (120 seconds)]
bollu has joined #commonlisp
Inline has quit [Quit: Leaving]
Inline has joined #commonlisp
tyson2 has quit [Remote host closed the connection]
Inline has quit [Quit: Leaving]
igemnace has joined #commonlisp
igemnace has quit [Remote host closed the connection]
thollief has quit [Quit: Leaving]
Inline has joined #commonlisp
rgherdt has left #commonlisp [Leaving]
igemnace has joined #commonlisp
akoana has joined #commonlisp
perrierjouet has quit [Quit: WeeChat 4.0.1]
msavoritias has quit [Remote host closed the connection]
<aeth>
minion?
<aeth>
I'm not surprised if minion got banned by the network because it didn't do exponential dropoff on its reconnect attempts so it would regularly (maybe several times a year) reconnect flood #lisp (but not here?) and a few other channels every few years.
zxcvz has quit [Quit: zxcvz]
<aeth>
or maybe closer to once a year?
<aeth>
Oh wait, this network isn't that old, so probably twice a year
<|3b|>
yeah, probably due to that
waleee has joined #commonlisp
azimut has joined #commonlisp
tyson2 has joined #commonlisp
dinomug has joined #commonlisp
attila_lendvai has quit [Read error: Connection reset by peer]
attila_lendvai has joined #commonlisp
Gleefre has quit [Remote host closed the connection]
markb1 has quit [Remote host closed the connection]
Gleefre has joined #commonlisp
mi6x3m has joined #commonlisp
<mi6x3m>
hey, is there a way to "extend" loop to support something like "loop for each line in file foo.txt"
<mi6x3m>
or is it better to defmacro for-each-line in file / in string
<|3b|>
not portably
<|3b|>
you can replace it with a different extensible iteration construct like iterate, or replace it with an extensible implementation of LOOP, or possibly use implementation-specific extension hooks
<|3b|>
though for that specific case, (loop for line = (read-line stream nil stream) until (eql line stream) ...) is fairly idiomatic
<|3b|>
or (loop for line = (read-line stream nil) while line ...), since READ-LINE can't return a NIL normally unlike READ
attila_lendvai has quit [Ping timeout: 272 seconds]
dino_tutter has quit [Ping timeout: 272 seconds]
<mi6x3m>
|3b|, thanks but will it work with = alone?
<mi6x3m>
I thought you have to specify read-line 2 times
<|3b|>
(loop for x = (...)) evaluates (...) on every iteration, and doesn't terminate on its own
<|3b|>
(loop for x = (a) then (b)) evaluates (a) on the first iteration to initialize x, then (b) on every subsequent iteration, and similarly doesn't include any termination test
<mi6x3m>
well, yes, then I need no macro
<|3b|>
in this case we want the same thing on all iterations, so we don't need the THEN variant
<mi6x3m>
always thought = (...) evaluates only 1 time like in (do ...
<|3b|>
if you want something that only evaluates and initializes once, you can use (loop with x = (...)), which only sets X once before the loop (and thus only evaluates (...) once as well)
<mi6x3m>
yep, thanks, no macro then
<mi6x3m>
it was all based on stupid assumptions
shka has quit [Ping timeout: 246 seconds]
<mi6x3m>
|3b| is there an official documentation on all the loop variants somewhere?
<mi6x3m>
I found it, I can't believe I was so asumptious
<|3b|>
that is (a html formatted version of a draft of) the official standard of the CL language, so fairly official, and has all the details once you learn to find them
<|3b|>
as a standard it isn't always the easiest to find things in though, since it is more intended for specifying than educating
<|3b|>
nice once you get used to it, but that can take a while :)
* |3b|
is referring specifically to the "common lisp hyperspec" aka "CLHS" at that link, not the whole lispworks.com site, just to be clear.
<|3b|>
lispworks.com is a specific vendor who sells an implementation of common lisp, and who made that html version of (a draft of) the standard, so other things on the site are probably specific to the lispworks implementation
mi6x3m has quit [Ping timeout: 272 seconds]
bilegeek has joined #commonlisp
<aeth>
the hyperspec isn't the easiest to navigate because it's vintage 1990s HTML
<aeth>
each tiny section gets its own page instead of having larger pages with a navigation sidebar like, say, a 2005 site would have
<aeth>
it says copyright 1996-2005 but I think the only change in 2005 is changing the background to white instead of the ugly original background color like the 1990s internet would have used
<|3b|>
yeah, that too
<aeth>
(I think the navigation images are a bit different from the original, too, but it still uses navigation images like a 1996 site)
Gleefre has quit [Remote host closed the connection]
OlCe has quit [Ping timeout: 245 seconds]
alcor has quit [Remote host closed the connection]
Gleefre has joined #commonlisp
Gleefre has quit [Remote host closed the connection]
Gleefre has joined #commonlisp
pve has quit [Quit: leaving]
randm has joined #commonlisp
bilegeek has quit [Ping timeout: 245 seconds]
Gleefre has quit [Ping timeout: 246 seconds]
waleee has quit [Ping timeout: 246 seconds]
Inline has quit [Ping timeout: 272 seconds]
louis` has quit [Ping timeout: 245 seconds]
louis` has joined #commonlisp
louis` has quit [Ping timeout: 245 seconds]
tibfulv has quit [Read error: Connection reset by peer]