Metaprogramming

Metaprogramming is the process by which droids develop their own personalities over time, literally "programming their own programming." Metaprogramming is possible in those droid classes whose basic programs allow metaprogramming to occur, e.g. protocol droids. In some models, such as the E-3PO series, metaprogramming may exhibit bugs resulting in personality defects.