Home
| Calendar
| Mail Lists
| List Archives
| Desktop SIG
| Hardware Hacking SIG
Wiki | Flickr | PicasaWeb | Video | Maps & Directions | Installfests | Keysignings Linux Cafe | Meeting Notes | Linux Links | Bling | About BLU |
David Kramer <david at thekramers.net> wrote: > I may say to my wife: "I heard there's a 60% chance of rain today. I > think you should bring an umbrella to work. Do you have one, or do you > need to borrow one from me?" > In order to even START communicating things like this in a computer > language... you need to: Are we talking about communicating via Perl, or programming a computer to understand natural language? These are two seperate subjects. On the former, Perl will never become a widespread human language--at least not in its current form--simply because it is inefficient for communication. It's a programming language, designed to express a computer program in a logical and maintainable manner. > (1) Have a class heirarchy that contains all objects in the universe, > real, imaginary, or theoretical, complete with hundreds (on the average) > of methods each. And you thought the Human Genome project was big, Not really. You just need a method by which the language can expand. And this method must allow people to use new terms without first setting out a formal definition. As long as people refer to libraries they've already imported, as it were, and as long as they can implicitly use a library without it first being written, the language will do for this. Each conversation is essentially a code snippet out of context. In order to get a runnable program, you must first include all of the relevant context (including the implied definitions libraries). > (2) A deeper concept of the relationship between objects than "is a" and > "has a" That's what functions are properties and methods are for. > (3) Some equivalent of the punctuation marks that can change the meaning > of a sentence, like the question mark, and conjugation. This is untrue. Throughout much of recorded history, language was written without any such punctuation marks. Greek classics, for example, were originally written using only capital letters all crammed together--no spaces, no punctuation. It was up to the person reading it to figure out from the context where the spaces and punctuation belonged. For example, THISISASENTENCEALLCRAMMEDTOGETHERCANYOUREADTHISNOWTHATWASNTSOHARDWASIT > (4) Strong fuzzy logic functionality, probablility and statistsics, the > concepts of needs, wants, emotions, and desires. For human communication, that's what the human mind is for. To express these things, you simply declare functions and classes that represent them. The linguistic symbol is not the reality. No computer must understand feeling, for example, in order for a computer language to represent it. Linguistic symbols (such as words) have semantic range, which interact with their context to form meaning. But these meanings may not refer to an extra-linguistic reality. (Abstract adjectives like _beautiful_, for example, don't refer to anything in the real world.) But none of this makes Perl a good language for communication. To demonstrate, I will attempt to translate into a dialect of Perl. &but q[ $demonstration = { !&all($this) or &assert( !$Perl->isgoodfor($communciation)) } ]; $demonstration->perform(q[ $Tim->attempt(q[ $paragraph->translateinto(&dialect($Perl)) ]) ]); Not especially readable. And there are implementation issues that crowd their way into the equation. Human language, to be useful, cannot be concerned with such things. Now, to get a computer to parse a human language (including the above dialect of Perl), you have to do a bit more. You have to implement semantic range and parse syntagmatic relationships (and paradigmatic ones, too, if you're clever). It's actually not that difficult a problem if the vocabulary and grammar are reasonably limited. The earliest text adventures did this quite well. Today, well-written interactive fiction follows suit. You can leave out descriptive words and phrases and the parser will understand what you meant to say. You can use pronouns, and the parser will figure out what you're referring to. When done well, it's an effective illusion of reality. -TimK -- Listen to my radio playlists at MP3.com: http://MP3.com/TimK It's free!
BLU is a member of BostonUserGroups | |
We also thank MIT for the use of their facilities. |