1. Pseudocode revisited
- Posted by Michael Sabal <mjs at OSA.ATT.NE.JP> Mar 28, 1998
- 958 views
- Last edited Mar 29, 1998
After dodging Mike's flames and looking at David Cuny's prototype for a = preprocessor (great macros/shortcuts, David), I thought a little = "definition" might be warranted. I should probably start with my theory = of Natural Language. A computer cannot understand any human language naturally, because it = is not human. I doesn't have the concepts associated with human = experience. Its language consists of ports, numbers, logic, graphics, = and a few other things. To create a natural language system means = teaching the human language to the computer with similar expectations = you would have of a learner of any foreign language. (Unless I told you = or you've lived in Japan, you probably have no idea what a kotatsu is, = or whether you put onigiri on your body, in your mouth, or in your car. = NB: a kotatsu is a low table with a heating element used for keeping = warm in winter -- Japan doesn't have central heating in houses; onigiri = is a kind of rice ball, only triangular). I tried making a natural language system using English to English = interaction, but it didn't work very well for the very reasons cited by = other members of the list. But now I'm using an idea originally = proposed by the UN -- using an intermediate language that logically = defines grammar and vocabulary sorted topically. A front-end program = would get input from a typist (or later a microphone), or a file (the = pseudocode file, for instance), send it to a translator program that = converts it into the computer's language and grammar, which sends the = result to a processor. This processor could either create Euphoria code = from scratch (thus, it would have to be aware of Euphoria's syntax and = command structure), or interactively communicate with the user (a true = Turing machine). The reason I say it could never be completed, is = because language and knowledge are constantly changing, optimizations = are always possible, and even if the programs becomes intelligent enough = to create new processes for new vocabulary, pruning of antiquated = methods would have to be done manually. Or by then, a completely new = architecture will be available to allow more optimizations, etc, etc. Please, firestorms are completely welcome, and as soon as I come out = from under my pile of books to finish a skeleton version, I'll zip it = along. Wavering on the edge of reality (but rooted in truth), Mike mjs at osa.att.ne.jp http://home.att.ne.jp/gold/mjs/