3 ms·
Functional programming can mean a lot of things to a lot of different people so declaring something “fake functional” is difficult. If we get down to brass tac
by mattbaker 5y ago
Functional programming can mean a lot of things to a lot of different people so declaring something “fake functional” is difficult.
If we get down to brass tacks, functional programming is just solving problems by composing functions, if we want to talk “purely functional” then we’re making more promises regarding side effects and immutability.
So I’d hesitate to call anything “fake functional” myself, I suspect what we call functional languages are often just “languages that do a good job letting us apply functional programming concepts”, and languages that don’t do that well will certainly not feel as good to use as ones that do (if you like the ideas in functional programming that is).
So in a way I agree. I personally can solve problems in Elixir using functional ideas more easily than Ruby. At the same time I could absolutely write a mutable, side effect ridden mess in Elixir or some pretty respectable functional looking code in Ruby.
I think it’s more about what the tool encourages and makes easy for you to do than a binary functional/not-functional designation.