Задачи, требующие структуры дека, встречаются в вычислитель-
ной технике и программировании гораздо реже, чем задачи, реализу-
емые на структуре стека или очереди. Как правило, вся организация
дека выполняется программистом без каких-либо специальных средств
системной поддержки.
Однако, в качестве примера такой системной поддержки расс-
мотрим организацию буфера ввода в языке REXX. В обычном режиме
буфер ввода связан с клавиатурой и работает как FIFO-очередь. Од-
нако, в REXX имеется возможность назначить в качестве буфера вво-
да программный буфер и направить в него вывод программ и систем-
ных утилит. В распоряжении программиста имеются операции QUEUE -
запись строки в конец буфера и PULL - выборка строки из начала
буфера. Дополнительная операция PUSH - запись строки в начало бу-
фера - превращает буфер в дек с ограниченным выходом. Такая
структура буфера ввода позволяет программировать на REXX весьма
гибкую конвейерную обработку с направлением выхода одной програм-
мы на вход другой и модификацией перенаправляемого потока.