рая определяла бы количество предвычисленных элементов. Это может быть полезно для оптимизации.
Что-то типа такого:
@ifdef not(FACRESLEN)
@define FACRESLEN 50
@end
int[lenof(facres)] facres := [@for N in (1 : FACRESLEN)
N : @CALL(facbase),]
func (int,[int i]) fac := {
if (i constant); без компиляции, но с heap; и с компиляцией. В разных случаях компилятор будет знать, что надо линковать. В машинном типе, например, не надо линковать функции для управления памятью из liblaisi malloc32 и другие.
Что насчёт твоего вопроса, то я незнаю джаваскрипт и как устроены эти npm-пакеты.