140 comments

[ 4.2 ms ] story [ 219 ms ] thread
i made this
How many people have bought the shirt?
looking now... so far 0 (zero) people

still optimistic!

It's my birthday today so I might just not buy myself a little something.
Hm, I'd order one, but unfortunately your form doesn't use proper ISO-8859-1 encryption so I'm a bit wary. It's always best to use ISO standards.
Hey I noticed that the division code example is using the "ul" tag instead of the "div" tag. Thanks!

Edit: nevermind, but the comment still says "This ul tag"

In the setting properties example I think it should be <rp>body</rp> rather than <cite>body</cite>.
Uh, why call it HTML? Why not call it HTML-Stack or something?

It's not HTML, but a language using HTML syntax.

it's not called HTML

it's called HTML, the programming langauge

(sometime I use "HTML" just to keep things shorter)

How about HTML: Turing-complete Machine Language
HTMLTML has a nice ring to it!
I’d shorten it to just HTML at that point, where the H is short for HTML:

HTML: Turing-complete Machine Language

ah, a good idea

i mean, who knows, maybe that's what HTML in HTML, the programming language stands for!

>ah, a good idea

nah, a GNU (new) idea

I think we need to save that for HTML, The Markup Language
How about HTML 2: Electric Boogaloo
HTMPL? “Hyper Text Markup Programming Language”

Then you could pronounce it “High temple”.

It's web dev, the best way to get adoption is to trick people into using your stack
Is this "HTML-based" or "HTML, based"?
<output> is an obscure tag that I think allows to exploit accidental turing completeness similar to the checkbox hack.

Or is it? I once considered using that tag for some price calculator widget, but it couldn't even replace a div because of styling issues or something.

That being said, I spent like half a minute trying to figure out the point of this post and then lost interest...

Will try again, was hoping for a funny Rube Goldberg machine instead of T-shirt merchandise.

So nah, it's about as "based" as blogging about JS frameworks IMO.

Giving me memories of tag based Coldfusion days.
Same. I liked ColdFusion for what it was, but I also don't miss it. The spaghetti code I had to fix is what I remember most. While spaghetti code isn't a unique problem to CF, it is made so much harder to fix when you don't have a debugger and you can't right-click to find references. The horrors of endlessly nested cfloops inside cfifs with cfaborts and cflocation tucked away wherever the programmer needed it. never again!
I thought the s tag was for sarcasm
As long as we're creating confusing names, are there any Hypertext Machine Learning projects (HTML)?
Finally I can use html on the frontend and the backend! I am adding a "full-stack html" badge to my Linkedin account right away.
Would an HTML template system written in HTML lang be considered bootstrapping?
Personally I'm using CSS [0] on the backend, but might switch it out for HTML. It'd be cool to use the same technology for both. The CSS+HTML combo has some big limitations.

[0] https://dev.to/thormeier/dont-try-this-at-home-css-as-the-ba...

It would also be cool if someone would explore CSS for the frontend. I think isomorphic CSS could be a really neat stack.

Edit: I actually think I recall some pure-CSS frontend examples. We might just need to combine that with backend CSS technologies.

Edit edit: Probably the biggest issue will be to prevent the server from evaluating the CSS fully but maybe something like what Next.js does with server and client components could work here.

Now the discussion around HTML being a programming language gets really muddy.

Thanks to "a slightly unhinged man living in montana"

The best part is how they have to keep repeating "HTML, the programming language" or "HTML, the markup language" everywhere in an attempt to keep things clear :)

It would be awesome if they were using some sort of macro system / templating engine to consistently expand {{html_prog}} and {{html_markup}} just to keep it straight while they're writing it.

Thank you for posting this, it made my day a bunch brighter!

(comment deleted)
> It would be awesome if they were using some sort of macro system / templating engine to consistently expand {{html_prog}} and {{html_markup}} just to keep it straight while they're writing it.

You could use the <template> tag.

    <template id="my-macro-name">
        <!-- some operations -->
    </template>
To use it:

    <source src="my-macro-name"/>
Using source to look familiar to bash users because why not.
Maybe even

  <script src="my-macro-name" type="macro"></script>
HTPL?

I appreciate their joke, but “HyperText Markup Language, the markup language” is a little redundant.

Some of us have had to include XSLT programming in our careers. We have seen into the dark abyss… and been paid to do it!

XSLT was the best!

Well, except for the syntax and the lack of resources and that it wasn't designed to be a programming language...

Okay so it wasn't the best. But somewhere in there is a language which does want to be the best!

XSLT might have the greatest ratio of brilliance to marketing of anything in our industry.

XSLT is a pattern matching DSL for converting trees into other trees. What things are trees? Programs.

It is also XML. XML is a boring business thing for boring business people associated with legacy Java codebases. We like json here. Or maybe yaml. To quote an otherwise excellent past colleague, "the pointy brackets hurt my eyes". It's horrible to edit in notepad too.

Who wants XML syntax for a purely functional programming language? No-one wants that, we write our compilers in C++ thank you.

As a bonus extra, "XML schema" are a similarly crufty rubbish old thing in nasty XML syntax that look suspiciously like "type of that tree". So you can typecheck the intermediate IR in your compiler pipeline. If you wrote it in the bad language from the before times. Emacs knows what those schema mean too.

The world has moved on to better marketed semantically worse things with prettier syntax. This brings me joy.

Hey, XSLT is functional, and functional languages are sexy, right?

What XSLT did do was standardize XML on a transformation language. JSON never really got that, and the ecosystem is worse for it.

Whoa there, “lack of resources”?!

The definitive and complete resource is Michael Kay’s XSLT book (originally Wrox Press, but now part of O’Reilly I think?). Granted, a paper book as a resource isn’t great, but it’s some book!

Kay went to Cambridge (Trinity) and did his PhD under Sir Maurice Wilkes. He’s no joke: one of the examples from the book is implementing the Knight’s Tour. Although this is only the chapter pre-amble, the commentary is indicative of what kind of book this is:

https://www.oreilly.com/library/view/xslt-20-and/97804701927...

It’s like Dijkstra writing the definitive reference manual for CSS and one of the formatting examples being an engine for solving Towers of Hanoi.

While I have qualms about the utility of XSLT as a general purpose language — it’s fine if you embed it in an imperative language a la SQL in Python, and awful if you try and use it standalone — it also gave us XPath which is by far the best way of querying markup that I’ve ever used. (Well, until CSS got attribute selectors, so I use it less and less these days I suppose.)

(You probably know all this, but it was interesting to add to the thread.)

So it's like... jq for xml, except the language is an xml dsl?

Is it pronounced "ex-slut"?

HTPL is what I immediately landed on too. Talk about confusing beginners!
It's "HTML" aka "HTML Turing-complete Markup Language"
Why is the iterator implemented as a GOTO instead of something like the following? Genuine question, I don't use stack based langs.

  <loop>
    <loop-statement></loop-statement>
  </loop>
in designing HTML, the programming language, i tried to stay as close as possible to existing semantics in HTML, the markup language, as I could, so that HTML, the markup language, developers would be comfortable with it in a minimum amount of time

most HTML, the markup langauge, developers are used to anchor tags (i.e. the <a> tag) with an href that begins with a hash "jumping" to that element. Therefore I decided to take that well known semantic and integrate it into HTML, the programming language.

there are multiple examples of loops using this (as well as the <i> "if" conditional) tag that I think show how intuitive this will be for most HTML, the markup language, developers, but of course research is ongoing in this and other matters

I guess I don't really think of HTML as "sequential" but I definitely do think of it as "composed." Meaning I don't often consider siblings elements, but I often do consider parent/child elements. Anchor tags that link to other parts of the doc are relatively rare compared to links to other docs. The only exception is stuff like schema definitions or reusable shapes in SVGs.

Either way, fun project!

> Genuine question, I don't use stack based langs.

How and why not? What languages do you use?

Common ones like JavaScript, Java, C#, etc. They all have a stack, but aren't stack oriented like Assembly or Forth. The stack in modern languages is abstracted so you don't have to worry about pushing/popping values in a specific order, and you can't explicitly reference it. C and Rust is probably the closest I get with Heap v Stack memory, but even that is not truly stack oriented.

https://en.wikipedia.org/wiki/Stack-oriented_programming

Was literally reading that wikipedia page last night before bed, so this is all very timely for me.
Everybody's so creative!
> This was revealed to me in a dream
(comment deleted)
I’m going to make it my career mission to build something on this that you have to maintain, recursivedoubts
This is the programming language of the century
JavaScript, the Markup Language

  div({ class: 'example' }, [
    p('Hello, ', [
      b('world!)
    ])
  ])
One suggestion - it would be really cool to allow FFI. Something like

    <script type="text/javascript">
      const foo = (bar) => {
        document.getElementById('my-element');
        // More here!
      };
    </script>
That way you could really leverage the full power of HTML, the programming language!
The contents should be wrapped in a dangerouslySetInnerJS attr to prevent XSS
HTML, the programming language, is fully interoperable w/ JavaScript, the programming langauge (sic):

https://html-lang.org/#js

functions defined in HTML, the programming language, can be invoked by JavaScript, the programming language (sic) and vice versa.

"... the html.js file ..."

Jesus. As a lover of plain HTML and a hater of JS, my head just burst and painted the walls.

...what in the befunge?
HTML is nested lists of named nodes with attributes... well.

LISP has done more, with less.