  The goal of Inductive Logic Programming (ILP) is to learn a program that
explains a set of examples in the context of some pre-existing background
knowledge. Until recently, most research on ILP targeted learning Prolog
programs. Our own ILASP system instead learns Answer Set Programs, including
normal rules, choice rules and hard and weak constraints. Learning such
expressive programs widens the applicability of ILP considerably; for example,
enabling preference learning, learning common-sense knowledge, including
defaults and exceptions, and learning non-deterministic theories. In this
paper, we first give a general overview of ILASP's learning framework and its
capabilities. This is followed by a comprehensive summary of the evolution of
the ILASP system, presenting the strengths and weaknesses of each version, with
a particular emphasis on scalability.
