People like to say that it's easy to learn, and "fun" and "efficient". The opposite is true. Of all the languages I've learned (Pascal/C/C++/Java/C#/Hack/Go/Scala) it's by far the most difficult. For the following reasons:
- it makes a lot of unconventional/strange design decisions
- the nature of the language makes it difficult for IDEs to offer good support (e.g. autocomplete, show what methods you can call on a given object)
- it encourages people to write unreadable code to show how clever they are
All of these things are the opposite of fun and efficient and easy-to-learn.
- it makes a lot of unconventional/strange design decisions
- the nature of the language makes it difficult for IDEs to offer good support (e.g. autocomplete, show what methods you can call on a given object)
- it encourages people to write unreadable code to show how clever they are
All of these things are the opposite of fun and efficient and easy-to-learn.