Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!usc!rutgers!mephisto!udel!carroll From: carroll@udel.edu (Mark Carroll ) Newsgroups: comp.lang.misc Subject: Re: The Universal Language (Was Re: Efficient Fortran) Message-ID: <26920@nigel.ee.udel.edu> Date: 8 Aug 90 17:22:11 GMT References: <23950@megaron.cs.arizona.edu> Sender: usenet@ee.udel.edu Organization: University of Delaware Lines: 78 Nntp-Posting-Host: dewey.udel.edu Before I get started with included text, I want to include some preliminary stuff. I am personally of the opinion that a "Universal Language" is an impossible goal. As I've said before on this newsgroup, a language is a description of a machine, and the form of the language describes the form of the machine. When you choose a language, you're choice is based on which language define the machine that most clearly and easily models the solution that you have in mind. Some models are irreconcilable. For example, try to unify the Smalltalk model, where object identity is central to the language, with ML, where immutable data is central. You can't unify them without destroying the central concept of one of them. (To those who are going to mention the Object-oriented functional languages: I know that they exist - but object-orientation in a functional language is a different model of object-orientation than Smalltalk. Functional object-orientation could not be unifying with Smalltalk either.) Now, on to the text. In article gaynor@paul.rutgers.edu (Silver) writes: >> [All the heat concerning mikeb@coho.ee.ubc.ca...] >And while we're at it, you always put in two signatures! :^D > And frankly Andy, you could could use a shave. 8^) >gudeman@cs.arizona.edu (David Gudeman) writes: >> First, I doubt that there will ever be any formally specified language the >> size of, say Ada or smaller that can make a true claim to universality >> (although we can't really know for sure). > >I hold just the opposite opinion. Any `universal language' must be very small >but very versatile. The components of the language itself should be objects >in the language and easy to modify. F'rinstance, the scanner should be >very customizable so to be able to arbitrarily add notations. Of course, >all of the nice basic language features should be available, like arbitrary >symbol and environment manipulation, garbage collection, executable objects >are data, etc. And I've got to disagree with both of you! To Andy: if you read your proposal, you'll see the error: "The components of the language should be objects in the language {\em and easy to modify}." What about language models where objects cannot be modified? You've just elminated Prolog, ML, Haskell, and a host of other languages and models. To David, I say that no language, no matter how large, can make fundamentally incompatible models compatible. Now, on to what I believe the answer is: One language can never possibly fit all models together. That won't work. But a system which allows multiple languages to interact is possible. One language, no. One Environment, maybe. Systems such as Poplog are already starting to investigate this possibility. Make it simple for the programmer to combine routines written in different languages in one program, and then let them use whatever combination of language is appropriate. >The rest should be provided by library routines. > Or perhaps, library LANGUAGES. >Regards, [Ag] -- |Mark Craig Carroll: |"We the people want it straight for a change; |Soon-to-be Grad Student at| cos we the people are getting tired of your games; |University of Delaware | If you insult us with cheap propaganda; |carroll@dewey.udel.edu | We'll elect a precedent to a state of mind" -Fish