def pop ( self, *args ):
        if not hasattr(self, 'trait'):
            return list.pop(self, *args)
        if self.trait.minlen < len( self ):
            if len( args ) > 0:
                index = args[0]
            else:
                index = -1

            try:
                removed = [ self[ index ] ]
            except:
                pass

            result = list.pop( self, *args )

            if self.name_items is not None:
                if index is not 0:
                    index = len( self ) + index + 1

                self._send_trait_items_event( self.name_items,
                    TraitListEvent( index, removed ) )

            return result

        else:
            self.len_error( len( self ) - 1 )
dataset/ETHPy150Open enthought/traits/traits/trait_handlers.py/TraitListObject.pop/operator `<` -> `is not`