Two-dimensional visual programming and three-dimensional execution visualisation in Prolog | IET Conference Publication | IEEE Xplore