4.3BSD/usr/contrib/apl/lib/fn/vrd

data { vrd name ;fd ;tm
 fd { 260 Lopen name
 data { 0 0R ' '
next: tm {  Lrd fd
 }(0=Rtm)/done
 }((Rtm)$1URdata)/sm
 data { data,((1YRdata),((Rtm)-1URdata))R' '
 data {data,[I1]tm
 }next
sm: data { data,[I1]tm,((1URdata)-Rtm)R' '
 }next
 } (0#Rtm)/next
done: fd { Lclose fd