Уже немного поздно для этого ответа, но я недавно работал над этим требованием и почти ничего не нашел, пока не нашел это, надеюсь, это поможет кому-то нуждающемуся:
** Этот отрывок взятиз Programming Pig book.
Долгое время в Pig Latin весь сценарий должен был находиться в одном файле.Это привело к появлению довольно неприятных латинских сценариев Pig на несколько тысяч строк.Начиная с 0.9, препроцессор можно использовать для включения одного сценария Pig Latin в другой.Взятые вместе с макросами, теперь можно писать модульную Pig Latin, которую легче отлаживать и использовать повторно: импорт используется для включения одного сценария Pig Latin в другой:
- main.pig
import '../examples/ch6/dividend_analysis.pig';
daily = load 'NYSE_daily' as (exchange:chararray, symbol:chararray,
date:chararray, open:float, high:float, low:float, close:float,
volume:int, adj_close:float);
results = dividend_analysis(daily, '2009', 'symbol', 'open', 'close');
import записывает импортированный файл непосредственно в скрипт Pig Latin вместо оператора import.В предыдущем примере содержимое файла divnd_analysis.pig будет размещено непосредственно перед оператором загрузки.Обратите внимание, что файл не может быть импортирован дважды.Если вы хотите использовать одну и ту же функцию несколько раз, вы должны написать ее как макрос и импортировать файл с этим макросом.