Autocoding project proposal.

Jonathan Hogg jonathan at onegoodidea.com
Sat Jan 26 08:07:27 EST 2002


On 26/1/2002 6:44, in article 5372.791T2458T1516056threeseas at earthlink.net,
"Timothy Rue" <threeseas at earthlink.net> wrote:

> One of the things needed in a computer environment is the three primary
> user interfaces of the command line, the graphical user interface and the
> side door port to applications and other functionality. The port that
> allows the user to communicate to the application or functionality in the
> scriptable vocabulary of the given functionality/application.
> 
> where the VIC comes in is in handeling the dictionaries of the various
> applications/functionality and acting as a central control point that can
> spawn off instances of itself in order to handel greater levels of
> complexity in a parrallel manner.

[I'm coming into this discussion late, so forgive me if I've missed
something obvious - though everyone else seems to be as confused.]

Is this in anyway related to something like AppleScript?

    <http://www.apple.com/applescript/>

This is Apple's attempt to provide a framework where non-programmers can
communicate to different applications and link them together to perform
tasks. The central idea is the concept of a "dictionary" for each
application, and the AppleScript language which presents these dictionaries
to the user.

[Side note: I don't mean to be derogatory with the term "non-programmers". I
just mean people that are more comfortable communicating with natural
language than the highly artificial and low-level computer languages that
programmers typically use.]

> Here is an example of using the VIC in voice/speech controlled...
> 
> http://groups.google.com/groups?selm=13506.301T771T10734137%40mindspring.com

For instance, this previous post you refer to discusses telling the computer
to format a floppy (vocally, but I presume the idea includes textually):

    "Computer utility format name f u n drive D F 0 go".

This task is achieved in AppleScript by using the dictionary of the Finder
(the file management application on a Mac) to ask it to perform the task:

    tell application "Finder" to erase disk "Bob"

[Slightly different since the Mac doesn't identify disks by the drive
they're in.]

In this instance, "erase disk" is not a part of the AppleScript language,
but a part of the interface made available by the Finder. I can write
scripts that ask for something from application A using its dictionary, and
then pass the information to application B for processing using the
dictionary for application B, all within a single script, all using a very
natural English-like grammar (natural if you speak English that is).

I don't really see how this relates to auto-coding though. A programmer
still wrote the application, it's just that Apple encourages programmers to
make available the functionality of their program through the "side door"
you mention so that non-programmers can use it.

Am I getting close?

Jonathan




More information about the Python-list mailing list