compiler reading list