Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: English as a Programming language (off topic)

Author: Heiner Marxen

Date: 04:52:01 07/15/01

Go up one level in this thread


On July 15, 2001 at 03:34:25, Vincent Diepeveen wrote:

>On July 14, 2001 at 12:15:40, Heiner Marxen wrote:
>
>Same challenge to you,
>convert the 0x88 generator from Bruce to LISP instead of
>academic nonsense about how well it is.

Hello Vincent,

I don't consider LISP a good example of a functional language.
Many years ago I have read loads of LISP code written by other people,
which I expected to be LISP experts.  I didn't like the results.
Too many (((()))), too long, hardly readable.

But there are many other functional languages.
I have used with great success SML/NJ.  I cannot talk about Gofer or Haskell,
since I never used them.

>I've written stuff in functional languages and the PRACTICAL
>slowdown i measured was huge.
>
>One or 2 theoretic examples aren't representing truth for me.

My experience was not "theoretic".  I have used SML to write my "busy beaver"
program, which aims to compute Rado's Sigma function.  See my web page:
http://www.drb.insel.de/~heiner/BB/

First I had a C program.  Then I wanted a certain new feature.  It was
non-trivial, so I started to use C++, which I used for 3 years already
on work, i.e. I was fluent in C++.

I did not manage to come up with a working C++ implementation.
A friend said "I would use SML", so I asked him to teach me SML.
He did so in a few days.  Then I implemented the complete C program
and the new, wanted feature in SML.  The resulting SML program was
demonstrably faster than the old C program.  It also had less implementation
restrictions, was easier to debug and easier to extend.

I am not going to convert you from a "LISP hater" into an "SML lover".
Therefore I will not spend any significant time to write some move generator
which I do not want/need, just to demonstrate something to you.

I just tell you my experience, as you told us your experience.
They differ.  Well.

>LISP is a laughable language, it's completely unreadable as soon
>as a program gets bigger as a few pages in size, because of the
>many ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((
>)))))))))))))))((((((((())))))))))))))(((((((()))))))))))))
>(((((((((((((((((((((((((((((((())))))))))))))))))))))(((((((((((()))))
>((((((((((((((((((((())))))))))))))))))))))))
>you need.

Agreed, see above.

If you think we should continue this topic, we probably should take this
to email.

Best regards,
Heiner


>>On July 14, 2001 at 11:53:51, Ricardo Gibert wrote:
>>
>>>On July 13, 2001 at 22:34:34, Dan Andersson wrote:
>>>
>>>>I can't say that I agree about your assertions about functional programming
>>>>languages, not now anyway. Both Common Lisp and OCaml rival the speed of C. Any
>>>>problems with those languages are usually the result of naive implementations.
>>>
>>>
>>>Your assertion that they can rival the speed of C is not too surprising, since
>>>both OCaml and Common Lisp also support imperative programming. Any language
>>>that effectively includes C as a subset can rival C in speed.
>>
>>Using the imperative features of functional languages like SML tends to
>>slow them down.  This is mainly due to the optimization strategies of
>>such compilers.
>>
>>Also, according to my own experience with SML compilers, truely functional
>>code most of the time does compete with C or C++ in speed.
>>
>>Since this starts to be off topic, I will not elaborate here.
>>There are several web pages which present profilings across imperative and
>>functional languages, which support this experience.  Just try google.
>>
>>Regards,
>>Heiner



This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.