.in +1i
.PS 4i
.ps 10
box "IDL" "spec"
arrow
IDL: ellipse "idlc"
move down 2i
PR: ellipse wid 3i ht 2i 
move to PR.n
move down .5i
.ps 12
"algorithm"
move down .5i
INT: "interface"
move down .5i
"internal" 
move down .2i
"data structure"
spline -> from IDL.e right .5i then down to 5/12 of the way between PR.n and PR.ne then down .77i
spline -> from IDL.e right .5i then down to PR.ne then down .55i
move down .2i
"writer"
spline -> from IDL.e right .5i then down to PR.nw then down .55i
move down .2i
"reader"
move to PR.nw
move right .3i
move down .5i
L1: line right 1.52i
move to PR.se
move left .3i
move up .5i
L2: line left 1.52i
spline from PR.nw then to start of L1 then to end of L2 then to PR.sw
spline from PR.ne then to end of L1 then to start of L2 then to PR.se
arrow <- left from PR.w
D: "data" rjust
move down .2i
"structure" rjust
move up .2i from D
"input" rjust
arrow right from PR.e
D2: "data" ljust
move down .2i
"structure" ljust
move up .2i from D2
"output" ljust
.PE
.in -1i
.sp .5i
.ce 1
\fBFigure 1\fR  An IDL Generated Process
.ps 10
