1007
PHP is dead?
(telegra.ph)
Post funny things about programming here! (Or just rant about your favourite programming language.)
__invoke
is just for making a class Callable. Java has those with functional interfaces.__get
is just dynamic property resolution synax sugar. Instead of something likeobj.get("property")
you doobj->property
.Instead, I would like to see ADTs, generics, pattern matching, immutability, expressions everywhere and a better stdlib. Then one could call PHP functional.
It's like how people say Javascript is functional. Sure, it has lambdas, anonymous functions, closures,
const
. But those alone don't make it functional.Functional programming is very different (and at times hard). If you have the time you can check out F#, OCaml, Elixir, Erlang, Rust or Haskell (in order of difficulty imo). Those are more "pure" functional, rather than imperative/OOP with a touch of functional.
See how things work, what features they have and don't have. How problems are solved in these languages. I think learning about one of them can give you a different perspective on what functional means. I discovered F# one day, got curious and discovered a whole different paradigm, a new perspective on programming. And learning about functional programming really made me a better programmer, even on procedural/OOP.