Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

So what exactly is the complaint? You said that tagged templates require needless updates to .innerHtml and that "string concatenation" is the only thing they can do. Now we are agreeing that that's not true? :-)

How is it "objectively false" that Lit mixes regular HTML with data binding? That is exactly how it works. I have several Lit apps and they use regular HTML as well as custom components and both have access to Lit properties and state that are dynamic.

Are we talking at cross-purposes or are we trying to say the same thing two different ways? I use this tech every day and I feel like you're saying something about it that's not true -- or maybe I'm not understanding your view.



> You said that tagged templates require needless updates

I never said needless

> that "string concatenation" is the only thing they can do

It's not what "they" need to do. It's what you, or the library using them needs to do.

> Now we are agreeing that that's not true

If you invent something that I never said, then yes, we can both agree it's not true.

> How is it "objectively false" that Lit mixes regular HTML with data binding?

Once again that is not what I said. The objectively false statement is that it's "regular HTML". Lit is a HTML-like DSL because none of this is "regular HTML" because those attributes are invalid in regular HTML:

   html`<div ?hidden=${!show}></div>`

   html`<input .value=${value}>`

   html`<button @click=${this._clickHandler}>Go</button>`
And, on top of that it even adds constraints to tagged literals themselves:

   // Valid JS, and valid tagged literals. Invalid Lit

   <${tagName}></${tagName}>

> Are we talking at cross-purposes or are we trying to say the same thing two different ways

No. You're inventing things that I never said or implied and arguing against those inventions.


I still don't understand the objection. Your example of invalid Lit is something I would never write. Lit is perfectly helpful without it. What makes you say the .value and @click attributes are invalid? In some older HTML spec, you mean? They certainly work correctly in modern browsers.

You can definitely mix data binding with regular HTML. It might be "invalid" according to a spec that makes no difference. The point of all of this is to write apps that work and can be debugged.

What is the rallying cry against Lit, exactly?


> I still don't understand the objection.

Please re-read what I wrote in my very first comment

> What makes you say the .value and @click attributes are invalid?

Just checked the spec, you're right they are valid. Hm, I was sure they weren't. Won't dig through the history to see if this changed :)

However, "Authors must not use elements, attributes, or attribute values that are not permitted by this specification or other applicable specifications, as doing so makes it significantly harder for the language to be extended in the future.", https://html.spec.whatwg.org/multipage/dom.html#elements

So I'd say they are still not okay on existing HTML elements

> It might be "invalid" according to a spec that makes no difference.

That is a very bad stance to take. "Invalid to the spec, but who cares".

> What is the rallying cry against Lit, exactly?

There's no rallying cry against lit. Stop. Inventing. Words. And. Meanings. I. Never. Said. Or. Implied.

There's a single very literal comment I made with links to support that statement.

I'm out of this discussion. I have other things to do with my life than keep saying "I never said what you think I said" over, and over, and over again.




Consider applying for YC's Winter 2026 batch! Applications are open till Nov 10

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: