GET "libhdr" LET start() BE $( // Attempt to open the named files. LET source = findinput("input.txt") LET destination = findoutput("output.txt") TEST source = 0 THEN writes("Unable to open input.txt*N") ELSE TEST destination = 0 THEN writes("Unable to open output.txt*N") ELSE $( // The current character, initially unknown. LET ch = ? // Make the open files the current input and output streams. selectinput(source) selectoutput(destination) // Copy the input to the output character by character until // endstreamch is returned to indicate input is exhausted. ch := rdch() UNTIL ch = endstreamch DO $( wrch(ch) ch := rdch() $) // Close the currently selected streams. endread() endwrite() $) $)