Main
Date: 12 Sep 2008 21:58:34
From:
Subject: a domain-specific programming language for chess?
this post may be primarily aimed at developers although of course
anyone please answer. thinking lately about domain-specific
programming languages, the number of programmers who tackle the "chess
engine" problem, and also partly the amount (significant?) of
redundant code there must be when dealing with very common "issues",
(bit-boards, alpha-beta pruning, etc.) do you think it's possible
there can ever be a specific programming language successfully
developed for exclusive chess-engine programming and if possible how
useful?

Surely there are gpl or commercial libraries or code but how feasible
can specific keywords/grammar/syntax (or even data structures in
libraries or design patterns) be?

just a thought




 
Date: 13 Sep 2008 20:28:46
From: johnny_t
Subject: Re: a domain-specific programming language for chess?
No,

Many chess engines have advantages due to coding efficiencies. These
small efficiencies and tricks can make a significant ELO advantage from
engine to engine.

If you removed those advantages, you would stagnate the forward movement
of chess in many ways, and we would be stuck with crafty.

We have not seen some possible advantages of writing for specific
architectures yet. Like large register longword machines. It might be
possible to make these very fast searchers without going to memory. But
it would take a very specific architecture specific piece of code. I
suspect the only real abstraction will be the use of "C".


  
Date: 15 Sep 2008 19:31:01
From: stan
Subject: Re: a domain-specific programming language for chess?
johnny_t wrote:
> No,
>
> Many chess engines have advantages due to coding efficiencies. These
> small efficiencies and tricks can make a significant ELO advantage from
> engine to engine.
>
> If you removed those advantages, you would stagnate the forward movement
> of chess in many ways, and we would be stuck with crafty.
>
> We have not seen some possible advantages of writing for specific
> architectures yet. Like large register longword machines. It might be
> possible to make these very fast searchers without going to memory. But
> it would take a very specific architecture specific piece of code. I
> suspect the only real abstraction will be the use of "C".

Google for Big Blue/


   
Date: 19 Sep 2008 10:02:13
From: johnny_t
Subject: Re: a domain-specific programming language for chess?
stan wrote:
> johnny_t wrote:
>> No,
>>
>> Many chess engines have advantages due to coding efficiencies. These
>> small efficiencies and tricks can make a significant ELO advantage from
>> engine to engine.
>>
>> If you removed those advantages, you would stagnate the forward movement
>> of chess in many ways, and we would be stuck with crafty.
>>
>> We have not seen some possible advantages of writing for specific
>> architectures yet. Like large register longword machines. It might be
>> possible to make these very fast searchers without going to memory. But
>> it would take a very specific architecture specific piece of code. I
>> suspect the only real abstraction will be the use of "C".
>
> Google for Big Blue/


I was referring to things like readily available x86 processors that
generally spoken too in the lowest common denominator rather than all of
the really cool features specific to the chip.

(Yes there were all sorts of programs written for very specific
architectures, Hydra, Big Blue are at least a couple of the big names).

But I was talking about standard off the shelf PC's that happen to have
some interesting possibilities for chess that have very long registers
and words and lots of cache. It would be difficult because you would
have to take over at least one processor at the expense of the OS to
really pull this off, but I think you could build an interesting chess
machine for very cheaply. Including very specific code.

At some point somebody *will* do this, just to say it can be done, and
generate income if they can beat RYBKA on the same class of machine.

But the conclusion I think is correct. Between Assembler and "Chess++"
that the only real abstraction layer for chess engines will be "C".


   
Date: 16 Sep 2008 12:38:23
From: David Richerby
Subject: Re: a domain-specific programming language for chess?
stan <[email protected] > wrote:
> Google for Big Blue/

Try Googling it yourself. I get the following, none of which has
anything to do with chess.

Big Blue Hotel: 4 Star Family Hotel Blackpool Offering Luxury...
Grand bleu, Le (1988)
Big Blue Hotel Blackpool - Special Internet Rates at HotelClub
The Big Blue, Live Blues Band, Sussex UK
The Big Blue Experience - Life is not a dress rehearsal
Amazon.co.uk: The Big Blue[1989]: Rosanna Arquette, David Brisbin, ...
The Big Blue - Wikipedia, the free encylopedia
Big Blue, [University of Leeds]
Big Blue Surging School: Surfing in Bude Cornwall
MMU - Library - The Big Blue


Dave.

--
David Richerby Revolting Unholy Game (TM): it's like
www.chiark.greenend.org.uk/~davidr/ a family board game but it's also a
crime against nature and it'll turn
your stomach!


    
Date: 16 Sep 2008 12:56:09
From: stan
Subject: Re: a domain-specific programming language for chess?
David Richerby wrote:
> stan <[email protected]> wrote:
>> Google for Big Blue/
>
> Try Googling it yourself. I get the following, none of which has
> anything to do with chess.
>
> Big Blue Hotel: 4 Star Family Hotel Blackpool Offering Luxury...
> Grand bleu, Le (1988)
> Big Blue Hotel Blackpool - Special Internet Rates at HotelClub
> The Big Blue, Live Blues Band, Sussex UK
> The Big Blue Experience - Life is not a dress rehearsal
> Amazon.co.uk: The Big Blue[1989]: Rosanna Arquette, David Brisbin, ...
> The Big Blue - Wikipedia, the free encylopedia
> Big Blue, [University of Leeds]
> Big Blue Surging School: Surfing in Bude Cornwall
> MMU - Library - The Big Blue


OK, I guess schools open. Please take your seats.

Try
"big blue" chess

That's enough for today.


     
Date: 17 Sep 2008 12:48:16
From: David Richerby
Subject: Re: a domain-specific programming language for chess?
stan <[email protected] > wrote:
> David Richerby wrote:
>> stan <[email protected]> wrote:
>>> Google for Big Blue/
>>
>> Try Googling it yourself. I get the following, none of which has
>> anything to do with chess.
>>
>> Big Blue Hotel: 4 Star Family Hotel Blackpool Offering Luxury...
>> Grand bleu, Le (1988)
>> Big Blue Hotel Blackpool - Special Internet Rates at HotelClub
>> The Big Blue, Live Blues Band, Sussex UK
>> The Big Blue Experience - Life is not a dress rehearsal
>> Amazon.co.uk: The Big Blue[1989]: Rosanna Arquette, David Brisbin, ...
>> The Big Blue - Wikipedia, the free encylopedia
>> Big Blue, [University of Leeds]
>> Big Blue Surging School: Surfing in Bude Cornwall
>> MMU - Library - The Big Blue
>
> OK, I guess schools open. Please take your seats.
>
> Try
> "big blue" chess
>
> That's enough for today.

It tells me that "Big Blue" is the nickname of IBM, a large American
electronics company who built a rather good chess computer
twelve-and-a-half years ago. They programmed it in C so I'm still
seeking insight about what this has to do with domain-specific
programming languages for chess. In particular, the ad hoc chess
processors used are much more akin to a hardware implementation of a
library than to a domain-specific language.

By the way, teach, you might be a bit more credible in your role if
you actually knew the name of this chess computer.


Dave.

--
David Richerby Swiss Homicidal Gerbil (TM): it's like
www.chiark.greenend.org.uk/~davidr/ a children's pet but it wants to kill
you and it's made in Switzerland!


      
Date: 17 Sep 2008 17:02:36
From: stan
Subject: Re: a domain-specific programming language for chess?
David Richerby wrote:
> stan <[email protected]> wrote:
>> David Richerby wrote:
>>> stan <[email protected]> wrote:
>>>> Google for Big Blue/
>>>
>>> Try Googling it yourself. I get the following, none of which has
>>> anything to do with chess.
>>>
>>> Big Blue Hotel: 4 Star Family Hotel Blackpool Offering Luxury...
>>> Grand bleu, Le (1988)
>>> Big Blue Hotel Blackpool - Special Internet Rates at HotelClub
>>> The Big Blue, Live Blues Band, Sussex UK
>>> The Big Blue Experience - Life is not a dress rehearsal
>>> Amazon.co.uk: The Big Blue[1989]: Rosanna Arquette, David Brisbin, ...
>>> The Big Blue - Wikipedia, the free encylopedia
>>> Big Blue, [University of Leeds]
>>> Big Blue Surging School: Surfing in Bude Cornwall
>>> MMU - Library - The Big Blue
>>
>> OK, I guess schools open. Please take your seats.
>>
>> Try
>> "big blue" chess
>>
>> That's enough for today.
>
> It tells me that "Big Blue" is the nickname of IBM, a large American
> electronics company who built a rather good chess computer
> twelve-and-a-half years ago. They programmed it in C so I'm still
> seeking insight about what this has to do with domain-specific
> programming languages for chess. In particular, the ad hoc chess
> processors used are much more akin to a hardware implementation of a
> library than to a domain-specific language.
>
> By the way, teach, you might be a bit more credible in your role if
> you actually knew the name of this chess computer.

I'm very familiar with the hardware and the code actually. I could send
you to a site with pictures but you don't seem interested. You might not
have access but there were articles in profession journals describing
many of the details of the engineering involved. Some of the code was in
C to run the central task controller to hand jobs to the specialized
hardware running specialized code which was not C. It was a massively
parallel system doing things in non traditional ways.

Now that I think about it, unless you have a degree in Computer Science
at least a very good knowledge of Discrete Math most of the literature
would not mean much. Based on your google performance I'm guessing you
might have a hard time following along.

I'll give you another hint. Later IBM built Deep Blue for a rematch and
hence your confusion about the computer names. Your implication was that
I had it wrong, but your research skills seem to be the problem here.

There was more popular literature about the technical details for Deep
Blue and some of it had pictures. Maybe you could follow along with some
of that literature.


 
Date: 13 Sep 2008 21:57:46
From: Simon Krahnke
Subject: Re: a domain-specific programming language for chess?
* David Richerby <[email protected] > (16:24) schrieb:

> It kind of feels like a domain-specific langauge for chess would just
> have the single keyword "play_chess", which would do the obvious.
> Sure, there are different techniques for guiding search and so on but
> most of those need to be programmed at a low level. To introduce a
> domain-specific language would, almost by definition, fix the choice
> of techniques that would be used.

The ideal way to write a chess engine might be to build your own domain-
specific language on the way. But that's probably true for every complex
programming problem.

mfg, simon .... l


 
Date: 13 Sep 2008 09:43:33
From: Guest
Subject: Re: a domain-specific programming language for chess?
<[email protected] > wrote in message
news:[email protected]...
> this post may be primarily aimed at developers although of course
> anyone please answer. thinking lately about domain-specific
> programming languages, the number of programmers who tackle the "chess
> engine" problem, and also partly the amount (significant?) of
> redundant code there must be when dealing with very common "issues",
> (bit-boards, alpha-beta pruning, etc.) do you think it's possible
> there can ever be a specific programming language successfully
> developed for exclusive chess-engine programming and if possible how
> useful?

No.

Too much variation in how people want to do things.

Everybody has their own ideas of how things should be done and although they
may share some common structure, the details themselves are often different.

There's probably as much variation in programming chess as there is in
playing chess.


> Surely there are gpl or commercial libraries or code but how feasible
> can specific keywords/grammar/syntax (or even data structures in
> libraries or design patterns) be?

The idea of a chess programming language is pretty old. Dating back to at
least the early 70's. Possibly earlier.

There have been some rough ideas implemented, but they tend to be specific
to the program being developed. They weren't developed into a general
language.

Most of them tend to look a bit like LISP, actually. And that alone is
reason enough to avoid them.... (grin)

>
> just a thought
>





----== Posted via Pronews.Com - Unlimited-Unrestricted-Secure Usenet News==----
http://www.pronews.com The #1 Newsgroup Service in the World! >100,000 Newsgroups
---= - Total Privacy via Encryption =---


 
Date: 13 Sep 2008 15:24:27
From: David Richerby
Subject: Re: a domain-specific programming language for chess?
<[email protected] > wrote:
> Surely there are gpl or commercial libraries or code but how feasible
> can specific keywords/grammar/syntax (or even data structures in
> libraries or design patterns) be?

My off-the-cuff answer would be that I'd expect a domain-specific
language to be aimed at solving a class of related problems, such as
constraint satisfaction. Chess programming isn't really a class of
problems but, rather, a collection of slightly different algorithms
for solving the same problem.

It kind of feels like a domain-specific langauge for chess would just
have the single keyword "play_chess", which would do the obvious.
Sure, there are different techniques for guiding search and so on but
most of those need to be programmed at a low level. To introduce a
domain-specific language would, almost by definition, fix the choice
of techniques that would be used.


Dave.

--
David Richerby Radioactive Salted Tool (TM): it's
www.chiark.greenend.org.uk/~davidr/ like a hammer but it's covered in salt
and it'll make you glow in the dark!