Re: A case for HTML as a programming language

From: Programmer Dude (Chris_at_Sonnack.com)
Date: 12/08/04


Date: Wed, 08 Dec 2004 10:39:55 -0600

Michael Mendelsohn writes:

>>> The branching statement is an implied
>>>
>>> loop
>>> case readuserclick() of
>>> link1: goto target1
>>> link2: goto target2
>>> ...
>>
>> My point, exactly. The *language* has no branching statement.
>> A set of 3x5 index cards is just as much a "programming language"
>> as HTML, and works about the same. Instead of links, the cards
>> just contain the id numbers of other cards. The *USER* picks
>> a "link" on one card to go to another.
>
> In the HTML case, the user just provides the input.

That's exactly what we keep trying to tell you. The *user* is
the computational mechanism here--not the HTML.

> The program "knows" which card to branch to from that input;

The program don't know squat. The *user* looking at the rendered
HTML "knows" which link to click.

> You can hardly fault the program for requiring the user to provide
> input, can you? Some of the best programs ever written take user
> input. ;)

Of course not, but that has nothing to do with anything. There is
a huge difference between a user providing *data* and a user playing
the role of the computational device.

Is an abacus a computational device or just a very slick way of
helping a human be a computational device?

>> In the case of browsing files, the browser itself "serves" the
>> files (in a much more restricted manner than real server).
>
> So my Desktop PC is also a file server, because when my program
> loads a file, it could do so from a "real" file server, and when
> none is present, my PC acts as one? You're using a definition of
> "server" that is useless, because it can't distinguish anything
> useful.

As opposed to a definition of "programming language" so useless that
a set of 3x5 index cards qualifies? (-:

Your PC--your operating system specifically--IS a file server. For
example, my desktop often serves files to my laptop.

>> And then it's done what that data stream, never to return. There's
>> no way for it to reach a certain point in the stream and then
>> loop back to an earlier point.
>
> Not true at all.

Totally true.

> Provided you have user input and programmed for that to happen. Go
> through my little sort routine and click on "Restart", and you have
> looped back to an earlier point.

No, you've just shuffled the cards to the first one.

I don't know if you're playing troll, or if you really don't get this,
but the point we've made over and over is that without user intervention,
your HTML "programming language" doesn't work *AT* *ALL*. It cannot
be given a dataset and sent off to process that data.

> In the thread I referenced, people were musing about programming a
> "Big Trak" toy or a VCR.

"Musing about "does not mean defining such as programming.

> But then, the case for HTML is much stronger than that.

Actually, I'd say it's worse. In those cases a stored program was
provided which was executed by the devices. Most importantly, there
are branch and control points followed by the devices. Once a web
browser starts rending an HTML page, that's it. One shot deal.

>> But you can only go to one next state that way. You're merely
>> extending the rendering of that single page to include a series
>> of pages. Is a movie projector running a language? Same thing.
>
> What do you think a VBASIC program is doing that accepts no external
> input? It is completely deterministic and can only go to one next
> state from any state.

Those state transitions are typically guided by branch or selection
statements in the language, so right away there's a significant
difference. Second--and more critically--just because we can use
a real programming language to do something trivial and stupid
doesn't have any meaning with regard to what HTML is.



Relevant Pages

  • Re: Deck of cards
    ... Another application that you can try for free (for a limited time) is ... applications for sprucing up HTML and they are all pretty good. ... >> I have a jpg of a complete deck of cards laid out on a table, ...
    (microsoft.public.frontpage.client)
  • Re: it gets worse (BAHH)
    ... You are the only one who doesn't know why you can't see the cards. ... I posted in HTML, sorry. ... It was just a whine, so nothing to see really, the post before however I got ... stacked for nearly 3 buyins by a misclick by the villain. ...
    (rec.gambling.poker)
  • Re: What is the learning curve for PHP?
    ... HTML properly either. ... Books become ... HTML is not a programming language at all -- it's a data format, ... but isn't militant about making you use it like Java is. ...
    (comp.lang.php)
  • Re: a language is a language
    ... What do you consider a programming language and why? ... Turing machine whereas HTML cannot. ... the total number of possile machine states ... hack uses a separate physical Web page for each logical Web page, ...
    (comp.programming)
  • Re: What is the learning curve for PHP?
    ... HTML is not a programming language at all -- it's a data format, ... a data format, it's not a programming language, it's a Markup Language. ... from a second compiled form called byte code which depends on the JVM ...
    (comp.lang.php)