Teaching prolog with active logic documents | Synapse