[Moscow.pm] DATA и quine

Maxim Vuets maxim.vuets на gmail.com
Пт Окт 21 01:09:22 PDT 2011


Привет.

Нужно было несколько раз прочитать DATA (т.е. кусок после __DATA__).
Сделал "seek DATA, 0, 0" и получил весь исходник.
Оказывается, всё гениальное просто: дескриптор DATA представляет файл,
в котором объявлена секция __DATA__, со смещением на оную.

Так получаем куин (quine, программа, которая печатает свой исходный текст):

    seek DATA, 0, 0;
    print do {local $/; <DATA>};
    __DATA__

-- 
Максим Вуец


Подробная информация о списке рассылки Moscow-pm