[Sigia-l] HTML is not a programming language

Simon Wistow simon at thegestalt.org
Fri Jul 19 07:44:23 EDT 2002


On Thu, Jul 18, 2002 at 10:29:44PM -0500, T. Karsjens said:
> I hate to be an ogre, but out of all of the languages you listed Java is the
> only programming language.
> 
> There is a significant difference between an mark-up language (HTML),
> scripting languages (Perl, JavaScript, VBScript) and programming languages
> like Java, C++ and Visual Basic.
> 
> The capabilities of both mark-up languages and scripting languages are
> finite.  You can only do so much with them.  Programming languages are also
> finite, but you can create considerably more functionality than with the
> other two classifications.

Much as I'm loathe to continue this, err, misguided thread but ... you
couldn't be more wrong.

For the sake of simplicity you just have to assume that a programming
language is Turing complete. I won't go into what this means but if
you're interested then read up on Turing's  "On computable numbers, with
an application to the Entscheidungsproblem" and the theory of Turing
machines. [*]

</vast over simplification>

HTML is not a programming language. This isn't because it's a markup
language since, essentially, Postscript is a markup language *and* a
programming language (each character is its own subroutine). 

Perl is a programming language (actually it's two - both the language
proper and its regular expression language are Turing complete)- it's
only called a scripting language because you don't compile it, although
it's actually compiled to its internal byte code language every time you
run it, VB actually does roughly the same thing. Java does this in two
steps - compile into bytecode and then run on the JVM. You can actually
compile Java to native code and run C on a virtual machine. 

Difficultly or whatever has nothing to do with it - VB and Javascript
(there's no space, technically it should be known as ECMAscript
nowadays) are probably easier to program than Lyx which is 'just' a
markup language.


Programming is easy, I could teach anybody to program in a day, if not
less. Being a good programmer is harder. It's just like being a writer
or a designer or, I dunno, a fireman. Fuck it, I could teach you to fly
planes in a day and I could get you solo in a glider in less than an
hour. Unless you're a complete malco. 

Bickering about it and nit picking is, ultimately pointless and is
something best left to the professionals - we programmers have been
arguing about who's more l33t for years now and we haven't got anywhere.

If you're working in a team then knowing about how their job/discipline
is a good thing - I hated working with designers who knew nothing of the
limitations of HTML and I'm sure UI designers were frustrated when I did
something equally annoying for the sake of efficency.

...

But then I'm sure you all knew that anyway.


Simon


[*] Basically, any Turing machine (i.e a program) can do anything
that doesn't boil down to it being able to check if another program has
halted. It's called the Halting problem and is roughly the same thing as
Godel's incompleteness problem in that it's about paradoxes.






-- 
: it was a good game - the rules were simple



More information about the Sigia-l mailing list