It’s interesting that JS classes are considered an antipattern, now functional is considered an antipattern. Arguably, the conclusion you reach at the end of the article is right: change language.
I personally prefer functional JS in any case, is the one that delivers less problems compare to the rest (classes + THIS usage lead to bad stuff in JS world, in my opinion). But I agree with others: with Ramda and Object.freeze (or deepfreeze utilities) you can write functional code properly.
Please remember however that ImmutableJS has performance advantages over Ramda. That being said, I personally prefer Ramda API (or lodash for what is worth)