simplified join_results: no longer work "towards" deps, which simplifies task queue management and maintains strict bottom up discipline (without "transfer of priority" to required futures);
more efficient Task_Queue.dequeue, with internal cache (reduces wast of cycles with many idle workers);
removed complicated/expensive Task_Queue.dequeue_towards;
#! /bin/sh
#
#sedindex - shell script to create indexes, preprocessing LaTeX's .idx file
#
# puts strings prefixed by * into \tt font
# terminator characters for strings are |!@{}
#
# a space terminates the \tt part to allow \index{*NE theorem}, etc.
#
# change *"X"Y"Z"W to "X"Y"Z"W@{\tt "X"Y"Z"W}
# change *"X"Y"Z to "X"Y"Z@{\tt "X"Y"Z}
# change *"X"Y to "X"Y@{\tt "X"Y}
# change *"X to "X@{\tt "X}
# change *IDENT to IDENT@{\tt IDENT}
# where IDENT is any string not containing | ! or @
# FOUR backslashes: to escape the shell AND sed
sed -e "s~\*\(\".\".\".\".\)~\1@{\\\\tt \1}~g
s~\*\(\".\".\".\)~\1@{\\\\tt \1}~g
s~\*\(\".\".\)~\1@{\\\\tt \1}~g
s~\*\(\".\)~\1@{\\\\tt \1}~g
s~\*\([^ |!@{}][^ |!@{}]*\)~\1@{\\\\tt \1}~g" $1.idx | makeindex -c -q -o $1.ind