Radical computing thoughts: Data impedance & automatous compu ting

Russell Turpin deafbox@hotmail.com
Thu, 25 Oct 2001 17:57:23 +0000

Turpin wrote:
>>(3) The radical question: Should programs do I/O at all??
>>Here's the argument for answering it "no." Issues of format
>>and persistence of external data should be specified
>>outside the program. Always. This partitions concerns,
>>lessens maintenance, and would make most programs much
>>smaller. How would this work? Instead of doing I/O, a
>>program is written with unbound variables that must be
>>bound externally before the program is executed. The
>>execution environment includes mechanisms for binding
>>external data sources and stores to internal variables,
>>and provides a way to specify needed data transformations.

Mike Dierken responds:
>If you replace 'program' with 'function' (or method) isn't this what all 
>languages/runtimes already do? ..

Yes. But. (a) It's not the way programs currently get access
to external data. Consider a program that creates a list of
new room reservations. You don't run it by passing a database
table, with plumbing that binds the table to the list.
Instead, if that is the desired end result, the program
itself must open a database connection, marshall the data
through SQL, etc. (b) The binding mechanisms required to do
this with programs are a bit more complex than the binding
mechanisms typically used between functions.

But yes, the idea is the same. And it works quite well in
that context. The proposal is essentially a lifting to a
different context.

Get your FREE download of MSN Explorer at http://explorer.msn.com/intl.asp