An adaptive self-modifying system for encapsulating programming languages using graphical objects. The encapsulation system is intuitively based and is suitable for non-qualified users. The encapsulation is written in an innovative and novel way, using a graph structure of flow charts describing the function performed.