|
|
|
|
|
by frankmcsherry
3392 days ago
|
|
> In computer science, functional programming is a programming paradigm—a style of building the structure and elements of computer programs—that treats computation as the evaluation of mathematical functions and avoids changing-state and mutable data. from https://en.wikipedia.org/wiki/Functional_programming I totally agree that neither iterators nor 2/3s of closures are "functional programming". That's fine, though, because I really enjoy the sane way that it all was done. If you check out https://doc.rust-lang.org/std/iter/trait.Iterator.html and search for `FnMut`, you see that most of the iterator methods are side-effectful. That is cool and fun and very useful, but it isn't functional programming. Edit. The term you are probably looking for (guessing) is "higher-order programming": https://en.wikipedia.org/wiki/Higher-order_programming |
|
That said, you're right that "higher order" is a better description of these features, but my counter would be that most people perceive higher order programming as an aspect of functional programming, bringing it full circle again :)