[1] In practice, we provide these functions in a library and make sure that the library is loaded whenever we need them. One way of defining these functions is to use arrays, one of JavaScript's primitive data structures.
[2] Another way to define the selectors and constructor is
const make_rat = pair;