Article View: comp.lang.prolog
Article #941Re: Balance between theory and implementation
From: Jamie Andrews
Date: Mon, 02 Jul 1990 16:10
Date: Mon, 02 Jul 1990 16:10
48 lines
3010 bytes
3010 bytes
In article <37305@ucbvax.BERKELEY.EDU> vanroy@pisces.uucp () writes:
> Theoreticians need feedback from experiments to see if their ideas are
>practical. Otherwise logic programming will become a branch of mathematical
>logic, with no regard to computability or efficiency.
I agree. Unfortunately, the life-cycle of an idea in logic
programming (and programming languages generally) seems to be
very long, at least in terms of work-years.
To really test an idea, you need lots of people to program
in a language incorporating the idea. They won't do so unless
the implementation is pretty good. So you need people to work
on the language for quite a while before getting it into a state
where people will be able to test it on non-trivial problems.
Masters' students probably can't be convinced to do this
kind of thing, and PhD students definitely can't. The
researcher can't do it because no one would want to publish a
paper about "just another implementation", and the danger would
be that he or she would get behind in other research.
So the only way to test ideas is to mount large research
projects to employ people to develop, test, and use the language
with the idea. By the time all this is done, people are so
committed to the project that they are less likely to admit that
the idea actually did fail on testing.
Maybe what we need is Languages Agencies which, like
astronomical and space research agencies, accept proposals for
little ideas to be incorporated into experimental languages, and
bigger proposals for larger projects. The Agency would build
the language (= spaceship) incorporating all the little ideas
(= experiments), test them out on various problems (= run the
experiments), and tell people how each feature performed
(= distribute the data to the proposers).
> There is a common notion that implementation is somehow lower than theory,
>which is somehow nobler. This notion is misguided. Both theory and
>implementation are human activities, requiring the full range of human
>creativity. Without implementation to guide it, theory is blind.
Indeed. Computer science is ultimately about the human
activity of programming, and needs experiment to supplement
the theoretical activity.
--Jamie. Original material copyright (c) 1990 by Jamie Andrews;
jha@lfcs.ed.ac.uk for distribution only on unmoderated USENET newsgroups.
"The heat was hot and the ground was dry but the air was full of sound"
Technical Details
Message-ID:
<4992@castle.ed.ac.uk>Path:
arc1-ca.pugleaf.net!utzoo!attcan!uunet!mcsun!ukc!edcastle!lfcs!jhaReferences:
<37305@ucbvax.BERKELEY.EDU>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!mcsun!ukc!edcastle!lfcs!jha From: jha@lfcs.ed.ac.uk (Jamie Andrews) Newsgroups: comp.lang.prolog Subject: Re: Balance between theory and implementation Summary: European Programming Language Agency... hmm... Message-ID: <4992@castle.ed.ac.uk> Date: 2 Jul 90 16:10:52 GMT References: <37305@ucbvax.BERKELEY.EDU> Reply-To: jha@lfcs.ed.ac.uk (Jamie Andrews) Organization: Laboratory for the Foundations of Computer Science, Edinburgh U Lines: 48