variable length functions experiments