Re: Naive DEFSYSTEM replacement

"Marco Antoniotti (as marco dot antoniotti at unimib dot it)" <[email protected]>
Newsgroups gmane.lisp.lispworks.general
Message-ID <CAG0Nw2nC=6fbY5uTy9taciDyOLfjL7jinvZmS37ut+5sPe=Viw@mail.gmail.com>
On Sun, Jul 27, 2025 at 2:08 PM Adam Weaver <[email protected]> wrote:

> On Sun, 2025-07-27 at 13:18 +0200, Marco Antoniotti wrote:
> > On Sun, Jul 27, 2025 at 11:27 AM Adam Weaver <[email protected]>
> > wrote:
> > >
> > >
> > > (defun >box (&key title rhs secondary padded id content)
> > >   (html
> > >     (:div (:class "box" :class secondary :class padded :id id)
> > >           (when title (html (>inline :between t :class "box-title")
> > >
> > >                             (:span () title) rhs))
> > >           content)))
>
> > Of course.  Of course.  Let me see what happens when you do
> >
> > cl-prompt> (>box)
> >
>
> Well it generates what I think it should ...
>
> CL-USER> (riskmate::>box)
> "<div class=\"box\"></div>"
> CL-USER>
>
> ... what did *you* think it would generate?
>
>
A proper object with a proper and well controlled PRINT-OBJECT
method 😏 (controlled by the printer's parameters and others as well).

CL-USER 6 > *(<:div (:class "box" :id 42) (<:p () "Foo"))* ; You can write
whatever functions you want (*)
*<div class="box" id="42"><p>Foo</p></div>*

CL-USER 7 > *(describe *)*

<div class="box" id="42"><p>Foo</p></div> is an
IT.UNIMIB.DISCO.MA.XHTMLAMBDA::ELEMENT
TAG             IT.UNIMIB.DISCO.MA.XHTMLAMBDA:DIV
ATTRIBUTES      ("class" "box" "id" 42)
CONTENT         (<p>Foo</p>)

CL-USER 8 >



> > >
> > > Oh samesies. I honestly try to use TP libraries, but they never
> > > work
> > > the way I quite want them to. So I end up shaving some yaks and
> > > writing
> > > my own.
> > >
> >
> >
> > Yask that work on LW only.
>
> Yep. Because I'm not writing libraries for other people. I'm writing
> them for myself. Was that not clear?
>

It is.  But I am writing libraries for other people to use.

Look if I *wanted* to write open source stuff for other people, I'd de
> facto have to be using SBCL, since that's where most of the open-
> source-users seem to hang out.
>

I ranted about this in the past 😁 see my blog (
https://within-parens.blogspot.com/)

I, however, fell in love with LW's approach (except the editor. Try as
> I might, I can't cuddle close to the editor), because it seemed the
> best-supported and most well-rounded of the commercial solutions.
>
> I *wanted* to like ACL - I think Allegrograph might be possibly be
> magic - but there were too many hurdles for my taste at the time. And
> the ethos of "we'll give you a licence for cheap, but you have to
> negotiate individually with us if you want to distribute" sort of
> rubbed me up the wrong way.
>
> And SBCL's approach to delivery (no tree shaker) of "save-lisp-and-die"
> sort of leaves me cold.
>
> Sorry, off topic, my personal road to lisp isn't interesting.
>
> > Having said that, the issue is IMHO, not to have the "shortest" code,
> > which usually falls short here and there, but not to have the
> > "maximally bloated one" too.
> >
>
> Oh of course. I didn't mention code length as a measure of greatness, I
> meant it more as a "probably does less because it's shorter" but my
> *needs* are lesser, too.
>
> > >
> > > I'd really like a reactive CAPI interface; if I ever do need some
> > > CAPI
> > > love I'll probably shave a herd of yaks to implement a reactive
> > > front-
> > > end on it first. Bad, bad use of my time.
> >
> > I'd like to have a CAPI that works on CCL.  And SBCL, and ABCL, and
> > ...
> >
>
> Well, doesn't that sort of exist? CLIM and clones?
>

Not the same.

Now on the topic of MCCLIM, I remember Kenny spewing about ASDF some
> time, he commented that ASDF intentionally loads files in reverse
> order, in order to support MCCLIM or something. He was having problems
> with ASDF too. I didn't really follow what he was talking about to be
> honest; I could never get his stuff to work for me because it was so
> ACL specific.
>
> Yes I see the irony in my stuff being LW specific. But the difference
> is that I'm not writing stuff for public consumption :)
>
>
> > Kenny can be found here: https://www.facebook.com/kenny.tilton
> >
>
> Wouldn't be the same. I can't imagine he's screaming about cells on
> facebook.
>
> PS thanks for responding inline - top-posting really is the devil.


I am old school too ❤️

Cheers

MA


(*) Now for the second shameless plug of the day: here is where
(X)HTM&Lambda; is used: https://helambdap.sf.net


-- 
Marco Antoniotti, Professor, Director         tel. +39 - 02 64 48 79 01
DISCo, University of Milan-Bicocca U14 2043   http://dcb.disco.unimib.it
Viale Sarca 336
I-20126 Milan (MI) ITALY

REGAINS: https://regains.disco.unimib.it/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.