If name is #f, then a new unnamed buffer is created. If name is '(), then the user is asked for a filename. If name is a buffer, then the buffer is displayed in the frame. Otherwise, name must be a string filename. The new buffer is attached to the canvas canvas; if canvas is not specified, the active canvas is used.