On Thu, Dec 14, 2000 at 08:24:44AM +0900, Ben Tilly wrote: > Mathematicians don't learn Lisp. They learn things like > Lesbegue integration. > Fortunately some of them do: http://www.umcs.maine.edu/~chaitin/lisp.html Here's a quote from one of Chaitin's papers: "But let me start telling you why I think LISP should be loved by mathematicians. I think it's the only computer programming language that is mathematically respectable, because it's the only one that I can prove theorems about!" > >"... the lack of a lot of key text-processing ingredients makes Perl > >solutions for many averagely complicated tasks either extremely slow, > >or not easier to maintain than solutions in other languages (and in > >some cases both)... My current conjecture on why people classify Perl > >as an agile text-handler (in addition to obvious traits of false > >advertisement) is that most of the problems to handle are more or less > >trivial ("system-maintenance"-type problems)." > > Perl is excellent at data munging. If you know what you are > doing it is also excellent at parsing and producing structured > data. It took me less than an hour to find that incrementally > appending to a string n times in Ruby takes time O(n*n). It > takes time O(n) in Perl. > Only with *relatively trivial* problems. Did you read the Zacharevich interview? > Performance on string processing is not something which Ruby > fans should try to wave as an advantage. (But this problem is > not hard to solve. I already outlined a sufficient solution.) I would not use Ruby for *real* text processing. But then I wouldn't use Perl either. For system-maintenance type problems, Ruby is better than Perl, because it is more readable, has a faster development time, and is more fun. > >(you can check up on: http://www.perl.com/pub/2000/09/ilya.html) The > >author of the quote is Dr Ilya Zacharevich, who teaches math at Ohio > >state University. His work on Perl 5 includes operator-overloading, > >much of the regex-engine, the OS2 port, and the FreezeThaw, Devel::Peek, > >Math::Pari, and Term::Readline modules. > > I am very familiar with what Ilya has done. ... > > ... But the APIs that he produces often are grotesque, and his code > is often virtually impossible for anyone else to understand or > review... Perhaps because he is using a write-only language. > > > However this comes with the disadvantage that with every type comes > > > more syntax. > > > >You got it, Ben. Randall "Nice-book-pity-about-the-language" Schwartz > > How would you feel if that was directed at you? Please > stop and think about what it would mean if Randal made the > decision he made in the early 90's and decided to turn his > pedagogical talents to promoting a promising young scripting > langauge. Today he has a reputation. That matters. I would laugh if it was directed at me. My comment was meant humourously and I don't care about the reputation of people who can't laugh at themselves. What I am *really* sick and tired of is Perl-People preaching on comp.lang.ruby. For eaxample: I WILL YELL IF I WANT TO. (remember?). > I guarantee you that having Ruby get glowing recommendations > from Dave and Andy is a large part of why so many people are > willing to take a second look at it. I should know, I am one > of them. When somebody guarantees me something, I always wonder why they find it necessary to make that extra assurance. Are the other things they say *not* trustworthy. > >asked what we want to do with Ruby. *I* think Ruby is going to blow > >Python AND Perl out of the water, though it might take a while re the > >latter. Why? In Python's case, because its just better (faster, > >cleaner, sensible licence, no Guido). > He asked for an *opinion*, and he got it. > And now anyone who likes Guido just got POed as well. I like Guido (as well as I can like someone I have never met). I would have liked Python too, but it has a bad licence, which is Guido's fault. > you start by ticking someone off, things usually go downhill > fast. As I recall, one of your first posts to this group was a public flogging of a regular poster, because he YELLED. That ticked *me* off. > > BTW if you make big promises, you had better be prepared to > meet them. If you say "blow away", a fan of what you promise > is history will become very dubious. Unless they (already > biased against) think that it is really ready to blow away the > competition, they will discount anything you have to say. > I didn't promise anything, Ben. I said I "think" Ruby will blow Python and Perl out of the water. I didn't say it would happen today. What I find amusing, is that Pythoneers are saying Perl should beware of Ruby, and Perl-People are saying Python is going to get the shaft. For once they *nearly* agree. > In Perl's case, because in the > >real world Perl is used to write spaghetti code, and structured > >spaghetti code (the Ruby way) is better than unstructured spaghetti > >code (the Perl way). > > Oh really? Amateur attempts at OO design are no fun to work > with. They quickly get as bad as the worst procedural designs. > What is worse is that the grandiose mistakes that result have > performance problems. Implement that in a language which has > not yet sorted out performance kinks, and you have a recipe for > disaster. You have a serious performance fixation, Ben. Have you tried switching to a faster machine? > > The worst Perl is the result of people who don't know how to > program, don't want to learn, but want cool results. What, you mean like Ilya's unreadable APIs? In anticipation of the next SERMON, Peter