3 ms·
sorry for the downvote: please propose solutions that allow the language to evolve and not stagnate. example: pylint-type tools that flag old ways of doing thi
by asah 6y ago
sorry for the downvote: please propose solutions that allow the language to evolve and not stagnate.
example: pylint-type tools that flag old ways of doing things, and suggest replacement syntax (e.g. https://pycodequ.al/docs/pylint-messages/r1717-consider-using-dict-comprehension.html https://pycodequ.al/docs/pylint-messages/r1717-consider-usin... )
- chriswarbo 6y agoI wouldn't treat 'evolution' as an inherently good thing; i.e. change for its own sake. My first thought whenever someone proposes changing a language is "could that be done with a library instead?". If it's possible then I think libraries are preferable to language changes; if it's not possible and we decide to change the language, then it may be better (if possible) to make a change which fixes whatever prevented us from implementing such a library. Only if we can't do that would I resort to adding individual features to the language. For example, Scheme has really good pattern matching, despite it not being part of the language. In fact, there are so many pattern matching libraries for Scheme that there are now attempts to standardise their APIs https://srfi.schemers.org/srfi-200/srfi-200.html https://srfi.schemers.org/srfi-200/srfi-200.html
- lhjn 6y agoIn scheme, or most other Lisps for that matter, you extend the language by writing a library, as the language extension tools are built-in and quite easy to use (macros). Very few other languages give you that kind of power, and certainly not python.