Teaching Algebra Through Functional Programming: An Analysis of the Bootstrap Curriculum