4 ms·
I don't get the jump between talking about how "functional" doesn't evoke purity, yet "expression-oriented", does. To be fair, most (probably all) functional l
by cantankerous 14y ago
I don't get the jump between talking about how "functional" doesn't evoke purity, yet "expression-oriented", does. To be fair, most (probably all) functional languages aren't fully pure. Haskell is probably more pure than most of them, but eventually you have to get things done and dive into the sin bin.
The term "functional" really evokes "first class" invokable function symbols that can be passed around in a higher-order kind of way. Everything else is secondary.
- Rickasaurus 14y agoExpression-Oriented evokes purity in that expressions have external facing properties which can be understood and even kept in the type system. If you use global mutation and you don't keep track of it in the type system you can't say much about those properties anymore. You can however use mutation locally and maintain your referential transparency which is a nice way to get around the limits of some not-so-functional-friendly algorithms. I'm planning on writing about that next time around because my tracking shows barely anyone gets to the end of an article beyond a certain length.