Is this a true statement?
Steven D. Majewski
sdm7g at Virginia.EDU
Mon Jun 25 11:37:00 EDT 2001
On 25 Jun 2001, Martin von Loewis wrote:
> The point is that a program that writes a device driver is not the
> device driver itself. Instead, the program that writes a device driver
> is typically called 'compiler' or 'linker'. You can certainly write
> compilers and linkers in Python, and some people have actually done so.
> However, 'writing a program that generates a device driver' is not at
> all the same as 'writing a device driver'.
Both methods involve writing an abstract specification for a device
driver in some language, which gets transformed by a chain of several
programs into an actual device driver.
If you write it in macro-assembler, macro statements get expanded into
basic assembler. Would you say that you can't write a device driver
in macro -- only in assembler ?
What we mean by writing a device driver (in some language) is
describing a device driver. This all seems to be an argument
over whether the map is or is not the territory.
Despite the fact that he waited till I conceded to him to concede
and leave me out on a limb :-), I think David made an interesting
point about Turing equivalence -- it's reach is a bit farther than
I had thought: A device driver *IS* a computable function of a
textual description of a device driver.
However, I still object to folks throwing around *unqualified*
statements about the equivalence of all programming languages --
Turing equivalence is still a rather narrow form of equivalence,
and it doesn't at all imply that anything you can do in one language,
you can do it another -- unless you have a very curious definition
of "do" that perhaps only involves talking about doing.
( In this particular case, the specification of the problem:
"write a device driver" was so loose as to allow such an
impractical solution. If someone else wants to challenge that
notion, I'll be sure to be more specific of the requirements
next time! )
-- Steve Majewski
( And I DO wish more languages had adopted Intercal's "Please"
statement -- it would make programs so much nicer to read! )
More information about the Python-list