On Friday, December 1, 2017 at 5:54:44 PM UTC-7, Bakul Shah wrote:
>
> You should consider writing a chess program from scratch. It could be a 
> lot of fun!
>
> If you start with a mature chess playing engine, you wouldn't learn as 
> much and you would spend time fighting/interfacing with the engine. Since 
> your chess is not quite the same as a regular chess, you may find that the 
> assumption about how a queen moves may indeed be deeply ingrained in an 
> existing chess engine. And undoing that could mean diving deep in the chess 
> engine's code.
>
> If you are worried about a nice GUI, one option is to use an existing 
> program to display the chess board (and assuming it allows two people to 
> play), connect to it from your program via a tcp connection or two. You 
> still have to model the board, keep track of each player's chess pieces, 
> check that all moves are valid, write code to let your program play chess 
> intelligently etc. All of these will give you plenty of practice with Go.
>
> If you ultimate goal is different, why not just focus on it? Very likely 
> you will go through multiple iterations and in the process learn the 
> programming language well as well. 
>

Have you written a game program like this? It is very difficult!
I wrote an Reversi program for the Apple-IIc a long time ago. It was a lot 
harder than I expected. The end result didn't play very well. 
By comparison, I own a stand-alone Fidelity computer that plays Reversi 
(also has a 65c02 internally) and it is very strong --- those programmers 
must know something I don't know.

As a first Go program, I think I should aim somewhat lower. For example, I 
could port my LowDraw program from ANS-Forth (it was my first-ever 
ANS-Forth program, written in 2007 or thereabouts) .
That program did a recursive-descent traversal of all possible LowDraw 
poker hands and calculated the probabilities of all the possible results 
--- this could be done for various drawing strategies to compare them.
It would be interesting to compare the speed of the Go version with the 
speed of the existing Forth program --- there would be some opportunity for 
parallel processing --- the branches of the recursive descent can be done 
in parallel, as they aren't dependent upon each other.

In regard to Elphaba Chess, I think I will just delve into that Stockfish 
program --- a Go program would have been cool --- if there is no Go program 
though, then the C++ program is likely the best option.

 

> On Nov 24, 2017, at 5:38 PM, hughag...@gmail.com <javascript:> wrote:
>
> I invented a chess variation called: Elphaba Chess
> This is just like International Chess except that the queen can't capture 
> the opponent's pieces and it can't be captured --- it is just used for 
> blocking.
>
> I would like to write a program to play this game, but writing that from 
> scratch is beyond me. 
> Perhaps I could find a public-domain open-source chess program and modify 
> it to use my rules. I would have to change the legal-move code to eliminate 
> captures by the queen or captures of the queen.
> Other than that, the program should work fine. Check-mate is still the 
> goal. The queen is still worth 9 points, but that is irrelevant, so you 
> might as well say that it is worth 0 points.
> I would not expect the point values for the other pieces to change --- 
> they might though --- this would have to be determined by experimentation 
> (by stronger players than myself).
>
> I would prefer to do this in Go as I'm learning Go and this would be a 
> good learning exercise.
> If there are no such programs available in Go however, then I could use 
> another language --- I know C, C++ and Pascal, but not very well, and I 
> don't like them much.
> My background is in Forth (I've done that professionally), but ANS-Forth 
> killed Forth in 1994, so nobody really uses Forth anymore.
>
> thanks for any links --- Hugh
>
> My ultimate goal with Go is to write a program to "understand" the Ido 
> language, at least insomuch as generating a grammar diagram for a sentence 
> and determining if the sentence is grammatical.
> It could go from there to generating an English or Spanish translation. I 
> have a lot to learn about Go before I tackle such a program however.
>
> Does Go run on smart-phones? I have only heard of Java and Objective-C 
> being used. I have no interest in learning Java, and not much interest in 
> Objective-C.
>
> This program lends itself well to parallel processing. The meaning and 
> part-of-speech (POS) of each word in an Ido sentence is 
> context-insensitive, so the words can be analyzed in parallel.
> I have designed a multi-core Forth processor that can be built into an 
> FPGA --- that is what I would like to use --- build a handheld device to do 
> the translation.
>
>
> -- 
> You received this message because you are subscribed to the Google Groups 
> "golang-nuts" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to golang-nuts...@googlegroups.com <javascript:>.
> For more options, visit https://groups.google.com/d/optout.
>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to