This is just me playing around with the JaCoP constraint solver. Includes an implementation of the "Einstein/Zebra" puzzle (as specified here). It got the same answer as someone nearby who solved it by hand so it must be right.
JaCoP is released under the AGPLv3 so this is too.