add current perl implementation