4.3BSD/usr/contrib/icon/book/f/boldface.icn

procedure boldface(s)
   local c
   static labels, trans, max
   initial {
      labels := "1"
      trans := "1\b1\b1\b1\b1"
      max := *labels
      trans := boldface(string(&cset -- '\b'))
      labels := string(&cset -- '\b')
      max := *labels
      }
   if *s <= max then
      return map(left(trans,9 * *s),left(labels,*s),s)
   else return boldface(left(s,*s - max)) ||
      map(trans,labels,right(s,max))
end