You’ve probably seen the blue bikes that are part of Divvy bike sharing system here in Chicago. The Divvy system is a commuting service where users pay a yearly fee ($75?) to use the bikes for free as long as rides are less than 30 minutes in duration. Longer rides incur a surcharge. It’s a very popular system, with stations throughout the city and some suburbs. Interestingly, the Divvy folks also make their ride data available as part of Chicago’s open data portal; Divvy’s data is available here. The goal in this assignment is to input ride data for a period of time, and perform some analysis of the data: # of bikes, which stations are in use the most often, the average ride duration, etc.
This program was not only my first full F# program written, but my first functional program working with data sets. The goal in this assignment is to input ride data for a period of time, and perform some analysis of the data: # of bikes, which stations are in use the most often, the average ride duration, etc.
No imperative programming. In particular, this means no mutable variables, no loops, and no data structures other than F# lists. Use recursion and higher-order approaches only; you must also work with the input format as given, i.e. a list of lists.