Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: c,c++5,c#.

Author: Omid David Tabibi

Date: 04:56:37 08/12/04

Go up one level in this thread


On August 12, 2004 at 03:28:58, Tony Werten wrote:

>On August 11, 2004 at 17:25:14, Omid David Tabibi wrote:
>
>>On August 11, 2004 at 14:36:50, José Carlos wrote:
>>
>>>On August 11, 2004 at 11:54:44, Omid David Tabibi wrote:
>>>
>>>>On August 11, 2004 at 09:43:18, Daniel Clausen wrote:
>>>>
>>>>>On August 11, 2004 at 09:42:04, gerold daniels wrote:
>>>>>
>>>>>>what is the best to program a chess game in. c.c++,c#. which is the easy one to
>>>>>>learn and the best to program in.
>>>>>
>>>>>I predict you will get at least 4 different answers. ;)
>>>>
>>>>Here we go with one of them:
>>>>
>>>>For writing a chess engine you cannot expect to get a reasonably fast thing
>>>>without using C/C++. And when using C++ try to avoid some expensive features of
>>>>the language. Quoting Edsger Dijkstra:
>>>>
>>>>"Object-oriented programming is an exceptionally bad idea which could only have
>>>>originated in California."
>>>>
>>>>Of course I disagree with that, as there are many benefiots in OOP. But still,
>>>>there is something in what he says :)
>>>>
>>>>If you are looking for easier languages (especially for building graphical user
>>>>interfaces), Java and C# are reasonable options. Java has the advantage that it
>>>>can run on any platform and is used by many major-league companies. On the other
>>>>hand .NET framework will already be present in Longhorn Windows, which will ease
>>>>the distribution of your programs. But at the moment, I would recommend Java
>>>>over C#.
>>>>
>>>>Finally, unlike Jose, I would recommend you to stay away from Visual Basic, or
>>>>any other thing that has the word BASIC in it. Again quoting Edsger Dijkstra:
>>>>
>>>>"It is practically impossible to teach good programming to students that have
>>>>had a prior exposure to BASIC: as potential programmers they are mentally
>>>>mutilated beyond hope of regeneration."
>>>>
>>>>and
>>>>
>>>>"Teaching BASIC should be a criminal offense."
>>>>
>>>>Visual Basic is a very advanced language in comparison to the primitive BASIC,
>>>>but still it does mentally mutilate you :)
>>>>
>>>>
>>>>
>>>>>
>>>>>Sargon
>>>
>>>  That might be the reason why I'm mentally mutilated, as I first learnt BASIC
>>>for the Amstrad (some centuries ago).
>>
>>I first learned BASIC too (actually QBASIC). And when I moved to C, my first
>>programs were full of "goto". It took me some time to abandon such unhealthy
>>BASIC habits.
>>
>>Nowadays Visual Basic is chosen for simplicity. But if my 13 years old sister
>>could learn C with rather ease, then everyone can. The problem with C/C++ is
>>that they don't provide an easy way for creating GUI (unlike Java, C#, Visual
>>Basic, etc). That is the only advantage of Visual Basic over C for beginners.
>
>I have been playing with Visual C 2005 beta, and this argument isn't true
>anymore. They copied the whole forms idea from Delphi.
>
>I always picked Delphi because it's the only fast language that can also easily
>create a userinterface, but with the new Visual C this argument doesn't even
>hold anymore.

What is new in Visual C 2005? My latest MSVC is net2003, where they have
introduced WindowsForms for C++, which is better structured than MFC, but
nothing of interest for C.


>
>Tony
>
>>
>>
>>
>>>  But from my mutilated perspective, learning process takes place from simple to
>>>difficult. Kids don't learn advanced mathematics before they learn to add and
>>>substract. Learning function calls and recursion and strings with an intuitive
>>>and friendly language like VB can't hurt IMO. Note that old BASIC was not
>>>friendly and intuitive, and I wouldn't recommend it, but VB is really easy.
>>>  But I admit I'm not a teacher, and your experience is much more relevant than
>>>mine.
>>>  The fact is that I can now program C, C++, Java, VB, BASIC, assembly, LISP,
>>>PROLOG, SQL, Delphi... and I don't feel the order in which I learnt them put
>>>extra difficulties in the learning process.
>>>
>>>  José C.



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.