BASIC for the next generation