Neural Software Abstractions