From: "Hal E. Fulton" Date: 2002-09-07T07:18:00+09:00 Subject: Re: Ruby aesthetics ---- Original Message ----- From: To: "ruby-talk ML" Sent: Friday, September 06, 2002 1:36 PM Subject: Re: Ruby aesthetics > On Sat, 7 Sep 2002, Yukihiro Matsumoto wrote: > > > > > That's the point. I guess you don't have any problem of equivalence > > with your language (in this case, English). > > I am never happy with natural language metaphors for computer languages. > Natural languages are HARD to learn (ask Larry Wall about Japanese!). > Computer languages should strive to be much easier. Natural languages have > many ambiguities in them. Computer languages must drive the ambiguities > out. The rules defining natural languages are so complicated that > linguists can't agree on them. You have a point, but the issue needs to be analyzed further -- e.g., *why* are natural languages hard to learn? IMO the biggest reason is the complexity of the problem domain -- the universe, or even the small part we know, is a big place. The portion that we can manipulate in a Ruby program is, well, smaller. Also I'd argue that ambiguity != redundancy. English is not hard to learn merely because it has a large number of synonyms. That's a very small part of it, I believe. The second biggest reason (in my view) that natural languages are complex is that they were not designed but "jest growed" as they say. (The difference is much like Washington, DC versus an unplanned city of the same age and size.) Esperanto "is and isn't" a natural language. It's a *human* langugae, but it's constructed. So it is simpler than, say, English. It does attempt to drive out ambiguity, but not at the expense of richness of expression (synonyms, etc.). A more extreme example is Lojban (www.lojban.org). It is perhaps the most sophisticated and most interesting of the constructed languages. It is perhaps the only one that is fully machine parseable and has its grammar fully specified in a formal way. It goes to great lengths to achieve clarity and eliminate ambiguity. Yet even Lojban permits synonyms and alternatives in expression. Don't think that I'm singing its praises *too* much, as its value is even more theoretical than most conlangs. I would say it is an order of magnitude more expressive than English and correspondingly an order of magnitude harder to learn. I think fewer than five people claim fluency in it, and those are probably fudging a little. But now I've wandered far off topic. Hal