Каковы некоторые действительно полезные, но эзотерические языковые функции в Perl, которые вы действительно смогли использовать для полезной работы?
Руководство:
- Попробуйте ограничить ответы на ядро Perl, а не CPAN
- Приведите пример и краткое описание
Скрытые функции также найдены на других языках. Скрытые функции:
(Все они из Corion answer)
- C
- Устройство Duff
- Переносимость и стандартность
- С#
- Цитаты для списков и строк с разделителями пробелов
- Простые пространства имен
- Java
- Статические инициаторы
- JavaScript
- Функции являются гражданами первого класса.
- Область и закрытие блока
- Вызов методов и аксессуаров косвенно через переменную
- Ruby
- Определение методов с помощью кода
- PHP
- Прорывная онлайн-документация
- Магические методы
- Символьные ссылки
- Python
- Обмен одной строкой
- Возможность заменить даже основные функции своей собственной функциональностью
Другие скрытые функции:
Операторы:
- Квази-оператор bool
- Флип-флоп-оператор
- Также используется для конструкции списка
- Операторы
++
и унарные-
работают со строками. - Оператор повторения
- Оператор космического корабля
- || оператор (и//) для выбора из набора вариантов
- Алмазный оператор
- Специальные случаи оператора
m//
- Оператор тильд-тильды
Цитаты конструкций:
- Оператор qw
- Буквы могут использоваться как разделители цитат в q {} -подобных конструкциях
- Котировочные механизмы
Синтаксис и имена:
- После сигилы может быть пробел
- Вы можете указывать числовые имена subs с символическими ссылками.
- Юридические запятые
- Группированные целые литеры
- хэш-фрагменты
- Заполнение ключей хеша из массива
Модули, Pragmas и параметры командной строки:
- использовать строгие и использовать предупреждения
- Taint check
- Эзотерическое использование -n и -p
- CPAN
-
overload::constant
- IO:: Handle module
- Безопасные отсеки
- Атрибуты
Переменные
Циклы и управление потоком:
Регулярные выражения:
Другие функции:
- Отладчик
- Специальные кодовые блоки, такие как BEGIN, CHECK и END
- Блок
DATA
- Новые операции с блоками
- Фильтры источника
- Сигнальные крюки
- карта (дважды)
- Обтекание встроенных функций
- Функция
eof
- Функция
dbmopen
- Включение предупреждений в ошибки
Другие трюки и мета-ответы:
См. также: