a functional javascript workshop.