general purpose perl programs