A Typed Functional
Approach