If you can add 2 and 2 in a language how is that Turing Complete?
Well, I did say
The day I can add 2 and 2 in HTML is the day it starts even approximating to being a programming language
Clearly the need to be able to alter control flow is necessary for Turing completeness. I was trying more to make the opposite point, that HTML can't be used to do a simple calculation of this kind, and thus can't be considered even remotely to be a programming language. Sorry if I failed to make myself clear.
Totally OT, I notice that our user #s are only 114 apart. That means you must have beaten me here by a couple of days:-)
Yes, I'm aware of XUL, XPFE and related technologies, but the section of the Mozilla documentation linked to appears only to cover the adding of chrome, which is somewhat at variance with the description given in the patent application. A better link would have been to this section as it would have made it clear what the story was driving at.
FWIW, a large mount of IE's chrome has also been provided through DHTML since version 4, which predates the taking of Mozilla in that direction - in fact, it predates the Mozilla Foundation and the Open Sourcing of the technology. As far as HTAs are concerned, Microsoft's technology predates XPFE by some time.
If XPFE and such are to be compared to a Microsoft technology, it should be the vapourware XAML, although I'm not aware of any MS attempts to make this a cross-platform technology, as XPFE is. I did like the following quote from the link I just cited:
My applications seem to be less buggy and work more quickly the less code I write!
whih seems to show that at least one person at MS is finally getting the idea:-)
We could call it DHTML Application if you want. That at least implies HTML with some sort of scripting language included.
I've always wondered why MS chose the term "HTML Application", when it's a "DHTML Application".
My preferred explanation is that whoever invented it adopted the ".hta" file extension, and it was too much like hard work to change it.
(Probably would have delayed the launch of Win2000.)
If you're interested, there's an introduction available. Despite the copyright notice at the bottom, that piece was actually written about 1999; notice the weird mix of what look like they should be XML Namespaces with HTML that's capitalised, thus going against the XHTML standard.
FWIW, you can use XHTML for your HTA and they still work, despite being valid documents. So then you can have MSDXHTML:-)
Actually, one of the useful things about HTAs is that you can use all those features of MSHTML that are no good for websites: things like element behaviours and so forth. They allow one to construct a very slick UI.
It's not adequate for commercial apps, but it is extremely useful for quick and dirty coding, proof of concept prototyping, test harnesses for COM components and so forth.
RTFA, or even better, RTFP. The only way you'll get an HTA to do anything is with JavaScript (or VBScript, if you're sad enough). It has unrestricted access to the machine, just like any other application, but the UI is done in HTML, with JavaScript and (probably) COM components. It's got nothing to do with web browsers.
In fact, the reason the patent was awarded was because it's a novel application of technologies which the short-sighted think are only to do with web browsers.
I don't know. If you knew anything about Windows HTAs, you'd know that they have no discernible similarity to the Mozilla technologies you reference. That technology allows (for example) skinning. The point about HTAs is that they get rid of the browser chrome, at the same time as being nothing to do with the use of web browser-originated technology for browsing.
The point about HTAs is that they consist of (X)HTML, JavaScript and COM (ActiveX) objects. When installed on your system, they run as applications in the Windows environment, meaning no sandboxing: file system access, etc.
As somebody is going to sneer "Why would I let a web site do that", let me point out that this isn't anything to do with websites. If you download and install an HTA, you have to follow the same procedures as for any other software you download. Anybody distributing an HTA would probably have to package it using an installer of some kind. You can't just have one appear when you go to a site; any HTA that does anything useful needs a bunch of COM components installed in addition.
And for those who ask "What's the point of it": one good use is for creating test harnesses for COM components. You can code up a UI with a quick bit of HTML, stick some JavaScript in there and run your test cases against the component. It's even easier than using VB to create such utility apps. It's also useful for rapid prototyping of ideas; it only takes a few minutes to explore a concept (if you're any good at JavaScript programming). But I can't imagine many people actually shipping HTAs.
Why grant them a patent? I assume it's because they were the first to think of taking the technology out of the web browser, rearranging it in this novel way, and thereby providing a facility that wasn't there before.
I wouldn't worry about it affecting your lives in any great way; it's specifically a Microsoft technology.
But I still wonder why somebody would take the words 'a window free of navigation and other interface elements, known as "chrome,"' and think it was similar to a technology for adding chrome.
In the '70s I had a French teacher give me 200 lines (write out "I must not dick about" or some such 200 times). I went off to the PDP 8/e, wrote a 3 line BASIC program and waited for the TT to do its stuff.
When I handed it in, he said, "Good God, did you type it all?" Once I managed to make him understand, he was so amazed ("Wow, you wrote a computer program?") that he let me off.
Turing Completeness doesn't really matter... a programming language has to beable to support the creation of Algorithms
Support the implementation and execution of algorithms, surely? An algorithm is a mathematical entity, and many algorithms were described before anybody had even built or imagined a mechanical or electronic computer.
And I think you'll find that being Turing complete means being able to support the implementation and execution of algorithms, so Turing completeness is what you are describing. (Google offers a definition.)
Absolutely right about MLs. The day I can add 2 and 2 in HTML is the day it starts even approximating to being a programming language. That won't happen until Microsoft decides to produce HTML#, which will hopefully be never:-)
Things start getting a little murkier with XSL, since XSL does have very programmatic structures
XSLT is indeed a programming language, that is, it is Turing equivalent. It is not a procedural or object-oriented language; it is declarative, making it similar to SQL. But any computable problem can be computed using XSLT, although obviously it is heavily biased towards its original purpose: transforming XML documents into another form, whether an XML document conforming to a different schema (such as XHTML), or any other textual representation.
FWIW, you can write an XSLT program which produces output that has nothing at all to do with its input XML document. Something like:
The Beeb ran at 2 MHz. Or to be precise, we can go to the very book you cite, page 494:
A 2 MHz clock is applied to the CPU, but this can be stretched into a 1 MHz clock when slow peripherals such as the 6522s are being accessed.
I agree that the book is excellent. When I first got it, I read it from cover to cover on a long coach journey. "Ooh look, if I grab that vector I can extend the VDU driver capabilities!"
I've always felt that the BBC micro architecture was the most elegant and powerful to appear on any 8-bit machine. The first time I used an IBM PC (1984 - it had a cassette port and BASIC in ROM:-), I couldn't understand how a company like IBM could cock it up so badly, when Acorn had produced something so good.
Re:Slightly OT, but for hiding mailto links
on
Javascrypt
·
· Score: 1
So put the email address in the alt attribute. Oh, hang on...
The article has an image of the rock. It's hard to judge size in the image, but it's more than a few grams.
No it isn't. The article also says:
On top of the base is an epoxy resin scale model of the first moon rock put on display from Apollo 11. Molded into the resin are presumably the tiny fragments and flecks found on the bottom of the Apollo 11 "rock boxes."
Sounds like it's maybe a few milligrams. That "presumably" also makes it sound like nobody's absolutely sure if there's any moon rock in there at all.
And, with a bit of luck, Microsoft would incur so much in legal fees appealing the decisions, it would eventually go bust :-)
Slashdot means never having to say you're sorry :-)
And for those familiar with the League of Gentlemen:
That's a joke about frostbite, right?
Well, I did say
Clearly the need to be able to alter control flow is necessary for Turing completeness. I was trying more to make the opposite point, that HTML can't be used to do a simple calculation of this kind, and thus can't be considered even remotely to be a programming language. Sorry if I failed to make myself clear.
Totally OT, I notice that our user #s are only 114 apart. That means you must have beaten me here by a couple of days :-)
Yes, I'm aware of XUL, XPFE and related technologies, but the section of the Mozilla documentation linked to appears only to cover the adding of chrome, which is somewhat at variance with the description given in the patent application. A better link would have been to this section as it would have made it clear what the story was driving at.
FWIW, a large mount of IE's chrome has also been provided through DHTML since version 4, which predates the taking of Mozilla in that direction - in fact, it predates the Mozilla Foundation and the Open Sourcing of the technology. As far as HTAs are concerned, Microsoft's technology predates XPFE by some time.
If XPFE and such are to be compared to a Microsoft technology, it should be the vapourware XAML, although I'm not aware of any MS attempts to make this a cross-platform technology, as XPFE is. I did like the following quote from the link I just cited:
whih seems to show that at least one person at MS is finally getting the idea :-)
I know, I've worked with it since 1996.
I've always wondered why MS chose the term "HTML Application", when it's a "DHTML Application".
My preferred explanation is that whoever invented it adopted the ".hta" file extension, and it was too much like hard work to change it. (Probably would have delayed the launch of Win2000.)
If you're interested, there's an introduction available. Despite the copyright notice at the bottom, that piece was actually written about 1999; notice the weird mix of what look like they should be XML Namespaces with HTML that's capitalised, thus going against the XHTML standard.
FWIW, you can use XHTML for your HTA and they still work, despite being valid documents. So then you can have MSDXHTML :-)
Actually, one of the useful things about HTAs is that you can use all those features of MSHTML that are no good for websites: things like element behaviours and so forth. They allow one to construct a very slick UI.
It's not adequate for commercial apps, but it is extremely useful for quick and dirty coding, proof of concept prototyping, test harnesses for COM components and so forth.
It's nothing to do with popups or web browsing. Follow the links from the news.com.com page linked in TA.
RTFA, or even better, RTFP. The only way you'll get an HTA to do anything is with JavaScript (or VBScript, if you're sad enough). It has unrestricted access to the machine, just like any other application, but the UI is done in HTML, with JavaScript and (probably) COM components. It's got nothing to do with web browsers.
In fact, the reason the patent was awarded was because it's a novel application of technologies which the short-sighted think are only to do with web browsers.
I don't know. If you knew anything about Windows HTAs, you'd know that they have no discernible similarity to the Mozilla technologies you reference. That technology allows (for example) skinning. The point about HTAs is that they get rid of the browser chrome, at the same time as being nothing to do with the use of web browser-originated technology for browsing.
The point about HTAs is that they consist of (X)HTML, JavaScript and COM (ActiveX) objects. When installed on your system, they run as applications in the Windows environment, meaning no sandboxing: file system access, etc.
As somebody is going to sneer "Why would I let a web site do that", let me point out that this isn't anything to do with websites. If you download and install an HTA, you have to follow the same procedures as for any other software you download. Anybody distributing an HTA would probably have to package it using an installer of some kind. You can't just have one appear when you go to a site; any HTA that does anything useful needs a bunch of COM components installed in addition.
And for those who ask "What's the point of it": one good use is for creating test harnesses for COM components. You can code up a UI with a quick bit of HTML, stick some JavaScript in there and run your test cases against the component. It's even easier than using VB to create such utility apps. It's also useful for rapid prototyping of ideas; it only takes a few minutes to explore a concept (if you're any good at JavaScript programming). But I can't imagine many people actually shipping HTAs.
Why grant them a patent? I assume it's because they were the first to think of taking the technology out of the web browser, rearranging it in this novel way, and thereby providing a facility that wasn't there before.
I wouldn't worry about it affecting your lives in any great way; it's specifically a Microsoft technology.
But I still wonder why somebody would take the words 'a window free of navigation and other interface elements, known as "chrome,"' and think it was similar to a technology for adding chrome.
Such as "Do you mean the Unix text editor or Visual Interdev"?
In the '70s I had a French teacher give me 200 lines (write out "I must not dick about" or some such 200 times). I went off to the PDP 8/e, wrote a 3 line BASIC program and waited for the TT to do its stuff.
When I handed it in, he said, "Good God, did you type it all?" Once I managed to make him understand, he was so amazed ("Wow, you wrote a computer program?") that he let me off.
Support the implementation and execution of algorithms, surely? An algorithm is a mathematical entity, and many algorithms were described before anybody had even built or imagined a mechanical or electronic computer.
And I think you'll find that being Turing complete means being able to support the implementation and execution of algorithms, so Turing completeness is what you are describing. (Google offers a definition.)
Absolutely right about MLs. The day I can add 2 and 2 in HTML is the day it starts even approximating to being a programming language. That won't happen until Microsoft decides to produce HTML#, which will hopefully be never :-)
Naughty boy re[plying to myself, but just to point out that the last line there should read
and thatis some garbage that somehow crept onto my clipboard :-)
XSLT is indeed a programming language, that is, it is Turing equivalent. It is not a procedural or object-oriented language; it is declarative, making it similar to SQL. But any computable problem can be computed using XSLT, although obviously it is heavily biased towards its original purpose: transforming XML documents into another form, whether an XML document conforming to a different schema (such as XHTML), or any other textual representation.
FWIW, you can write an XSLT program which produces output that has nothing at all to do with its input XML document. Something like:
will produce the standard example (once SlashCode's added spaces have been removed).
Which was itself a dupe.
Why are they called Virgin Trains?
Because they don't go all the way.
Somebody else's bad for modding your original post "+1 Insightful" :-)
Accessible to beginners who are mobile and have ladders, apparently ;-)
Sorry, couldn't resist...
The Beeb ran at 2 MHz. Or to be precise, we can go to the very book you cite, page 494:
I agree that the book is excellent. When I first got it, I read it from cover to cover on a long coach journey. "Ooh look, if I grab that vector I can extend the VDU driver capabilities!"
I've always felt that the BBC micro architecture was the most elegant and powerful to appear on any 8-bit machine. The first time I used an IBM PC (1984 - it had a cassette port and BASIC in ROM :-), I couldn't understand how a company like IBM could cock it up so badly, when Acorn had produced something so good.
So put the email address in the alt attribute. Oh, hang on...
True, very true.
Hey, this is Slashdot :-)
No it isn't. The article also says:
Sounds like it's maybe a few milligrams. That "presumably" also makes it sound like nobody's absolutely sure if there's any moon rock in there at all.
Hmm... I'll have to dig out my BBC Model B and see if it still works reliably. Could have saved them a bit of trouble ;-)
(FWIW, it was covered here about a year ago.)