Today, I was talking to one of the person, I really appreciate him for his technical as well as mathematical skills. In our conversation, We reached at a point where we were talking about python and other dynamic languages. I said that I love dynamic types of those language very much, you can extend any object the way you like or the way it progress over time. However, This argument just brought his programmer in front that said it is hell lot of pain, if you don't knew the type you are dealing with.<p>I was simply clueless about why these dynamic type languages even exist? I knew this is natural way of progression, more freedom of expression and extension but why these languages even exists what is the philosophy behind these dynamic languages?