beneroth changed the topic of #picolisp to: PicoLisp language | The scalpel of software development | Channel Log: https://libera.irclog.whitequark.org/picolisp | Check www.picolisp.com for more information
peterhil has quit [Ping timeout: 245 seconds]
aw- has quit [Quit: Leaving.]
aw- has joined #picolisp
<tankf33der> morning
<tankf33der> on depth=3 engine protects (defends) from mate
<tankf33der> on depth=4 easy eats non-sense pawn and lose mate in 1.
<tankf33der> Regenaxer: will you check it?
<Regenaxer> Hi tankf33der
<Regenaxer> ok, how?
<tankf33der> Pasting
<tankf33der> first move (go f6 g7)
<tankf33der> when you run (go) several times
<Regenaxer> Good, I will check later today
<tankf33der> you will see (blackrook d8 d4)
<tankf33der> but black loses mate in 1.
<tankf33der> if depth=3 then black rook saves from mate in 1 (blackrook d8 g8).
<tankf33der> yea.
<Regenaxer> Great, thanks
<Regenaxer> I will try
<Regenaxer> Note all your info, will experiment this afternoon :)
<tankf33der> I hope in trivial bug in (game)
<tankf33der> :)
<Regenaxer> Yeah, let's hope so
<tankf33der> I already seen anomalieas but was not experienced to unroll them
<Regenaxer> For understanding: You mean that instead of d8-d4 the black rook should do d8-g8?
<Regenaxer> And it finds it in depth 3 but not 4?
<Regenaxer> (I must look at the position later)
<tankf33der> Your understanding is correct
<Regenaxer> OK, could not resist, tried now ;)
<Regenaxer> I understand now, it is all correct
<Regenaxer> In depth=4, after WQ d2-g5, the program can see that it loses in any case: BR d8-g8, WQ g5-h5+, BB g7-h6+, WQ h5xh6++
<Regenaxer> So it does not matter any more which move, so it captures the pawn with BR d8xd4
<Regenaxer> kind of random move
<Regenaxer> In depth=3 however it cannot see that. Moving BR d8-g8 makes sense now because it is not mate *yet* after WQ g5-h5+ and BB g7-h6+
<Regenaxer> :)
<Regenaxer> The position is hopeless from the beginning, so any move with enough depth gives minus infinite score
<Regenaxer> At a smalller depth like 3 it tries to prevent the mate
<tankf33der> i see. thank you for your support. thinking how to handle this.
<Regenaxer> Yeah, random move
<tankf33der> matein2 solved 77k puzzles so far and counting.
<Regenaxer> 👍
<tankf33der> for matein3 even depth=4 is not enough and depth=5 saves
<tankf33der> so i need rewrote my loop to increase depth by 1 until i find something correct.
<tankf33der> now matein3 runs on depth=5 and 21 puzzles solved.
<Regenaxer> ok
peterhil has joined #picolisp
v88m has joined #picolisp
v88m has quit [Client Quit]
v88m has joined #picolisp
<Regenaxer> Perhaps we should print the last move's score, both in CLI and GUI versions?
<Regenaxer> Then we see in a case like above immediately that it is 9999 (means win for white)
<Regenaxer> You can see the score now with (trace 'game)
<Regenaxer> in the CAR of the result
peterhil has quit [Ping timeout: 252 seconds]
aw- has quit [Quit: Leaving.]
clacke has quit [Remote host closed the connection]
wineroots has joined #picolisp
v88m has quit [Ping timeout: 268 seconds]
<tankf33der> mate in 2 and 3 are working
<Regenaxer> Good to hear
<tankf33der> now i am thinking how combine two engines
<tankf33der> i could call external engine and send-receive command via stdin-stdout
<Regenaxer> How about 'pipe'?
<tankf33der> only once used
<tankf33der> give me a hint
<tankf33der> should i use first or second form of pipe ?
<Regenaxer> Probably second (with prg)
<Regenaxer> The first one is more powerful, but more difficult to use (asynchronous)
<tankf33der> i will search in rosetta tasks
<tankf33der> afk.
<Regenaxer> ok
v88m has joined #picolisp
alexshendi has joined #picolisp
<alexshendi> Hi, good evening!
<Regenaxer> Hi alexshendi!
<tankf33der> i did my best
<tankf33der> start external engine, init, quit
<tankf33der> afk.
alexshendi_ has joined #picolisp
alexshendi has quit [Ping timeout: 264 seconds]
alexshendi_ has quit [Remote host closed the connection]
aw- has joined #picolisp