I've started a new project. It's a port of Lime by Richard Allbert to D.
The repository is https://github.com/shinkarom/delimiterchess.
I will post here the updates to the development process.
Delimiter development diary
Moderators: hgm, Rebel, chrisw
-
- Posts: 92
- Joined: Tue Nov 19, 2019 1:26 pm
- Full name: Roman Shynkarenko
-
- Posts: 92
- Joined: Tue Nov 19, 2019 1:26 pm
- Full name: Roman Shynkarenko
Re: Delimiter development diary
So far I have created the project and turned off stdin and stdout buffering.
https://github.com/shinkarom/delimiterc ... b250120be3
https://github.com/shinkarom/delimiterc ... b250120be3
-
- Posts: 92
- Joined: Tue Nov 19, 2019 1:26 pm
- Full name: Roman Shynkarenko
Re: Delimiter development diary
It turned out I forgot to include some crucial files in the repository.
Note to self: "Git commit" should be called from the repository root.
https://github.com/shinkarom/delimiterc ... cb7c961c2c
Note to self: "Git commit" should be called from the repository root.
https://github.com/shinkarom/delimiterc ... cb7c961c2c
-
- Posts: 771
- Joined: Sat Sep 08, 2018 5:37 pm
- Location: Ukraine
- Full name: Maksim Korzh
Re: Delimiter development diary
Happy you're back to work.
I've never heard of Lime by Richard,
is it open source? Where did you get it???
Can you please share the source code of Lime?
I've never heard of Lime by Richard,
is it open source? Where did you get it???
Can you please share the source code of Lime?
Didactic chess engines:
https://www.chessprogramming.org/Maksim_Korzh
Chess programming YouTube channel:
https://www.youtube.com/channel/UCB9-pr ... KKqDgXhsMQ
https://www.chessprogramming.org/Maksim_Korzh
Chess programming YouTube channel:
https://www.youtube.com/channel/UCB9-pr ... KKqDgXhsMQ
-
- Posts: 92
- Joined: Tue Nov 19, 2019 1:26 pm
- Full name: Roman Shynkarenko
Re: Delimiter development diary
https://www.chessprogramming.org/Lime
It is licensed GPL.
By the way, my repository has its own forum.
It is licensed GPL.
By the way, my repository has its own forum.
-
- Posts: 92
- Joined: Tue Nov 19, 2019 1:26 pm
- Full name: Roman Shynkarenko
Re: Delimiter development diary
Converted Lime.h to defines.d
This file has basic constants and structure definitions. Right now my aim is to simply convert the code to make it compile; rewriting the code to D idioms will come later.
Quick tip: Multi-dimensional arrays are declared in D in a different way. What is int array[2][3] in C would be int[3][2] array in D.
https://github.com/shinkarom/delimiterc ... eb7ab39b14
This file has basic constants and structure definitions. Right now my aim is to simply convert the code to make it compile; rewriting the code to D idioms will come later.
Quick tip: Multi-dimensional arrays are declared in D in a different way. What is int array[2][3] in C would be int[3][2] array in D.
https://github.com/shinkarom/delimiterc ... eb7ab39b14
-
- Posts: 771
- Joined: Sat Sep 08, 2018 5:37 pm
- Location: Ukraine
- Full name: Maksim Korzh
Re: Delimiter development diary
Where's your repo's own forum?shinkarom wrote: ↑Sat Dec 19, 2020 1:18 pm https://www.chessprogramming.org/Lime
It is licensed GPL.
By the way, my repository has its own forum.
Also I'm just curious why do you consider a direct port instead reusing idea and wrapping them into your own implementation?
Despite the fact that I've read Vice's source coe countless number of times and probably know it by heart in some parts, still
I don't like some parts and consider them to be overcomplicated, e.g. having multiple addMove() functions for different move types.
Did you ever think of changing some patterns to fit your style of coding? (lifestyle)
Didactic chess engines:
https://www.chessprogramming.org/Maksim_Korzh
Chess programming YouTube channel:
https://www.youtube.com/channel/UCB9-pr ... KKqDgXhsMQ
https://www.chessprogramming.org/Maksim_Korzh
Chess programming YouTube channel:
https://www.youtube.com/channel/UCB9-pr ... KKqDgXhsMQ
-
- Posts: 92
- Joined: Tue Nov 19, 2019 1:26 pm
- Full name: Roman Shynkarenko
Re: Delimiter development diary
My repo's forum is at https://github.com/shinkarom/delimiterchess/discussions . It's a new feature of GitHub.
Mussaurus did start as a direct port of VICE, but soon enough diverged. Right now I need to have a complete project under my belt. I plan to complete port of Lime, then fork it and develop the fork further under a different name.
D programmers don't have enough chess engines to work from. I figured having a simple base will make it easier for others to create their engines.
Mussaurus did start as a direct port of VICE, but soon enough diverged. Right now I need to have a complete project under my belt. I plan to complete port of Lime, then fork it and develop the fork further under a different name.
D programmers don't have enough chess engines to work from. I figured having a simple base will make it easier for others to create their engines.
-
- Posts: 771
- Joined: Sat Sep 08, 2018 5:37 pm
- Location: Ukraine
- Full name: Maksim Korzh
Re: Delimiter development diary
Interesting. Are you doing D programming professionally? I mean as a daily job? Why D? Just curious.shinkarom wrote: ↑Sat Dec 19, 2020 4:59 pm My repo's forum is at https://github.com/shinkarom/delimiterchess/discussions . It's a new feature of GitHub.
Mussaurus did start as a direct port of VICE, but soon enough diverged. Right now I need to have a complete project under my belt. I plan to complete port of Lime, then fork it and develop the fork further under a different name.
D programmers don't have enough chess engines to work from. I figured having a simple base will make it easier for others to create their engines.
Didactic chess engines:
https://www.chessprogramming.org/Maksim_Korzh
Chess programming YouTube channel:
https://www.youtube.com/channel/UCB9-pr ... KKqDgXhsMQ
https://www.chessprogramming.org/Maksim_Korzh
Chess programming YouTube channel:
https://www.youtube.com/channel/UCB9-pr ... KKqDgXhsMQ
-
- Posts: 92
- Joined: Tue Nov 19, 2019 1:26 pm
- Full name: Roman Shynkarenko
Re: Delimiter development diary
I don't have a daily job. Health problems and all that. And if you'd seen my code, you wouldn't suspect me of coding professionally.
I use D because it's the closest thing to C++ with Cyrillic console input. It's a pity that my computer is too weak for Visual Studio, because C# would be the ideal choice.
Though D is nice too, only without GUI. Its syntax is not alien as C++ replacement, and it has a few good features, like UFCS.