Programming metasystems with active objects