I had a discussion with Grok about Prolog Rubik solver. We agreed that Prolog-clauses do not represent too well the visual image we have in our collective minds. We agreed the OpenSCAD is the best candidate, but it does not have states, so not very exhaustive search engine.
So we need OpenSCAD with lazy evaluation and pattern matching and backtrace and all that scheiße.