Path: utzoo!utgpu!news-server.csri.toronto.edu!clyde.concordia.ca!uunet!decwrl!bacchus.pa.dec.com!granite.pa.dec.com!mwm From: mwm@raven.pa.dec.com (Mike (Real Amigas have keyboard garages) Meyer) Newsgroups: comp.lang.misc Subject: Re: The Universal Language (Was Re: Efficient Fortran) Message-ID: Date: 6 Aug 90 22:03:52 GMT References: <23950@megaron.cs.arizona.edu> Sender: news@wrl.dec.com (News) Organization: Missionaria Phonibalonica Lines: 81 In-Reply-To: gudeman@cs.arizona.edu's message of 6 Aug 90 23:47:14 GMT In article <23950@megaron.cs.arizona.edu> gudeman@cs.arizona.edu (David Gudeman) writes: But there is another approach to universality. The existence of English plus current programming languages plus all the specialized notations of mathematics, logic, linguistics, chemistry, and many other areas show that a fairly universal language is possible. I don't think there is anything inherently wrong with saying that all this is one language. Of course it is not a very cohesive or elegant language. I've been for quite a while working with a language that allows "plug-in" modules for various purposes. The most interesting of the modules are full-blown applications, and I normally think of this as an "applications integration language". However, some of the modules are extensions to give the language notations from realms other than those it was implemented for. Given this view of what a universal language is, the question becomes ``to what extent can this hodgepodge be unified and streamlined?''. The question becomes a quantitative rather than a qualitative one. Here's where either I lose what you're talking about, or you lose touch with what I perceive the problem to be. The problem isn't streamlining the various specialized notations together, it's providing all the facilities for manipulating those objects that are going to be needed. For example, even though I have the appropriate notations to work with the field in question, if I need to manipulate lists of objects and the underlying language doesn't provide primitives for list manipulation, then it may be easier to re-implement the notations in a language that supports lists than vice-versa. This unification is not a process of throwing out the specialized features of various languages, rather it involves finding relationships among the various specialized features, subsuming them with more general features. Yes, but if that "more general" feature doesn't map simply to the specific features needed, it's not clear you've made an improvement over including them both. Of course, the LISP solution is to include all three cases. But I think that that way lies madness, at least on the scale of a universal language. Unix has shown pretty conclusively the benefit of combining different languages. [...] Even so, I don't think anyone would call this collection a single language. But maybe with enough ingenuity something similar can be designed that is so cohesive that it _could_ be called a single language. It's called PERL :-). But there are still domains that it doesn't work well in. Maybe a universal language would involve a lot of little sublanguages, but all fully integrated into a single entity, so that you are not committed to a single sublanguage just because you chose to start in that language. Such a language is doomed to failure. The problem can be expressed as: Do you have hooks for dealing with sigournism, a field of study whose subject matter will be discovered in 2012, and spring into existence thereafter? Likewise, the xplee data structure (patent applied for in 1996) is a critical facility - how do you intend to incorporate it? And after you've added them, you've just created a "more universal" language than your previous "universal language." English solves this problem by being "infinitely extensible"; it's allowable to create new terminology that combines smoothly (or roughly, if that's the way you want it) with the rest of the language, and can be used for discussing sigournism or xplees. Of course, there are a number of "infinitely extensible" programming languages. None of them seem to be taking over the world, and Herman isn't interested in them when they're pointed out to him as solutions to his problem.